From a9663c2900c2539183d51d694a99f5b872736066 Mon Sep 17 00:00:00 2001 From: Kia Lam Date: Wed, 23 Jan 2019 11:49:01 -0500 Subject: [PATCH] Add expand/collapse toolbar to Jobs List view. --- .../features/jobs/jobsList.controller.js | 20 ++- .../client/features/jobs/jobsList.view.html | 143 +++++++++--------- awx/ui/client/lib/components/index.js | 2 + 3 files changed, 91 insertions(+), 74 deletions(-) diff --git a/awx/ui/client/features/jobs/jobsList.controller.js b/awx/ui/client/features/jobs/jobsList.controller.js index a398a03818..0f6e92f0d8 100644 --- a/awx/ui/client/features/jobs/jobsList.controller.js +++ b/awx/ui/client/features/jobs/jobsList.controller.js @@ -132,11 +132,11 @@ function ListJobsController ( let reloadListStateParams = null; if (vm.jobs.length === 1 && $state.params.job_search && - _.has($state, 'params.job_search.page') && - $state.params.job_search.page !== '1') { + _.has($state, 'params.job_search.page') && + $state.params.job_search.page !== '1') { reloadListStateParams = _.cloneDeep($state.params); reloadListStateParams.job_search.page = - (parseInt(reloadListStateParams.job_search.page, 10) - 1).toString(); + (parseInt(reloadListStateParams.job_search.page, 10) - 1).toString(); } $state.go('.', reloadListStateParams, { reload: true }); @@ -173,8 +173,8 @@ function ListJobsController ( let reloadListStateParams = null; if (vm.jobs.length === 1 && $state.params.job_search && - !_.isEmpty($state.params.job_search.page) && - $state.params.job_search.page !== '1') { + !_.isEmpty($state.params.job_search.page) && + $state.params.job_search.page !== '1') { const page = `${(parseInt(reloadListStateParams .job_search.page, 10) - 1)}`; reloadListStateParams = _.cloneDeep($state.params); @@ -213,6 +213,16 @@ function ListJobsController ( vm.job_dataset = data; }); } + + vm.isCollapsed = true; + + vm.onCollapse = () => { + vm.isCollapsed = true; + }; + + vm.onExpand = () => { + vm.isCollapsed = false; + }; } ListJobsController.$inject = [ diff --git a/awx/ui/client/features/jobs/jobsList.view.html b/awx/ui/client/features/jobs/jobsList.view.html index 783a734024..c3e6c00665 100644 --- a/awx/ui/client/features/jobs/jobsList.view.html +++ b/awx/ui/client/features/jobs/jobsList.view.html @@ -13,86 +13,91 @@ search-bar-full-width="vm.isPortalMode"> + + - +
- - -
+
+ + +
+ + + + + + +
+
+
+ value="{{ job.started | longDate }}"> + value="{{ job.finished | longDate }}"> + + + + + + + + + +
- - - - - - - - - - - - - - - -
-
- - - - - - +
+ + + + + +
diff --git a/awx/ui/client/lib/components/index.js b/awx/ui/client/lib/components/index.js index 8dadf920b8..c9e5ba93ee 100644 --- a/awx/ui/client/lib/components/index.js +++ b/awx/ui/client/lib/components/index.js @@ -34,6 +34,7 @@ import tab from '~components/tabs/tab.directive'; import tabGroup from '~components/tabs/group.directive'; import tag from '~components/tag/tag.directive'; import toggleTag from '~components/toggle-tag/toggle-tag.directive'; +import toolbar from '~components/list/list-toolbar.directive'; import topNavItem from '~components/layout/top-nav-item.directive'; import truncate from '~components/truncate/truncate.directive'; import atCodeMirror from '~components/code-mirror'; @@ -69,6 +70,7 @@ angular .component('atLaunchTemplate', launchTemplate) .directive('atLayout', layout) .directive('atList', list) + .directive('atListToolbar', toolbar) .component('atRelaunch', relaunch) .directive('atRow', row) .directive('atRowItem', rowItem)