"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 $cookie = cookie('nd_ports-form');
|
||||||
my $cdata = url_params_mixed($cookie);
|
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') }) {
|
foreach my $item (@{ var('port_columns') }) {
|
||||||
my $key = $item->{name};
|
my $key = $item->{name};
|
||||||
next unless defined $cdata->{$key}
|
next unless defined $cdata->{$key}
|
||||||
@@ -84,22 +84,32 @@ hook 'before' => sub {
|
|||||||
# copy ports form defaults into request query params if this is
|
# copy ports form defaults into request query params if this is
|
||||||
# a redirect from within the application (tab param is not set)
|
# a redirect from within the application (tab param is not set)
|
||||||
|
|
||||||
|
if (param('reset') or not param('tab') or param('tab') ne 'ports') {
|
||||||
foreach my $col (@{ var('port_columns') }) {
|
foreach my $col (@{ var('port_columns') }) {
|
||||||
next unless $col->{default} eq 'on';
|
delete params->{$col->{name}};
|
||||||
params->{$col->{name}} = 'checked'
|
params->{$col->{name}} = 'checked'
|
||||||
if not param('tab') or param('tab') ne 'ports';
|
if $col->{default} eq 'on';
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach my $col (@{ var('connected_properties') }) {
|
foreach my $col (@{ var('connected_properties') }) {
|
||||||
next unless $col->{default} eq 'on';
|
delete params->{$col->{name}};
|
||||||
params->{$col->{name}} = 'checked'
|
params->{$col->{name}} = 'checked'
|
||||||
if not param('tab') or param('tab') ne 'ports';
|
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_num'} ||= 3;
|
||||||
params->{'age_unit'} ||= 'months';
|
params->{'age_unit'} ||= 'months';
|
||||||
params->{'mac_format'} ||= 'IEEE';
|
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 {
|
.nd_sidebar-pin {
|
||||||
float: left;
|
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;
|
margin-left: -16px;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
color: #555;
|
color: #555;
|
||||||
@@ -349,7 +358,7 @@ td > form.nd_inline-form {
|
|||||||
|
|
||||||
#nd_sidebar-toggle-img-in {
|
#nd_sidebar-toggle-img-in {
|
||||||
float: left;
|
float: left;
|
||||||
margin-top: -9px;
|
margin-top: -10px;
|
||||||
margin-left: -16px;
|
margin-left: -16px;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
color: #555;
|
color: #555;
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
<div class="nd_sidebar nd_sidebar-pinned">
|
<div class="nd_sidebar nd_sidebar-pinned">
|
||||||
<div class="well">
|
<div class="well">
|
||||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
<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"
|
<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 class="tab-content">
|
||||||
<div id="[% task.tag %]_search" class="tab-pane active">
|
<div id="[% task.tag %]_search" class="tab-pane active">
|
||||||
|
|||||||
@@ -15,9 +15,13 @@
|
|||||||
<div class="nd_sidebar nd_sidebar-pinned">
|
<div class="nd_sidebar nd_sidebar-pinned">
|
||||||
<div class="well">
|
<div class="well">
|
||||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
<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"
|
<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">
|
<div class="tab-content">
|
||||||
[% FOREACH tab IN settings._device_tabs %]
|
[% FOREACH tab IN settings._device_tabs %]
|
||||||
<div id="[% tab.tag %]_search" class="tab-pane [% 'active' IF params.tab == tab.tag %]">
|
<div id="[% tab.tag %]_search" class="tab-pane [% 'active' IF params.tab == tab.tag %]">
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
var form = '#' + tab + '_form';
|
var form = '#' + tab + '_form';
|
||||||
var query = $(form).serialize();
|
var query = $(form).serialize();
|
||||||
|
|
||||||
if (show == '1') {
|
if (show.length) {
|
||||||
$('#nd_csv-download')
|
$('#nd_csv-download')
|
||||||
.attr('href', '/ajax/content/' + type + '/' + tab + '?' + query)
|
.attr('href', '/ajax/content/' + type + '/' + tab + '?' + query)
|
||||||
.attr('download', 'netdisco-' + type + '-' + tab + '.csv')
|
.attr('download', 'netdisco-' + type + '-' + tab + '.csv')
|
||||||
@@ -81,6 +81,8 @@
|
|||||||
copy_navbar_to_sidebar('[% tab.tag %]');
|
copy_navbar_to_sidebar('[% tab.tag %]');
|
||||||
|
|
||||||
[% IF tab.tag == 'ports' %]
|
[% 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')
|
var cookie = $('#ports_form').find('input,select')
|
||||||
.not('#nd_port-query,input[name="q"],input[name="tab"]')
|
.not('#nd_port-query,input[name="q"],input[name="tab"]')
|
||||||
.serializeArray();
|
.serializeArray();
|
||||||
@@ -88,6 +90,10 @@
|
|||||||
cookie.push({'name': 'columns', 'value': $(this).attr('name')});
|
cookie.push({'name': 'columns', 'value': $(this).attr('name')});
|
||||||
});
|
});
|
||||||
$.cookie('nd_ports-form', $.param(cookie) ,{ expires: 365 });
|
$.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 %]
|
[% END %]
|
||||||
|
|
||||||
do_search(event, '[% tab.tag %]');
|
do_search(event, '[% tab.tag %]');
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
<div class="nd_sidebar nd_sidebar-pinned">
|
<div class="nd_sidebar nd_sidebar-pinned">
|
||||||
<div class="well">
|
<div class="well">
|
||||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
<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"
|
<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 class="tab-content">
|
||||||
<div id="[% report.tag %]_search" class="tab-pane active">
|
<div id="[% report.tag %]_search" class="tab-pane active">
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
<div class="nd_sidebar">
|
<div class="nd_sidebar">
|
||||||
<div class="well">
|
<div class="well">
|
||||||
<i class="nd_sidebar-toggle icon-signout" id="nd_sidebar-toggle-img-in"
|
<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"
|
<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">
|
<div class="tab-content">
|
||||||
[% FOREACH tab IN settings._search_tabs %]
|
[% FOREACH tab IN settings._search_tabs %]
|
||||||
<div id="[% tab.tag %]_search" class="tab-pane [% 'active' IF params.tab == tab.tag %]">
|
<div id="[% tab.tag %]_search" class="tab-pane [% 'active' IF params.tab == tab.tag %]">
|
||||||
|
|||||||
Reference in New Issue
Block a user