From d69ebb9a0640cddda3a83999c9bb96c1160e3118 Mon Sep 17 00:00:00 2001 From: Ken Hoes Date: Wed, 6 Apr 2016 14:19:58 -0400 Subject: [PATCH 1/3] Restyled system tracking, simplified block less, fixed data issue, fixed button Fixed system tracking button w/ label. --- awx/ui/client/src/helpers/Jobs.js | 4 - .../manage/inventory-manage.controller.js | 2 + awx/ui/client/src/lists/InventoryHosts.js | 1 + .../fact-data-error.block.less | 26 ----- .../fact-data-group.block.less | 21 ---- .../fact-data-table-heading.block.less | 26 ----- .../fact-data-table.block.less | 109 +++++++++++++++++- .../fact-data-table.partial.html | 28 ++--- .../fact-data-table/fact-datum.block.less | 18 --- .../fact-module-filter.block.less | 26 +++-- .../fact-module-pickers.block.less | 59 ++++++---- .../system-tracking-container.block.less | 25 +++- .../system-tracking.controller.js | 3 +- .../system-tracking.partial.html | 76 +++++------- 14 files changed, 227 insertions(+), 197 deletions(-) delete mode 100644 awx/ui/client/src/system-tracking/fact-data-table/fact-data-error.block.less delete mode 100644 awx/ui/client/src/system-tracking/fact-data-table/fact-data-group.block.less delete mode 100644 awx/ui/client/src/system-tracking/fact-data-table/fact-data-table-heading.block.less delete mode 100644 awx/ui/client/src/system-tracking/fact-data-table/fact-datum.block.less diff --git a/awx/ui/client/src/helpers/Jobs.js b/awx/ui/client/src/helpers/Jobs.js index 4bcad05b89..627b495809 100644 --- a/awx/ui/client/src/helpers/Jobs.js +++ b/awx/ui/client/src/helpers/Jobs.js @@ -366,12 +366,8 @@ export default mode: 'edit', id: id, scope: scope, -<<<<<<< HEAD - showSearch: false -======= showSearch: true, title: false ->>>>>>> tagSearchUI }); SearchInit({ diff --git a/awx/ui/client/src/inventories/manage/inventory-manage.controller.js b/awx/ui/client/src/inventories/manage/inventory-manage.controller.js index c7d12bbcf6..382938e3bd 100644 --- a/awx/ui/client/src/inventories/manage/inventory-manage.controller.js +++ b/awx/ui/client/src/inventories/manage/inventory-manage.controller.js @@ -50,6 +50,8 @@ function InventoriesManage($log, $scope, $rootScope, $location, // you need this so that the event doesn't bubble to the watcher above // for the host list e.stopPropagation(); + var trackingButton = angular.element(document.querySelector('.system-tracking')); + trackingButton.html('SYSTEM TRACKING'); if (selection.length === 0) { $scope.hostsSelected = false; } else if (selection.length === 1) { diff --git a/awx/ui/client/src/lists/InventoryHosts.js b/awx/ui/client/src/lists/InventoryHosts.js index c6ec74dbfa..d71e9a0083 100644 --- a/awx/ui/client/src/lists/InventoryHosts.js +++ b/awx/ui/client/src/lists/InventoryHosts.js @@ -91,6 +91,7 @@ export default dataPlacement: 'top', awFeature: 'system_tracking', ngDisabled: 'systemTrackingDisabled', + actionClass: 'btn List-buttonDefault system-tracking', ngShow: 'hostsSelected' }, refresh: { diff --git a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-error.block.less b/awx/ui/client/src/system-tracking/fact-data-table/fact-data-error.block.less deleted file mode 100644 index 2fbd166b77..0000000000 --- a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-error.block.less +++ /dev/null @@ -1,26 +0,0 @@ -/** @define FactDataError */ - -@import "../../shared/branding/colors.less"; - -.FactDataError { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - // background-color: @ansible-red; - - &-message { - font-size: 1.5em; - line-height: 1.5; - text-align: center; - width: 75%; - margin-bottom: 2em; - } - - &-note { - - &--full { - font-size: 22px; - } - } -} diff --git a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-group.block.less b/awx/ui/client/src/system-tracking/fact-data-table/fact-data-group.block.less deleted file mode 100644 index 664b7b09a2..0000000000 --- a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-group.block.less +++ /dev/null @@ -1,21 +0,0 @@ -/************************************************* - * Copyright (c) 2015 Ansible, Inc. - * - * All Rights Reserved - *************************************************/ - -/** @define FactDataGroup */ - -@import '../../shared/text-label.less'; - -.FactDataGroup { - &-headings { - &:hover { - background-color: #fff; - border-color: transparent; - } - } - &-header { - padding: 0; - } -} diff --git a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table-heading.block.less b/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table-heading.block.less deleted file mode 100644 index 07980e13df..0000000000 --- a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table-heading.block.less +++ /dev/null @@ -1,26 +0,0 @@ -/** @define FactDataTableHeading */ - -.FactDataTableHeading { - display: flex; - flex-wrap: wrap; - font-size: 1em; - align-items: flex-end; - font-weight: bold; - - &-host { - margin-bottom: 3px; // just some breathing room - - &:after { - content: " scanned on"; - font-weight: 200; - } - } - &-date { - flex-basis: 100%; - } - - // Override some global styling on h3 tags - h3 { - margin: 1em initial; - } -} diff --git a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.block.less b/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.block.less index 350aa6dd08..67bfcf42fa 100644 --- a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.block.less +++ b/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.block.less @@ -1,4 +1,5 @@ /** @define FactDataTable */ +@import "../../shared/branding/colors.default.less"; .FactDataTable { &-row, &-headingRow, &-groupHeadingRow { @@ -6,14 +7,18 @@ } &-row { - margin-bottom: 0.5em; + padding: .5em 0; align-items: center; transition: background-color 100ms, border-color 100ms; - // max-height: 36px; border: solid 1px #fff; + + &:nth-child(even) { + background-color: @default-no-items-bord; + } + &:hover { - background-color: #ebebeb; - border-color: #adadad; + background-color: @default-list-header-bg; + border-color: @default-border; } &--flexible { @@ -23,15 +28,39 @@ } + &-repeat { + &:nth-child(even) { + background-color: @default-no-items-bord; + } + } + &-headingRow { - border-bottom: 1px solid #adadad; - margin-bottom: 1.5em; + background-color: @default-icon-hov; + border: none; + padding: 8px 12px; + + .FactDataTable-column.FactDataTableHeading:first-child { + padding-left: 0; + } + } + + &-groupHeadingRow { + background-color: @default-icon-hov; + padding: 1em 12px; + color: @default-as-detail-txt; + font-size: 14px; + text-transform: uppercase; } &-column { padding: 8px; flex: 1 0 33%; align-self: flex-start; + padding: 0; + margin: 0; + overflow: hidden; + padding: 8px; + word-wrap: break-word; &--offsetLeft { margin-left: 33%; } @@ -49,3 +78,71 @@ } } } + +.FactDataError { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + &-message { + font-size: 1.5em; + line-height: 1.5; + text-align: center; + width: 75%; + margin-bottom: 2em; + } + + &-note { + &--full { + font-size: 22px; + } + } +} + +.FactDataGroup { + &-headings { + &:hover { + background-color: @default-bg; + border-color: transparent; + } + } + &-header { + padding: 0; + } +} + +.FactDataTableHeading { + display: flex; + flex-wrap: wrap; + align-items: flex-end; + font-size: 14px; + color: @default-as-detail-txt; + text-transform: uppercase; + + &-host { + margin: 0; + } + &-date { + flex-basis: auto; + } + + // Override some global styling on h3 tags + h3 { + margin: 1em initial; + } +} + +.FactDatum { + &--divergent { + //margin-bottom: 0.5rem; + background-color: @default-err; + border: none; + color: #FFFFFF; + + &:hover { + background-color: @default-err; + border: none; + } + } +} diff --git a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.partial.html b/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.partial.html index 1d6880b42c..efb66303bc 100644 --- a/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.partial.html +++ b/awx/ui/client/src/system-tracking/fact-data-table/fact-data-table.partial.html @@ -3,29 +3,29 @@ The selected fact scans were identical for this module. Showing all facts from the latest selected scan instead.
-

+ - Comparing facts collected from: + Comparing facts from: -

-

+ + No scans for {{leftHostname}} on - {{leftHostname}} - {{leftScanDate|longDate}} - {{rightScanDate|longDate}} -

-

+ {{leftHostname}} -  + {{leftScanDate|longDate}} + {{rightScanDate|longDate}} + + No scans for {{rightHostname}} on - {{rightHostname}} + {{rightHostname}} -  {{rightScanDate|longDate}} -

+
-
+
{{group.facts.keyName}} @@ -51,9 +51,9 @@
-

+ {{group.displayKeyPath}} -

+
diff --git a/awx/ui/client/src/system-tracking/fact-data-table/fact-datum.block.less b/awx/ui/client/src/system-tracking/fact-data-table/fact-datum.block.less deleted file mode 100644 index 49c9e02a83..0000000000 --- a/awx/ui/client/src/system-tracking/fact-data-table/fact-datum.block.less +++ /dev/null @@ -1,18 +0,0 @@ -/** @define FactDatum */ - -.FactDatum { - &--divergent { - margin-bottom: 0; - background-color: #ffb2ae; - border: none; - - &:hover { - background-color: #ffb2ae; - border: none; - } - - .FactDataTable-column:first-child { - background-color: #fff; - } - } -} diff --git a/awx/ui/client/src/system-tracking/fact-module-filter.block.less b/awx/ui/client/src/system-tracking/fact-module-filter.block.less index 81361f68bb..69ba915bf6 100644 --- a/awx/ui/client/src/system-tracking/fact-module-filter.block.less +++ b/awx/ui/client/src/system-tracking/fact-module-filter.block.less @@ -1,6 +1,8 @@ /** @define FactModuleFilter */ @import "../shared/branding/colors.less"; +@import "../shared/branding/colors.default.less"; + .FactModuleFilter { width: 100%; @@ -8,19 +10,23 @@ flex-flow: row wrap; margin-bottom: 2.8rem; + .btn, .btn-default { + margin-right: 20px; + width: 10rem; + } + &-module { - background-color: @disabled-item-background; - color: @disabled-item-text; - border-color: @disabled-item-border; + background-color: @enabled-item-background; + border-color: @enabled-item-border; + color: @default-interface-txt; - flex: 1 1 20%; @media screen and (max-width: 750px) { flex-basis: 50%; } &:active, &:focus { // copied from bootstrap's .btn:focus - background-color: @enabled-item-background; + background-color: @default-icon-hov; border-color: @enabled-item-border; color: @enabled-item-text; box-shadow: none; @@ -30,17 +36,19 @@ &-module.is-active { cursor: default; - background-color: @enabled-item-background; - border-color: @enabled-item-border; - color: @enabled-item-text; + z-index: 2; + background-color: @default-icon; + color: #fff; + border-color: @default-icon; + &:active, &:focus { box-shadow: none; } &:hover { - background-color: @enabled-item-background; + background-color: @default-as-detail-txt; } } } diff --git a/awx/ui/client/src/system-tracking/fact-module-pickers.block.less b/awx/ui/client/src/system-tracking/fact-module-pickers.block.less index 8d883f3047..b494456981 100644 --- a/awx/ui/client/src/system-tracking/fact-module-pickers.block.less +++ b/awx/ui/client/src/system-tracking/fact-module-pickers.block.less @@ -1,27 +1,38 @@ -/** @define FactModulePickers */ +// /** @define FactModulePickers */ +// +// .FactModulePickers { +// //width: 100%; +// display: flex; +// margin-bottom: 15px; +// +// &-dateContainer { +// flex: 1 0 auto; +// display: flex; +// flex-direction: column +// } +// +// &-dateContainer--left { +// margin-right: 7px; +// } +// +// &-dateContainer--right { +// margin-left: 7px; +// } +// +// &-label { +// flex: 1 0 auto; +// font-weight: 700; +// padding-bottom: 5px; +// } +// } -.FactModulePickers { - width: 100%; - display: flex; - margin-bottom: 15px; +@import "../../shared/branding/colors.default.less"; - &-dateContainer { - flex: 1 0 auto; - display: flex; - flex-direction: column - } - - &-dateContainer--left { - margin-right: 7px; - } - - &-dateContainer--right { - margin-left: 7px; - } - - &-label { - flex: 1 0 auto; - font-weight: 700; - padding-bottom: 5px; - } +.FactModulePickers-label { + padding-right: 0; + text-align: right; + font-size: 11px; + text-transform: uppercase; + color: @default-interface-txt; + line-height: 17px; } diff --git a/awx/ui/client/src/system-tracking/system-tracking-container.block.less b/awx/ui/client/src/system-tracking/system-tracking-container.block.less index 40ecb7ab2f..26fc643018 100644 --- a/awx/ui/client/src/system-tracking/system-tracking-container.block.less +++ b/awx/ui/client/src/system-tracking/system-tracking-container.block.less @@ -1,7 +1,7 @@ +@import "../../shared/branding/colors.default.less"; .SystemTrackingContainer { display: flex; flex-direction: column; - min-height: 85vh; > * { flex: 0 0 auto; @@ -11,4 +11,27 @@ flex: 1 0 auto; align-self: stretch; } + + .DatePicker { + flex: none; + } + + .DatePicker-input { + width: 100%; + flex: none; + } + + .DatePicker-icon { + i { + color: @default-icon; + } + } + + .SystemTrackingContainer-main { + margin-top: 20px; + } + + .FactDatum--divergent { + background-color: @default-err; + } } diff --git a/awx/ui/client/src/system-tracking/system-tracking.controller.js b/awx/ui/client/src/system-tracking/system-tracking.controller.js index 2df9b46941..fee06ee768 100644 --- a/awx/ui/client/src/system-tracking/system-tracking.controller.js +++ b/awx/ui/client/src/system-tracking/system-tracking.controller.js @@ -89,7 +89,7 @@ function controller($rootScope, leftRange, rightRange) .then(function(responses) { - var data = _.pluck(responses, 'fact'); + var data = _.pluck(responses, 'facts'); if (_.isEmpty(data[0]) && _.isEmpty(data[1])) { return _.reject({ name: 'NoScanData', @@ -253,7 +253,6 @@ function controller($rootScope, $scope.factData = info.factData; $scope.isNestedDisplay = info.isNestedDisplay; } - return info; }).catch(function(error) { diff --git a/awx/ui/client/src/system-tracking/system-tracking.partial.html b/awx/ui/client/src/system-tracking/system-tracking.partial.html index 85580ac630..7082f473a5 100644 --- a/awx/ui/client/src/system-tracking/system-tracking.partial.html +++ b/awx/ui/client/src/system-tracking/system-tracking.partial.html @@ -1,4 +1,4 @@ -
+

@@ -6,45 +6,38 @@

-
- -
-
- {{ factModulePickersLabelLeft }} - - - - There were no fact scans on this date, using a prior scan instead. - -
-
- {{ factModulePickersLabelRight }} - - - - There were no fact scans on this date, using a prior scan instead. - +
+
+
SYSTEM TRACKING | {{inventory.name}}
+
+
+
+ {{ factModulePickersLabelLeft }} + + + + There were no fact scans on this date, using a prior scan instead. + +
+
+ {{ factModulePickersLabelRight }} + + + + There were no fact scans on this date, using a prior scan instead. + +
+
+
- @@ -65,19 +58,10 @@ The two fact scans were identical for this module.

- We were not able to find any facts collected for this inventory or module. To setup or run scan jobs, edit the "{{inventory.name}}" inventory and select "Scan Jobs Templates." + We were not able to find any facts collected for this inventory or module. To setup or run scan jobs, edit the "{{inventory.name}}" inventory and select "Scan Jobs Templates."

- +
From a40f4b61b16c6b142890f83f20e9e90746f0e91e Mon Sep 17 00:00:00 2001 From: jlmitch5 Date: Mon, 11 Apr 2016 09:38:44 -0400 Subject: [PATCH 2/3] updated merge conflict that was introduced in tag search ui pr --- awx/ui/client/src/helpers/Jobs.js | 1 - 1 file changed, 1 deletion(-) diff --git a/awx/ui/client/src/helpers/Jobs.js b/awx/ui/client/src/helpers/Jobs.js index 627b495809..7700bdcd1d 100644 --- a/awx/ui/client/src/helpers/Jobs.js +++ b/awx/ui/client/src/helpers/Jobs.js @@ -366,7 +366,6 @@ export default mode: 'edit', id: id, scope: scope, - showSearch: true, title: false }); From dfaffdea56069441aeda370c31463130d5febe7e Mon Sep 17 00:00:00 2001 From: Ken Hoes Date: Tue, 12 Apr 2016 13:20:21 -0400 Subject: [PATCH 3/3] Updated to handle fact vs. facts responses. Removed accidental commit inclusion from branch. --- .../src/system-tracking/system-tracking.controller.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/awx/ui/client/src/system-tracking/system-tracking.controller.js b/awx/ui/client/src/system-tracking/system-tracking.controller.js index fee06ee768..42e2ce3f67 100644 --- a/awx/ui/client/src/system-tracking/system-tracking.controller.js +++ b/awx/ui/client/src/system-tracking/system-tracking.controller.js @@ -89,7 +89,15 @@ function controller($rootScope, leftRange, rightRange) .then(function(responses) { - var data = _.pluck(responses, 'facts'); + var data = []; + _.each(responses, function(response) { + if(response.fact) { + data.push(response.fact); + } else if (response.facts) { + data.push(response.facts); + } + }); + if (_.isEmpty(data[0]) && _.isEmpty(data[1])) { return _.reject({ name: 'NoScanData',