diff --git a/Netdisco/share/views/ajax/datatabledefaults.tt b/Netdisco/share/views/ajax/datatabledefaults.tt index b9774b9a..ad3b9a49 100644 --- a/Netdisco/share/views/ajax/datatabledefaults.tt +++ b/Netdisco/share/views/ajax/datatabledefaults.tt @@ -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'); } }); } diff --git a/Netdisco/share/views/js/device.js b/Netdisco/share/views/js/device.js index 1a480e86..028768d6 100644 --- a/Netdisco/share/views/js/device.js +++ b/Netdisco/share/views/js/device.js @@ -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') diff --git a/Netdisco/share/views/sidebar/device/ports.tt b/Netdisco/share/views/sidebar/device/ports.tt index 9f176388..88a377ce 100644 --- a/Netdisco/share/views/sidebar/device/ports.tt +++ b/Netdisco/share/views/sidebar/device/ports.tt @@ -58,17 +58,17 @@