mirror of
https://github.com/goharbor/harbor
synced 2025-04-27 02:43:17 +00:00
73 lines
1.9 KiB
JavaScript
73 lines
1.9 KiB
JavaScript
(function() {
|
|
|
|
'use strict';
|
|
|
|
angular
|
|
.module('harbor.project.member')
|
|
.directive('editProjectMember', editProjectMember);
|
|
|
|
EditProjectMemberController.$inject = ['$scope', 'roles', 'getRole','EditProjectMemberService', 'DeleteProjectMemberService'];
|
|
|
|
function EditProjectMemberController($scope, roles, getRole, EditProjectMemberService, DeleteProjectMemberService) {
|
|
var vm = this;
|
|
|
|
|
|
$scope.$on('changedRoleId', function(e, val) {
|
|
vm.roleId = val;
|
|
});
|
|
|
|
vm.roles = roles();
|
|
vm.editMode = false;
|
|
vm.updateProjectMember = updateProjectMember;
|
|
vm.deleteProjectMember = deleteProjectMember;
|
|
|
|
function updateProjectMember(e) {
|
|
if(vm.editMode) {
|
|
vm.editMode = false;
|
|
|
|
EditProjectMemberService(e.projectId, e.userId, e.roleId)
|
|
.success(editProjectMemberComplete)
|
|
.error(editProjectMemberFailed);
|
|
|
|
}else {
|
|
vm.editMode = true;
|
|
}
|
|
}
|
|
|
|
function deleteProjectMember(e) {
|
|
|
|
DeleteProjectMemberService(e.projectId, e.userId)
|
|
.success(editProjectMemberComplete)
|
|
.error(editProjectMemberFailed);
|
|
vm.reload();
|
|
}
|
|
|
|
function editProjectMemberComplete(data, status, headers) {
|
|
console.log('editProjectMemberComplete: ' + status);
|
|
}
|
|
|
|
function editProjectMemberFailed(e) {
|
|
console.log('editProjectMemberFailed:' + e);
|
|
}
|
|
|
|
}
|
|
|
|
function editProjectMember() {
|
|
var directive = {
|
|
'restrict': 'A',
|
|
'templateUrl': '/static/ng/resources/js/components/project-member/edit-project-member.directive.html',
|
|
'scope': {
|
|
'username': '=',
|
|
'userId': '=',
|
|
'roleName': '=',
|
|
'projectId': '=',
|
|
'reload': '&'
|
|
},
|
|
'controller': EditProjectMemberController,
|
|
'controllerAs': 'vm',
|
|
'bindToController': true
|
|
};
|
|
return directive;
|
|
}
|
|
|
|
})(); |