"Undo" icon in device port sidebar to reset form to defaults
Squashed commit of the following: commit204f5627e0Author: Oliver Gorwits <oliver@cpan.org> Date: Fri Sep 20 22:33:32 2013 +0100 update undo icon link commit49399301b9Merge:905a192ce604caAuthor: Oliver Gorwits <oliver@cpan.org> Date: Fri Sep 20 21:04:56 2013 +0100 Merge branch 'master' into og-reset-cookie commit905a192426Author: Oliver Gorwits <oliver@cpan.org> Date: Fri Sep 20 21:04:18 2013 +0100 fix tooltip z-index bug, add undo icon commit3377518634Author: Oliver Gorwits <oliver@cpan.org> Date: Fri Sep 13 08:36:16 2013 +0100 reset params used in query
This commit is contained in:
@@ -59,7 +59,7 @@ hook 'before' => sub {
|
||||
my $cookie = cookie('nd_ports-form');
|
||||
my $cdata = url_params_mixed($cookie);
|
||||
|
||||
if ($cdata and ref {} eq ref $cdata) {
|
||||
if ($cdata and ref {} eq ref $cdata and not param('reset')) {
|
||||
foreach my $item (@{ var('port_columns') }) {
|
||||
my $key = $item->{name};
|
||||
next unless defined $cdata->{$key}
|
||||
@@ -84,22 +84,32 @@ hook 'before' => sub {
|
||||
# copy ports form defaults into request query params if this is
|
||||
# a redirect from within the application (tab param is not set)
|
||||
|
||||
foreach my $col (@{ var('port_columns') }) {
|
||||
next unless $col->{default} eq 'on';
|
||||
params->{$col->{name}} = 'checked'
|
||||
if not param('tab') or param('tab') ne 'ports';
|
||||
}
|
||||
if (param('reset') or not param('tab') or param('tab') ne 'ports') {
|
||||
foreach my $col (@{ var('port_columns') }) {
|
||||
delete params->{$col->{name}};
|
||||
params->{$col->{name}} = 'checked'
|
||||
if $col->{default} eq 'on';
|
||||
}
|
||||
|
||||
foreach my $col (@{ var('connected_properties') }) {
|
||||
next unless $col->{default} eq 'on';
|
||||
params->{$col->{name}} = 'checked'
|
||||
if not param('tab') or param('tab') ne 'ports';
|
||||
}
|
||||
foreach my $col (@{ var('connected_properties') }) {
|
||||
delete params->{$col->{name}};
|
||||
params->{$col->{name}} = 'checked'
|
||||
if $col->{default} eq 'on';
|
||||
}
|
||||
|
||||
if (not param('tab') or param('tab') ne 'ports') {
|
||||
# not stored in the cookie
|
||||
params->{'age_num'} ||= 3;
|
||||
params->{'age_unit'} ||= 'months';
|
||||
params->{'mac_format'} ||= 'IEEE';
|
||||
|
||||
if (param('reset')) {
|
||||
params->{'age_num'} = 3;
|
||||
params->{'age_unit'} = 'months';
|
||||
params->{'mac_format'} = 'IEEE';
|
||||
|
||||
# nuke the port params cookie
|
||||
cookie('nd_ports-form' => '', expires => '-1 day');
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -340,7 +340,16 @@ td > form.nd_inline-form {
|
||||
|
||||
.nd_sidebar-pin {
|
||||
float: left;
|
||||
margin-top: 6px;
|
||||
margin-top: 8px;
|
||||
margin-left: -16px;
|
||||
font-size: 15px;
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.nd_sidebar-reset {
|
||||
float: left;
|
||||
margin-top: 27px;
|
||||
margin-left: -16px;
|
||||
font-size: 15px;
|
||||
color: #555;
|
||||
@@ -349,7 +358,7 @@ td > form.nd_inline-form {
|
||||
|
||||
#nd_sidebar-toggle-img-in {
|
||||
float: left;
|
||||
margin-top: -9px;
|
||||
margin-top: -10px;
|
||||
margin-left: -16px;
|
||||
font-size: 15px;
|
||||
color: #555;
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
<div class="nd_sidebar nd_sidebar-pinned">
|
||||
<div class="well">
|
||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar" data-container="body"></i>
|
||||
<i class="nd_sidebar-pin icon-pushpin nd_sidebar-pin-clicked"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Unpin Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Unpin Sidebar" data-container="body"></i>
|
||||
|
||||
<div class="tab-content">
|
||||
<div id="[% task.tag %]_search" class="tab-pane active">
|
||||
|
||||
@@ -15,9 +15,13 @@
|
||||
<div class="nd_sidebar nd_sidebar-pinned">
|
||||
<div class="well">
|
||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar" data-container="body"></i>
|
||||
<i class="nd_sidebar-pin icon-pushpin nd_sidebar-pin-clicked"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Unpin Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Unpin Sidebar" data-container="body"></i>
|
||||
<a id="nd_sidebar-reset-link" href="#">
|
||||
<i class="nd_sidebar-reset icon-undo"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Reset to Defaults" data-container="body"></i>
|
||||
</a>
|
||||
<div class="tab-content">
|
||||
[% FOREACH tab IN settings._device_tabs %]
|
||||
<div id="[% tab.tag %]_search" class="tab-pane [% 'active' IF params.tab == tab.tag %]">
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
var form = '#' + tab + '_form';
|
||||
var query = $(form).serialize();
|
||||
|
||||
if (show == '1') {
|
||||
if (show.length) {
|
||||
$('#nd_csv-download')
|
||||
.attr('href', '/ajax/content/' + type + '/' + tab + '?' + query)
|
||||
.attr('download', 'netdisco-' + type + '-' + tab + '.csv')
|
||||
@@ -81,6 +81,8 @@
|
||||
copy_navbar_to_sidebar('[% tab.tag %]');
|
||||
|
||||
[% IF tab.tag == 'ports' %]
|
||||
// to be fair I can't remember why we do this in JS and not from the app
|
||||
// perhaps because selecting form fields to go in the cookie is easier?
|
||||
var cookie = $('#ports_form').find('input,select')
|
||||
.not('#nd_port-query,input[name="q"],input[name="tab"]')
|
||||
.serializeArray();
|
||||
@@ -88,6 +90,10 @@
|
||||
cookie.push({'name': 'columns', 'value': $(this).attr('name')});
|
||||
});
|
||||
$.cookie('nd_ports-form', $.param(cookie) ,{ expires: 365 });
|
||||
|
||||
// form reset icon on ports tab
|
||||
$('#nd_sidebar-reset-link').attr('href', '/device?tab=ports&reset=on&' +
|
||||
$('#ports_form').find('input[name="q"],input[name="f"],input[name="partial"]').serialize())
|
||||
[% END %]
|
||||
|
||||
do_search(event, '[% tab.tag %]');
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
<div class="nd_sidebar nd_sidebar-pinned">
|
||||
<div class="well">
|
||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar" data-container="body"></i>
|
||||
<i class="nd_sidebar-pin icon-pushpin nd_sidebar-pin-clicked"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Unpin Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Unpin Sidebar" data-container="body"></i>
|
||||
|
||||
<div class="tab-content">
|
||||
<div id="[% report.tag %]_search" class="tab-pane active">
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
<div class="nd_sidebar">
|
||||
<div class="well">
|
||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Hide Sidebar" data-container="body"></i>
|
||||
<i class="nd_sidebar-pin icon-pushpin"
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Pin Sidebar"></i>
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Pin Sidebar" data-container="body"></i>
|
||||
<div class="tab-content">
|
||||
[% FOREACH tab IN settings._search_tabs %]
|
||||
<div id="[% tab.tag %]_search" class="tab-pane [% 'active' IF params.tab == tab.tag %]">
|
||||
|
||||
Reference in New Issue
Block a user