From ef65f0fefeab974ec06426f289469c45e804678a Mon Sep 17 00:00:00 2001 From: Koren Lev Date: Wed, 16 Aug 2017 11:33:56 +0300 Subject: scans,messages - default latest time first, tree as drawer, env re-arranged Change-Id: Ib6bc2e6d87821c3583b6a0521b759cedcf3a9868 Signed-off-by: Koren Lev --- .../scheduled-scans-list/scheduled-scans-list.html | 8 +++- .../scheduled-scans-list/scheduled-scans-list.js | 48 +++++++++++++++++++++- 2 files changed, 54 insertions(+), 2 deletions(-) (limited to 'ui/imports/ui/components/scheduled-scans-list') diff --git a/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.html b/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.html index 4b141e7..2f986f5 100644 --- a/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.html +++ b/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.html @@ -24,7 +24,13 @@ Inventory Object ID Frequency - Submit Timestamp + + Submit Timestamp + + Action diff --git a/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.js b/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.js index bd85afd..bbdcfe7 100644 --- a/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.js +++ b/ui/imports/ui/components/scheduled-scans-list/scheduled-scans-list.js @@ -29,7 +29,7 @@ Template.ScheduledScansList.onCreated(function() { env: null, page: 1, amountPerPage: 10, - sortField: null, + sortField: 'submit_timestamp', sortDirection: -1, }); @@ -61,6 +61,37 @@ Template.ScheduledScansList.rendered = function() { */ Template.ScheduledScansList.events({ + 'click .sm-table-header': function (event, instance) { + event.preventDefault(); + let isSortable = event.target.dataset.isSortable; + if (! isSortable ) { return; } + + let sortField = event.target.dataset.sortField; + let currentSortField = instance.state.get('sortField'); + let currentSortDirection = instance.state.get('sortDirection'); + + if (sortField === currentSortField) { + let sortDirection = null; + if (currentSortDirection === null) { + sortDirection = -1; + } else if (currentSortDirection === -1) { + sortDirection = 1; + } else if (currentSortDirection === 1) { + sortField = null; + sortDirection = null; + } else { + sortField = null; + sortDirection = null; + } + + instance.state.set('sortField', sortField); + instance.state.set('sortDirection', sortDirection); + + } else { + instance.state.set('sortField', sortField); + instance.state.set('sortDirection', -1); + } + }, }); /* @@ -147,6 +178,21 @@ Template.ScheduledScansList.helpers({ }, }; }, + + fieldSortClass: function (fieldName) { + let instance = Template.instance(); + let classes = 'fa fa-sort'; + if (fieldName === instance.state.get('sortField')) { + let sortDirection = instance.state.get('sortDirection'); + if (sortDirection === -1) { + classes = 'fa fa-sort-desc'; + } else if (sortDirection === 1) { + classes = 'fa fa-sort-asc'; + } + } + + return classes; + }, }); // end: helpers -- cgit 1.2.3-korg