diff --git a/awx/ui/static/js/controllers/Projects.js b/awx/ui/static/js/controllers/Projects.js index 0fa33fd134..b2e4152a3e 100644 --- a/awx/ui/static/js/controllers/Projects.js +++ b/awx/ui/static/js/controllers/Projects.js @@ -117,6 +117,22 @@ function ProjectsList ($scope, $rootScope, $location, $log, $routeParams, Rest, scope.search(list.iterator); }); + if (scope.removeStatusOptionsReady) { + scope.removeStatusOptionsReady(); + } + scope.removeStatusOptionsReady = scope.$on('statusOptionsReady', function() { + list.fields.status.searchOptions = scope.project_status_options; + }); + + // Load options for status --used in search + GetChoices({ + scope: scope, + url: defaultUrl, + field: 'status', + variable: 'project_status_options', + callback: 'statusOptionsReady' + }); + // Load the list of options for Kind GetChoices({ scope: scope, @@ -126,7 +142,6 @@ function ProjectsList ($scope, $rootScope, $location, $log, $routeParams, Rest, callback: 'choicesReady' }); - LoadBreadCrumbs(); scope.showActivity = function() { Stream(); } diff --git a/awx/ui/static/js/lists/Projects.js b/awx/ui/static/js/lists/Projects.js index 89d65a09f4..e7bf6e338a 100644 --- a/awx/ui/static/js/lists/Projects.js +++ b/awx/ui/static/js/lists/Projects.js @@ -30,7 +30,7 @@ angular.module('ProjectsListDefinition', []) excludeModal: true }, scm_type: { - label: 'SCM Type', + label: 'Type', searchType: 'select', searchOptions: [], // will be set by Options call to projects resource excludeModal: true, @@ -43,6 +43,8 @@ angular.module('ProjectsListDefinition', []) dataPlacement: 'top', badgeIcon: "\{\{ 'icon-failures-' + project.badge \}\}", badgePlacement: 'left', + searchType: 'select', + searchOptions: [], // will be set by Options call to projects resource excludeModal: true }, last_updated: { @@ -63,12 +65,13 @@ angular.module('ProjectsListDefinition', []) awToolTip: 'Create a new project' }, help: { - awPopOver: "
\n
Updating
An SCM update is in progress.
\n" + - "
Never Updated
No SCM update has ever run for the project.
\n" + - "
Failed
An error occurred during the most recent SCM update.
\n" + - "
Successful
The latest SCM update ran to completion without incident.
\n" + - "
Missing
The local project directory is missing.
\n" + - "
N/A
The project does not use SCM, so an update status is not available.
\n" + + awPopOver: "
\n
Updating
A source control update is in progress.
\n" + + "
Never Updated
This project has not yet been updated from source control.
\n" + + "
Failed
An error occurred during the most recent source control update, click the status " + + "text for more information.
\n" + + "
Successful
TThe latest source control update completed successfully.
\n" + + "
Missing
The previously configured local project directory is missing.
\n" + + "
N/A
The project is not linked to source control, so updates are not applicable.
\n" + "
\n", dataPlacement: 'left', dataContainer: 'body', @@ -76,6 +79,7 @@ angular.module('ProjectsListDefinition', []) mode: 'all', 'class': 'btn-xs btn-info btn-help', awToolTip: 'Click for help', + awTipPlacement: 'top', dataTitle: 'Project Status', iconSize: 'large' }, diff --git a/awx/ui/static/lib/ansible/directives.js b/awx/ui/static/lib/ansible/directives.js index 02b9575442..43f90f4e30 100644 --- a/awx/ui/static/lib/ansible/directives.js +++ b/awx/ui/static/lib/ansible/directives.js @@ -238,7 +238,13 @@ angular.module('AWDirectives', ['RestServices', 'Utilities', 'AuthService', 'Hos .directive('awToolTip', function() { return function(scope, element, attrs) { var delay = (attrs.delay != undefined && attrs.delay != null) ? attrs.delay : $AnsibleConfig.tooltip_delay; - var placement = (attrs.placement != undefined && attrs.placement != null) ? attrs.placement : 'left'; + var placement; + if (attrs.awTipPlacement) { + placement = attrs.awTipPlacement; + } + else { + placement = (attrs.placement != undefined && attrs.placement != null) ? attrs.placement : 'left'; + } $(element).on('hidden.bs.tooltip', function( ) { // TB3RC1 is leaving behind tooltip
elements. This will remove them // after a tooltip fades away. If not, they lay overtop of other elements and diff --git a/awx/ui/static/lib/ansible/generator-helpers.js b/awx/ui/static/lib/ansible/generator-helpers.js index 10f5578da5..b9bef2f41a 100644 --- a/awx/ui/static/lib/ansible/generator-helpers.js +++ b/awx/ui/static/lib/ansible/generator-helpers.js @@ -59,6 +59,9 @@ angular.module('GeneratorHelpers', ['GeneratorHelpers']) case 'dataTitle': result = "data-title=\"" + value + "\" "; break; + case 'awTipPlacement': + result = "aw-tip-placement=\"" + value + "\" "; + break; case 'columnShow': result = "ng-show=\"" + value + "\" "; break; @@ -139,6 +142,7 @@ angular.module('GeneratorHelpers', ['GeneratorHelpers']) html += (btn.ngHide) ? Attr(btn, 'ngHide') : ""; html += (btn.ngDisabled) ? Attr(btn, 'ngHide') : ""; html += (btn.ngClass) ? Attr(btn, 'ngClass') : ""; + html += (btn.awTipPlacement) ? Attr(btn, 'awTipPlacement') : ""; html += " >"; html += (btn['img']) ? "" : ""; html += (btn['icon']) ? Attr(btn,'icon') : "";