diff --git a/awx/ui/client/src/instance-groups/add-edit/add-edit-instance-groups.view.html b/awx/ui/client/src/instance-groups/add-edit/add-edit-instance-groups.view.html index 8567f095ce..7d8c61bb59 100644 --- a/awx/ui/client/src/instance-groups/add-edit/add-edit-instance-groups.view.html +++ b/awx/ui/client/src/instance-groups/add-edit/add-edit-instance-groups.view.html @@ -18,9 +18,6 @@ - -
- diff --git a/awx/ui/client/src/instance-groups/add-edit/add-instance-group.controller.js b/awx/ui/client/src/instance-groups/add-edit/add-instance-group.controller.js index bb0b3ea413..1296e41ed4 100644 --- a/awx/ui/client/src/instance-groups/add-edit/add-instance-group.controller.js +++ b/awx/ui/client/src/instance-groups/add-edit/add-instance-group.controller.js @@ -1,6 +1,6 @@ -function AddController ($scope, $state, models, strings) { +function AddController ($state, models, strings) { const vm = this || {}; - const { instanceGroup, instance } = models; + const { instanceGroup } = models; vm.mode = 'add'; vm.strings = strings; @@ -17,15 +17,7 @@ function AddController ($scope, $state, models, strings) { // Default policy instance percentage value is 0 vm.form.policy_instance_percentage._value = 0; - vm.form.policy_instance_list._lookupTags = true; - vm.form.policy_instance_list._model = instance; - vm.form.policy_instance_list._placeholder = "Policy Instance List"; - vm.form.policy_instance_list._resource = 'instances'; - vm.form.policy_instance_list._route = 'instanceGroups.add.modal.instances'; - vm.form.policy_instance_list._value = []; - vm.form.save = data => { - data.policy_instance_list = data.policy_instance_list.map(instance => instance.hostname); return instanceGroup.request('post', { data }); }; @@ -35,7 +27,6 @@ function AddController ($scope, $state, models, strings) { } AddController.$inject = [ - '$scope', '$state', 'resolvedModels', 'InstanceGroupsStrings' diff --git a/awx/ui/client/src/instance-groups/add-edit/edit-instance-group.controller.js b/awx/ui/client/src/instance-groups/add-edit/edit-instance-group.controller.js index 21e04a44ae..5d78912397 100644 --- a/awx/ui/client/src/instance-groups/add-edit/edit-instance-group.controller.js +++ b/awx/ui/client/src/instance-groups/add-edit/edit-instance-group.controller.js @@ -1,6 +1,6 @@ function EditController ($rootScope, $state, models, strings) { const vm = this || {}; - const { instanceGroup, instance } = models; + const { instanceGroup } = models; $rootScope.breadcrumb.instance_group_name = instanceGroup.get('name'); @@ -29,16 +29,8 @@ function EditController ($rootScope, $state, models, strings) { vm.form.disabled = !instanceGroup.has('options', 'actions.PUT'); vm.form.name._disabled = instanceGroup.get('name') === 'tower'; - vm.form.policy_instance_list._lookupTags = true; - vm.form.policy_instance_list._model = instance; - vm.form.policy_instance_list._placeholder = "Policy Instance List"; - vm.form.policy_instance_list._resource = 'instances'; - vm.form.policy_instance_list._route = 'instanceGroups.edit.modal.instances'; - vm.form.policy_instance_list._value = instanceGroup.get('policy_instance_list'); vm.form.save = data => { - instanceGroup.unset('policy_instance_list'); - data.policy_instance_list = data.policy_instance_list.map(instance => instance.hostname || instance); return instanceGroup.request('put', { data }); }; diff --git a/awx/ui/client/src/instance-groups/add-edit/instance-list-policy.directive.js b/awx/ui/client/src/instance-groups/add-edit/instance-list-policy.directive.js deleted file mode 100644 index a156ac9ceb..0000000000 --- a/awx/ui/client/src/instance-groups/add-edit/instance-list-policy.directive.js +++ /dev/null @@ -1,92 +0,0 @@ -const templateUrl = require('./instance-list-policy.partial.html'); - -function InstanceListPolicyLink (scope, el, attrs, controllers) { - const instancePolicyController = controllers[0]; - const formController = controllers[1]; - const models = scope.$resolve.resolvedModels; - const Dataset = scope.$resolve.Dataset; - - instancePolicyController.init(formController, models, Dataset); -} - -function InstanceListPolicyController ($scope, $state, strings) { - const vm = this || {}; - let form; - let instanceGroup; - vm.strings = strings; - - vm.init = (_form_, _models_, Dataset) => { - form = _form_; - ({ instanceGroup } = _models_); - - vm.instanceGroupId = instanceGroup.get('id'); - - $scope.list = { - name: 'instances', - iterator: 'instance' - }; - $scope.instance_dataset = Dataset.data; - $scope.instances = Dataset.data.results; - - if (vm.instanceGroupId === undefined) { - vm.setInstances(); - } else { - vm.setRelatedInstances(); - } - }; - - vm.setInstances = () => { - $scope.instances = $scope.instances.map(instance => { - instance.isSelected = false; - return instance; - }); - }; - - vm.setRelatedInstances = () => { - vm.relatedInstances = instanceGroup.get('policy_instance_list'); - - $scope.instances = $scope.instances.map(instance => { - instance.isSelected = vm.relatedInstances.includes(instance.hostname); - return instance; - }); - }; - - $scope.$watch('instances', function() { - vm.selectedRows = _.filter($scope.instances, 'isSelected'); - vm.deselectedRows = _.filter($scope.instances, 'isSelected', false); - }, true); - - vm.submit = () => { - form.components - .filter(component => component.category === 'input') - .filter(component => component.state.id === 'policy_instance_list') - .forEach(component => { - component.state._value = vm.selectedRows; - }); - - $state.go("^.^"); - }; - - vm.dismiss = () => { - $state.go('^.^'); - }; -} - -InstanceListPolicyController.$inject = [ - '$scope', - '$state', - 'InstanceGroupsStrings' -]; - -function instanceListPolicy () { - return { - restrict: 'E', - link: InstanceListPolicyLink, - controller: InstanceListPolicyController, - controllerAs: 'vm', - require: ['instanceListPolicy', '^atForm'], - templateUrl - }; -} - -export default instanceListPolicy; diff --git a/awx/ui/client/src/instance-groups/add-edit/instance-list-policy.partial.html b/awx/ui/client/src/instance-groups/add-edit/instance-list-policy.partial.html deleted file mode 100644 index e9d9287805..0000000000 --- a/awx/ui/client/src/instance-groups/add-edit/instance-list-policy.partial.html +++ /dev/null @@ -1,61 +0,0 @@ - \ No newline at end of file diff --git a/awx/ui/client/src/instance-groups/instance-groups.strings.js b/awx/ui/client/src/instance-groups/instance-groups.strings.js index b082a93cc8..32a35b7982 100644 --- a/awx/ui/client/src/instance-groups/instance-groups.strings.js +++ b/awx/ui/client/src/instance-groups/instance-groups.strings.js @@ -12,6 +12,7 @@ function InstanceGroupsStrings (BaseString) { }; ns.list = { + MANUAL: t.s('MANUAL'), PANEL_TITLE: t.s('INSTANCE GROUPS'), ROW_ITEM_LABEL_INSTANCES: t.s('Instances'), ROW_ITEM_LABEL_RUNNING_JOBS: t.s('Running Jobs'), diff --git a/awx/ui/client/src/instance-groups/instances/instances-list.partial.html b/awx/ui/client/src/instance-groups/instances/instances-list.partial.html index 129637d1f0..39fae322ba 100644 --- a/awx/ui/client/src/instance-groups/instances/instances-list.partial.html +++ b/awx/ui/client/src/instance-groups/instances/instances-list.partial.html @@ -59,7 +59,10 @@
- + + { + instance.is_manual = vm.policy_instance_list.includes(instance.hostname); + return instance; + }); + init(); function init() { @@ -102,7 +107,6 @@ InstancesController.$inject = [ '$state', '$http', 'resolvedModels', - 'InstanceModel', 'InstanceGroupsStrings', 'Dataset', 'ProcessErrors' diff --git a/awx/ui/client/src/instance-groups/main.js b/awx/ui/client/src/instance-groups/main.js index d7776202d2..b27ddf4518 100644 --- a/awx/ui/client/src/instance-groups/main.js +++ b/awx/ui/client/src/instance-groups/main.js @@ -7,7 +7,6 @@ import instanceGroupsModal from '../shared/instance-groups-multiselect/instance- import AddEditTemplate from './add-edit/add-edit-instance-groups.view.html'; import AddInstanceGroupController from './add-edit/add-instance-group.controller'; import EditInstanceGroupController from './add-edit/edit-instance-group.controller'; -import InstanceListPolicy from './add-edit/instance-list-policy.directive.js'; import InstanceGroupsTemplate from './list/instance-groups-list.partial.html'; import InstanceGroupsListController from './list/instance-groups-list.controller'; @@ -138,32 +137,6 @@ function InstanceGroupsRun ($stateExtender, strings) { } }); - $stateExtender.addState({ - name: 'instanceGroups.add.modal', - abstract: true, - ncyBreadcrumb: { - skip: true, - }, - views: { - "modal": { - template: ` - `, - } - } - }); - - $stateExtender.addState({ - name: 'instanceGroups.add.modal.instances', - ncyBreadcrumb: { - skip: true, - }, - views: { - "modal": { - template: '', - } - } - }); - $stateExtender.addState({ name: 'instanceGroups.edit', route: '/:instance_group_id', @@ -200,33 +173,6 @@ function InstanceGroupsRun ($stateExtender, strings) { } }); - - $stateExtender.addState({ - name: 'instanceGroups.edit.modal', - abstract: true, - ncyBreadcrumb: { - skip: true, - }, - views: { - "modal": { - template: ` - `, - } - } - }); - - $stateExtender.addState({ - name: 'instanceGroups.edit.modal.instances', - ncyBreadcrumb: { - skip: true, - }, - views: { - "modal": { - template: '', - } - } - }); - $stateExtender.addState({ name: 'instanceGroups.instances', url: '/:instance_group_id/instances', @@ -304,7 +250,6 @@ angular.module(MODULE_NAME, []) .factory('InstanceGroupList', list) .controller('InstanceGroupsListController', InstanceGroupsListController) .controller('InstanceListController', InstanceListController) - .directive('instanceListPolicy', InstanceListPolicy) .directive('instanceGroupsMultiselect', instanceGroupsMultiselect) .directive('instanceGroupsModal', instanceGroupsModal) .directive('capacityAdjuster', CapacityAdjuster)