sidebar defaults follow params; fix state saving
This commit is contained in:
@@ -16,6 +16,10 @@
|
||||
});
|
||||
},
|
||||
"stateSaveParams": function (settings, data) {
|
||||
var pgtitle = update_page_title('[% tabname %]');
|
||||
update_browser_history('[% tabname %]', pgtitle, '');
|
||||
// TODO: would be nice to update CSV link too
|
||||
|
||||
var datatable = $('#[% tabname %]_pane').find('table').first().DataTable();
|
||||
// if no existing state, all columns default to visible.
|
||||
// on table load, state is saved... we can find out whether there was
|
||||
@@ -23,9 +27,11 @@
|
||||
// visibility.
|
||||
if (datatable.state.loaded() === null) {
|
||||
$('#[% tabname %]_form').find('input[type="checkbox"]').each( function() {
|
||||
var id = $(this).attr('id');
|
||||
if (datatable.column( id + ':name' ).length === 1) {
|
||||
datatable.column( id + ':name' ).visible( $(this).prop('checked') );
|
||||
var id = $(this).attr('id');
|
||||
var col = datatable.column( id + ':name' );
|
||||
if (col.length === 1) {
|
||||
col.visible( $(this).prop('checked') );
|
||||
data.columns[col.index()].visible = $(this).prop('checked');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -148,16 +148,6 @@
|
||||
update_csv_download_link('device', '[% tab.tag %]', '[% tab.provides_csv %]');
|
||||
|
||||
[% 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();
|
||||
$('#ports_form').find('input[type="checkbox"]').map(function() {
|
||||
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', uri_base + '/device/[% tab.tag %]?reset=on&' +
|
||||
$('#ports_form')
|
||||
|
||||
@@ -58,17 +58,17 @@
|
||||
<div id="nd_columns" class="collapse in">
|
||||
<ul id="nd_column-controls" class="nd_inputs-list unstyled">
|
||||
[% FOREACH entry IN settings.table_display.$section.${tab.tag}.columns %]
|
||||
[% NEXT IF entry.keys.first == 'c_admin' AND NOT user_has_role('port_control') %]
|
||||
[% SET keyname = entry.keys.first %]
|
||||
[% NEXT IF keyname == 'c_admin' AND NOT user_has_role('port_control') %]
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<!-- FIXME look at param not default -->
|
||||
<input type="checkbox" class="nd_dynamic-dp"
|
||||
[% ' checked="checked"' IF entry.item(entry.keys.first).default %]
|
||||
id="[% entry.keys.first | html_entity %]" name="[% entry.keys.first | html_entity %]" />
|
||||
[% IF entry.item(entry.keys.first).highlight %]
|
||||
<span class="label label-info">[% entry.item(entry.keys.first).label | html_entity %]</span>
|
||||
[% ' checked="checked"' IF (params.$keyname || entry.item(keyname).default) %]
|
||||
id="[% keyname | html_entity %]" name="[% keyname | html_entity %]" />
|
||||
[% IF entry.item(keyname).highlight %]
|
||||
<span class="label label-info">[% entry.item(keyname).label | html_entity %]</span>
|
||||
[% ELSE %]
|
||||
[% entry.item(entry.keys.first).label | html_entity %]
|
||||
[% entry.item(keyname).label | html_entity %]
|
||||
[% END %]
|
||||
</label>
|
||||
</li>
|
||||
@@ -110,7 +110,8 @@
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="nd_dynamic-dp" id="neigh_id"
|
||||
name="neigh_id"[% ' checked="checked"' IF params.neigh_id %] />
|
||||
name="neigh_id"[% ' checked="checked"' IF
|
||||
(params.neigh_id || settings.table_display.$section.${tab.tag}.content.neigh_id) %] />
|
||||
Connected Device ID
|
||||
</label>
|
||||
</li>
|
||||
@@ -135,42 +136,48 @@
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="nd_dynamic-dp" id="n_age"
|
||||
name="n_age"[% ' checked="checked"' IF settings.table_display.$section.${tab.tag}.content.n_age %] />
|
||||
name="n_age"[% ' checked="checked"' IF
|
||||
(params.n_age || settings.table_display.$section.${tab.tag}.content.n_age) %] />
|
||||
Age Stamp
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="nd_dynamic-dp" id="n_ip"
|
||||
name="n_ip"[% ' checked="checked"' IF settings.table_display.$section.${tab.tag}.content.n_ip %] />
|
||||
name="n_ip"[% ' checked="checked"' IF
|
||||
(params.n_ip || settings.table_display.$section.${tab.tag}.content.n_ip) %] />
|
||||
IP Address
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="nd_dynamic-dp" id="n_netbios"
|
||||
name="n_netbios"[% ' checked="checked"' IF settings.table_display.$section.${tab.tag}.content.n_netbios %] />
|
||||
name="n_netbios"[% ' checked="checked"' IF
|
||||
(params.n_netbios || settings.table_display.$section.${tab.tag}.content.n_netbios) %] />
|
||||
NetBIOS
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="nd_dynamic-dp" id="n_ssid"
|
||||
name="n_ssid"[% ' checked="checked"' IF settings.table_display.$section.${tab.tag}.content.n_ssid %] />
|
||||
name="n_ssid"[% ' checked="checked"' IF
|
||||
(params.n_ssid || settings.table_display.$section.${tab.tag}.content.n_ssid) %] />
|
||||
SSID
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="nd_dynamic-dp" id="n_vendor"
|
||||
name="n_vendor"[% ' checked="checked"' IF settings.table_display.$section.${tab.tag}.content.n_vendor %] />
|
||||
name="n_vendor"[% ' checked="checked"' IF
|
||||
(params.n_vendor || settings.table_display.$section.${tab.tag}.content.n_vendor) %] />
|
||||
Vendor
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="nd_dynamic-dp" id="n_archived"
|
||||
name="n_archived"[% ' checked="checked"' IF settings.table_display.$section.${tab.tag}.content.n_archived %] />
|
||||
name="n_archived"[% ' checked="checked"' IF
|
||||
(params.n_archived || settings.table_display.$section.${tab.tag}.content.n_archived) %] />
|
||||
Archived Data
|
||||
</label>
|
||||
</li>
|
||||
|
||||
Reference in New Issue
Block a user