mirror of
https://github.com/ansible/awx.git
synced 2026-03-06 19:21:06 -03:30
adding related-host-add/edit routes for inventories
This commit is contained in:
committed by
Jared Tabor
parent
9131ee59a2
commit
62fafc9870
@@ -1,5 +1,6 @@
|
||||
<div class="tab-pane" id="inventories-panel">
|
||||
<div ui-view="groupForm"></div>
|
||||
<div ui-view="hostForm"></div>
|
||||
<div ui-view="form"></div>
|
||||
<div ng-cloak id="htmlTemplate" class="Panel">
|
||||
<div class="row Form-tabRow">
|
||||
|
||||
@@ -11,9 +11,10 @@
|
||||
*/
|
||||
|
||||
export default ['i18n', 'buildGroupsListState', 'buildGroupsAddState',
|
||||
'buildGroupsEditState', 'buildHostListState',
|
||||
'buildGroupsEditState', 'buildHostListState', 'buildHostAddState',
|
||||
'buildHostEditState',
|
||||
function(i18n, buildGroupsListState, buildGroupsAddState, buildGroupsEditState,
|
||||
buildHostListState) {
|
||||
buildHostListState, buildHostAddState, buildHostEditState) {
|
||||
return {
|
||||
|
||||
addTitle: i18n._('NEW INVENTORY'),
|
||||
@@ -149,8 +150,8 @@ function(i18n, buildGroupsListState, buildGroupsAddState, buildGroupsEditState,
|
||||
title: i18n._('Hosts'),
|
||||
iterator: 'host',
|
||||
listState: buildHostListState,
|
||||
// addState: buildGroupsAddState,
|
||||
// editState: buildGroupsEditState
|
||||
addState: buildHostAddState,
|
||||
editState: buildHostEditState
|
||||
},
|
||||
inventory_sources: {
|
||||
name: 'inventory_sources',
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
/*************************************************
|
||||
* Copyright (c) 2017 Ansible, Inc.
|
||||
*
|
||||
* All Rights Reserved
|
||||
*************************************************/
|
||||
|
||||
import RelatedHostAddController from './host-add.controller';
|
||||
|
||||
export default ['$stateExtender', 'templateUrl', '$injector',
|
||||
function($stateExtender, templateUrl, $injector){
|
||||
var val = function(field, formStateDefinition, params) {
|
||||
let state,
|
||||
list = field.include ? $injector.get(field.include) : field,
|
||||
breadcrumbLabel = (field.iterator.replace('_', ' ') + 's').toUpperCase(),
|
||||
stateConfig = {
|
||||
name: `${formStateDefinition.name}.${list.iterator}s.add`,
|
||||
url: `/add`,
|
||||
ncyBreadcrumb: {
|
||||
parent: `${formStateDefinition.name}`,
|
||||
label: `${breadcrumbLabel}`
|
||||
},
|
||||
views: {
|
||||
'hostForm@inventories': {
|
||||
templateProvider: function(GenerateForm, RelatedHostsFormDefinition) {
|
||||
let form = RelatedHostsFormDefinition;
|
||||
return GenerateForm.buildHTML(form, {
|
||||
mode: 'add',
|
||||
related: false
|
||||
});
|
||||
},
|
||||
controller: RelatedHostAddController
|
||||
}
|
||||
},
|
||||
resolve: {
|
||||
'FormDefinition': [params.form, function(definition) {
|
||||
return definition;
|
||||
}]
|
||||
}
|
||||
};
|
||||
|
||||
state = $stateExtender.buildDefinition(stateConfig);
|
||||
return state;
|
||||
};
|
||||
return val;
|
||||
}
|
||||
];
|
||||
@@ -4,9 +4,9 @@
|
||||
* All Rights Reserved
|
||||
*************************************************/
|
||||
|
||||
export default ['$state', '$stateParams', '$scope', 'HostForm', 'ParseTypeChange',
|
||||
export default ['$state', '$stateParams', '$scope', 'RelatedHostsFormDefinition', 'ParseTypeChange',
|
||||
'GenerateForm', 'HostManageService', 'rbacUiControlService', 'GetBasePath', 'ToJSON',
|
||||
function($state, $stateParams, $scope, HostForm, ParseTypeChange,
|
||||
function($state, $stateParams, $scope, RelatedHostsFormDefinition, ParseTypeChange,
|
||||
GenerateForm, HostManageService, rbacUiControlService, GetBasePath, ToJSON) {
|
||||
|
||||
init();
|
||||
@@ -21,7 +21,7 @@ export default ['$state', '$stateParams', '$scope', 'HostForm', 'ParseTypeChange
|
||||
$scope.parseType = 'yaml';
|
||||
$scope.host = { enabled: true };
|
||||
// apply form definition's default field values
|
||||
GenerateForm.applyDefaults(HostForm, $scope);
|
||||
GenerateForm.applyDefaults(RelatedHostsFormDefinition, $scope);
|
||||
|
||||
ParseTypeChange({
|
||||
scope: $scope,
|
||||
|
||||
@@ -4,8 +4,10 @@
|
||||
* All Rights Reserved
|
||||
*************************************************/
|
||||
|
||||
import buildHostAddState from './build-host-add-state.factory';
|
||||
import controller from './host-add.controller';
|
||||
|
||||
export default
|
||||
angular.module('relatedHostsAdd', [])
|
||||
.factory('buildHostAddState', buildHostAddState)
|
||||
.controller('RelatedHostAddController', controller);
|
||||
|
||||
@@ -34,10 +34,10 @@
|
||||
|
||||
};
|
||||
var init = function(){
|
||||
$scope.host = host.data;
|
||||
$scope.name = host.data.name;
|
||||
$scope.description = host.data.description;
|
||||
$scope.variables = getVars(host.data.variables);
|
||||
$scope.host = host;
|
||||
$scope.name = host.name;
|
||||
$scope.description = host.description;
|
||||
$scope.variables = getVars(host.variables);
|
||||
ParseTypeChange({
|
||||
scope: $scope,
|
||||
field_id: 'host_variables',
|
||||
|
||||
@@ -3,9 +3,10 @@
|
||||
*
|
||||
* All Rights Reserved
|
||||
*************************************************/
|
||||
|
||||
import buildHostEditState from './build-host-edit-state.factory';
|
||||
import controller from './host-edit.controller';
|
||||
|
||||
export default
|
||||
angular.module('relatedHostEdit', [])
|
||||
.controller('HostEditController', controller);
|
||||
.factory('buildHostEditState', buildHostEditState)
|
||||
.controller('RelatedHostEditController', controller);
|
||||
|
||||
@@ -9,10 +9,6 @@
|
||||
import relatedHostList from './list/main';
|
||||
import relatedHostsListDefinition from './related-host.list';
|
||||
import relatedHostsFormDefinition from './related-host.form';
|
||||
// import HostManageService from './hosts.service';
|
||||
// import SetStatus from './set-status.factory';
|
||||
// import SetEnabledMsg from './set-enabled-msg.factory';
|
||||
// import SmartInventory from './smart-inventory/main';
|
||||
|
||||
export default
|
||||
angular.module('relatedHost', [
|
||||
@@ -20,8 +16,5 @@ angular.module('relatedHost', [
|
||||
relatedHostEdit.name,
|
||||
relatedHostList.name
|
||||
])
|
||||
.value('RelatedHostsFormDefinition', relatedHostsFormDefinition)
|
||||
.factory('RelatedHostsFormDefinition', relatedHostsFormDefinition)
|
||||
.value('RelatedHostsListDefinition', relatedHostsListDefinition);
|
||||
// .factory('SetStatus', SetStatus)
|
||||
// .factory('SetEnabledMsg', SetEnabledMsg)
|
||||
// .service('HostManageService', HostManageService);
|
||||
|
||||
@@ -553,18 +553,20 @@ function($injector, $stateExtender, $log, i18n) {
|
||||
|
||||
function buildListNodes(field) {
|
||||
let states = [];
|
||||
if(field.iterator === 'group'){
|
||||
states.push(field.listState(field, formStateDefinition));
|
||||
states.push(field.addState(field, formStateDefinition, params));
|
||||
states.push(field.editState(field, formStateDefinition, params));
|
||||
states = _.flatten(states);
|
||||
if(field && (field.listState || field.addState || field.editState)){
|
||||
if(field && field.listState){
|
||||
states.push(field.listState(field, formStateDefinition));
|
||||
states = _.flatten(states);
|
||||
}
|
||||
if(field && field.addState){
|
||||
states.push(field.addState(field, formStateDefinition, params));
|
||||
states = _.flatten(states);
|
||||
}
|
||||
if(field && field.editState){
|
||||
states.push(field.editState(field, formStateDefinition, params));
|
||||
states = _.flatten(states);
|
||||
}
|
||||
}
|
||||
else if(field.iterator === 'host'){
|
||||
states.push(field.listState(field, formStateDefinition));
|
||||
}
|
||||
// if(field && field.listState){
|
||||
// states.push(field.listState(field, formStateDefinition));
|
||||
// }
|
||||
else if(field.iterator === 'notification'){
|
||||
states.push(buildNotificationState(field));
|
||||
states = _.flatten(states);
|
||||
|
||||
Reference in New Issue
Block a user