diff --git a/awx/ui/static/js/helpers/Groups.js b/awx/ui/static/js/helpers/Groups.js
index 279dd4ea9c..a7731eb9d1 100644
--- a/awx/ui/static/js/helpers/Groups.js
+++ b/awx/ui/static/js/helpers/Groups.js
@@ -125,9 +125,9 @@ angular.module('GroupsHelper', [ 'RestServices', 'Utilities', 'ListGenerator', '
}])
- .factory('InventoryStatus', [ '$rootScope', 'Rest', 'Alert', 'ProcessErrors', 'GetBasePath', 'FormatDate', 'InventorySummary',
+ .factory('InventoryStatus', [ '$rootScope', '$routeParams', 'Rest', 'Alert', 'ProcessErrors', 'GetBasePath', 'FormatDate', 'InventorySummary',
'GenerateList', 'ClearScope', 'SearchInit', 'PaginateInit', 'Refresh', 'InventoryUpdate', 'GroupsEdit',
- function($rootScope, Rest, Alert, ProcessErrors, GetBasePath, FormatDate, InventorySummary, GenerateList, ClearScope, SearchInit,
+ function($rootScope, $routeParams, Rest, Alert, ProcessErrors, GetBasePath, FormatDate, InventorySummary, GenerateList, ClearScope, SearchInit,
PaginateInit, Refresh, InventoryUpdate, GroupsEdit) {
return function(params) {
//Build a summary of a given inventory
@@ -201,11 +201,26 @@ angular.module('GroupsHelper', [ 'RestServices', 'Utilities', 'ListGenerator', '
scope.groups[i].status_badge_tooltip = status_tip;
}
});
-
+
SearchInit({ scope: scope, set: 'groups', list: list, url: defaultUrl });
PaginateInit({ scope: scope, list: list, url: defaultUrl });
+
+ if ($routeParams['status']) {
+ // with status param post update submit
+ scope[list.iterator + 'SearchField'] = 'status';
+ //scope[list.iterator + 'SearchType'] = 'icontains';
+ scope[list.iterator + 'SelectShow'] = true;
+ scope[list.iterator + 'SearchSelectOpts'] = list.fields['status'].searchOptions;
+ for (var opt in list.fields['status'].searchOptions) {
+ if (list.fields['status'].searchOptions[opt].value == $routeParams['status']) {
+ scope[list.iterator + 'SearchSelectValue'] = list.fields['status'].searchOptions[opt];
+ }
+ }
+ }
+
scope.search(list.iterator);
+ // Click on group name
scope.GroupsEdit = function(group_id) {
// On the tree, select the first occurrance of the requested group
var node = $('#tree-view').find("li[group_id='" + group_id + "']").first();
@@ -216,6 +231,7 @@ angular.module('GroupsHelper', [ 'RestServices', 'Utilities', 'ListGenerator', '
$('#tree-view').jstree('select_node', node);
}
+ // Respond to refresh button
scope.refresh = function() {
scope['groupSearchSpin'] = true;
scope['groupLoading'] = true;
@@ -706,45 +722,33 @@ angular.module('GroupsHelper', [ 'RestServices', 'Utilities', 'ListGenerator', '
// Start the update process
scope.updateGroup = function() {
- if (scope['source'] == null || scope['source'] == '') {
- Alert('Missing Configuration', 'The selected group is not configured for updates. You must first edit the group, provide Source settings, ' +
+ console.log('working on id: ' + scope.name);
+ console.log('source: ' + scope.source.value);
+ if (scope.source == "" || scope.source == null) {
+ Alert('Missing Configuration', 'The selected group is not configured for updates. You must first edit the group, provide Source settings, ' +
'and then run an update.', 'alert-info');
}
- else {
- InventoryUpdate({
- scope: scope,
- group_id: group_id,
- url: scope['group_update_url']
- });
- }
- }
- // Start the update process
- scope.updateGroup = function() {
- if (scope[source] == "" || scope.groups[i].source == null) {
- Alert('Missing Configuration', 'The group is not configured for updates. You must provide Source settings before running the update ' +
- 'process.');
- }
- else if (scope[status] == 'updating') {
- Alert('Update in Progress', 'The inventory update process is currently running for this group ' +
- scope.groups[i].summary_fields.group.name + '. Under the Groupmonitor the status.', 'alert-info');
+ else if (scope.status == 'updating') {
+ Alert('Update in Progress', 'The inventory update process is currently running for group ' +
+ scope.summary_fields.group.name + '. Use the Refresh button to monitor the status.', 'alert-info');
}
else {
- if (scope['source'] == 'Amazon EC2') {
- scope['sourceUsernameLabel'] = 'Access Key ID';
- scope['sourcePasswordLabel'] = 'Secret Access Key';
- scope['sourcePasswordConfirmLabel'] = 'Confirm Secret Access Key';
+ if (scope.source == 'Amazon EC2') {
+ scope.sourceUsernameLabel = 'Access Key ID';
+ scope.sourcePasswordLabel = 'Secret Access Key';
+ scope.sourcePasswordConfirmLabel = 'Confirm Secret Access Key';
}
else {
- scope['sourceUsernameLabel'] = 'Username';
- scope['sourcePasswordLabel'] = 'Password';
- scope['sourcePasswordConfirmLabel'] = 'Confirm Password';
+ scope.sourceUsernameLabel = 'Username';
+ scope.sourcePasswordLabel = 'Password';
+ scope.sourcePasswordConfirmLabel = 'Confirm Password';
}
InventoryUpdate({
scope: scope,
- group_id: id,
- url: scope.groups[i].related.update,
- group_name: scope.groups[i].summary_fields.group.name,
- group_source: scope.groups[i].source
+ group_id: group_id,
+ url: scope.group_update_url,
+ group_name: scope.name,
+ group_source: scope.source.value
});
}
}
diff --git a/awx/ui/static/js/helpers/JobSubmission.js b/awx/ui/static/js/helpers/JobSubmission.js
index 26bc1a2b2a..3f26f7cf4d 100644
--- a/awx/ui/static/js/helpers/JobSubmission.js
+++ b/awx/ui/static/js/helpers/JobSubmission.js
@@ -376,9 +376,8 @@ angular.module('JobSubmissionHelper', [ 'RestServices', 'Utilities', 'Credential
scope.removeUpdateSubmitted = scope.$on('UpdateSubmitted', function() {
// Refresh the project list after update request submitted
//$location.path(GetBasePath('inventories') + inventory_id + '/groups'
- InventorySummary({ scope: scope });
- $('#tree-form').show();
- //scope.refresh();
+ //InventorySummary({ scope: scope });
+ $location.url('/inventories/' + scope['inventory_id'] + '/groups/?status=updating');
});
if (scope.removeInventorySubmit) {