mirror of
https://github.com/ansible/awx.git
synced 2026-03-29 06:45:09 -02:30
Merge pull request #146 from jaredevantabor/users-permissions
Users/Teams permissions links
This commit is contained in:
@@ -106,6 +106,12 @@ angular.module('inventory', [
|
|||||||
},
|
},
|
||||||
resolve: {
|
resolve: {
|
||||||
edit: {
|
edit: {
|
||||||
|
smartInventoryRedirect: ['resourceData', '$state', '$stateParams',
|
||||||
|
function(resourceData, $state, $stateParams){
|
||||||
|
if(resourceData.data.kind === "smart"){
|
||||||
|
$state.go("inventories.editSmartInventory", {"smartinventory_id": $stateParams.inventory_id}, {reload: true});
|
||||||
|
}
|
||||||
|
}],
|
||||||
InstanceGroupsData: ['$stateParams', 'Rest', 'GetBasePath', 'ProcessErrors',
|
InstanceGroupsData: ['$stateParams', 'Rest', 'GetBasePath', 'ProcessErrors',
|
||||||
function($stateParams, Rest, GetBasePath, ProcessErrors){
|
function($stateParams, Rest, GetBasePath, ProcessErrors){
|
||||||
let path = `${GetBasePath('inventory')}${$stateParams.inventory_id}/instance_groups/`;
|
let path = `${GetBasePath('inventory')}${$stateParams.inventory_id}/instance_groups/`;
|
||||||
|
|||||||
@@ -84,11 +84,28 @@ export default ['$scope', '$rootScope', '$stateParams', 'TeamForm', 'Rest',
|
|||||||
|
|
||||||
init();
|
init();
|
||||||
|
|
||||||
$scope.convertApiUrl = function(str) {
|
$scope.redirectToResource = function(resource) {
|
||||||
if (str) {
|
let type = resource.summary_fields.resource_type.replace(/ /g , "_");
|
||||||
return str.replace(/api\/v\d+/, "#");
|
var id = resource.related[type].split("/")[4];
|
||||||
} else {
|
switch (type) {
|
||||||
return null;
|
case 'organization':
|
||||||
|
$state.go('organizations.edit', { "organization_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'credential':
|
||||||
|
$state.go('credentials.edit', { "credential_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'project':
|
||||||
|
$state.go('projects.edit', { "project_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'inventory':
|
||||||
|
$state.go('inventories.edit', { "inventory_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'job_template':
|
||||||
|
$state.go('templates.editJobTemplate', { "job_template_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'workflow_job_template':
|
||||||
|
$state.go('templates.editWorkflowJobTemplate', { "workflow_job_template_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -123,7 +123,7 @@ export default ['i18n', function(i18n) {
|
|||||||
name: {
|
name: {
|
||||||
label: i18n._('Name'),
|
label: i18n._('Name'),
|
||||||
ngBind: 'permission.summary_fields.resource_name',
|
ngBind: 'permission.summary_fields.resource_name',
|
||||||
linkTo: '{{convertApiUrl(permission.related[permission.summary_fields.resource_type])}}',
|
ngClick: "redirectToResource(permission)",
|
||||||
nosort: true
|
nosort: true
|
||||||
},
|
},
|
||||||
type: {
|
type: {
|
||||||
|
|||||||
@@ -125,11 +125,28 @@ export default ['$scope', '$rootScope', '$stateParams', 'UserForm', 'Rest',
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$scope.convertApiUrl = function(str) {
|
$scope.redirectToResource = function(resource) {
|
||||||
if (str) {
|
let type = resource.summary_fields.resource_type.replace(/ /g , "_");
|
||||||
return str.replace(/api\/v\d+/, "#");
|
var id = resource.related[type].split("/")[4];
|
||||||
} else {
|
switch (type) {
|
||||||
return null;
|
case 'organization':
|
||||||
|
$state.go('organizations.edit', { "organization_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'credential':
|
||||||
|
$state.go('credentials.edit', { "credential_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'project':
|
||||||
|
$state.go('projects.edit', { "project_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'inventory':
|
||||||
|
$state.go('inventories.edit', { "inventory_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'job_template':
|
||||||
|
$state.go('templates.editJobTemplate', { "job_template_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
|
case 'workflow_job_template':
|
||||||
|
$state.go('templates.editWorkflowJobTemplate', { "workflow_job_template_id": id }, { reload: true });
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -190,7 +190,7 @@ export default ['i18n', function(i18n) {
|
|||||||
name: {
|
name: {
|
||||||
label: i18n._('Name'),
|
label: i18n._('Name'),
|
||||||
ngBind: 'permission.summary_fields.resource_name',
|
ngBind: 'permission.summary_fields.resource_name',
|
||||||
linkTo: '{{convertApiUrl(permission.related[permission.summary_fields.resource_type])}}',
|
ngClick: "redirectToResource(permission)",
|
||||||
nosort: true
|
nosort: true
|
||||||
},
|
},
|
||||||
type: {
|
type: {
|
||||||
|
|||||||
Reference in New Issue
Block a user