Merge branch 'user-group-permissions' of https://github.com/umbraco/Umbraco-CMS into user-group-permissions
This commit is contained in:
@@ -39,7 +39,7 @@
|
||||
</div>
|
||||
|
||||
<div class="umb-user-group-preview__actions">
|
||||
<a class="umb-user-group-preview__action" title="Edit" href="" ng-if="allowRemove" ng-click="onEdit()">Edit</i></a>
|
||||
<a class="umb-user-group-preview__action" title="Edit" href="" ng-if="allowEdit" ng-click="onEdit()">Edit</i></a>
|
||||
<a class="umb-user-group-preview__action umb-user-group-preview__action--red" title="Remove" href="" ng-if="allowRemove" ng-click="onRemove()">Remove</i></a>
|
||||
<div>
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="test-group">
|
||||
<div class="test-group" ng-if="!vm.user.isCurrentUser">
|
||||
<div class="test-group-title">Permissions</div>
|
||||
<div class="test-group-content block-form">
|
||||
|
||||
@@ -243,7 +243,7 @@
|
||||
|
||||
<div style="margin-top: 20px;">
|
||||
<div style="margin-bottom: 10px;">
|
||||
<umb-button ng-if="vm.user.userDisplayState.alias === 'active'"
|
||||
<umb-button ng-if="vm.user.userDisplayState.key === 'Active' && !vm.user.isCurrentUser"
|
||||
type="button"
|
||||
button-style="[danger,block]"
|
||||
action="vm.disableUser()"
|
||||
@@ -254,7 +254,7 @@
|
||||
</div>
|
||||
|
||||
<div style="margin-bottom: 10px;">
|
||||
<umb-button ng-if="vm.user.userDisplayState.alias === 'disabled' || vm.user.userDisplayState.alias === 'lockedOut'"
|
||||
<umb-button ng-if="vm.user.userDisplayState.key === 'Disabled' && !vm.user.isCurrentUser || vm.user.userDisplayState.key === 'LockedOut' && !vm.user.isCurrentUser"
|
||||
type="button"
|
||||
button-style="[success,block]"
|
||||
state="vm.enableUserButtonState"
|
||||
|
||||
@@ -123,20 +123,24 @@
|
||||
|
||||
function selectUser(user, selection, event) {
|
||||
|
||||
if (user.selected) {
|
||||
var index = selection.indexOf(user.id);
|
||||
selection.splice(index, 1);
|
||||
user.selected = false;
|
||||
} else {
|
||||
user.selected = true;
|
||||
vm.selection.push(user.id);
|
||||
}
|
||||
|
||||
setBulkActions(vm.users);
|
||||
// prevent the current user to be selected
|
||||
if(!user.isCurrentUser) {
|
||||
|
||||
if(event){
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
if (user.selected) {
|
||||
var index = selection.indexOf(user.id);
|
||||
selection.splice(index, 1);
|
||||
user.selected = false;
|
||||
} else {
|
||||
user.selected = true;
|
||||
vm.selection.push(user.id);
|
||||
}
|
||||
|
||||
setBulkActions(vm.users);
|
||||
|
||||
if(event){
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -252,15 +256,24 @@
|
||||
vm.selection = [];
|
||||
// select all users
|
||||
angular.forEach(vm.users, function (user) {
|
||||
user.selected = true;
|
||||
vm.selection.push(user.id);
|
||||
// prevent the current user to be selected
|
||||
if(!user.isCurrentUser) {
|
||||
user.selected = true;
|
||||
vm.selection.push(user.id);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function areAllSelected() {
|
||||
if (vm.selection.length === vm.users.length) {
|
||||
return true;
|
||||
// we need to check if the current user is part of the selection and
|
||||
// subtract the user from the total selection to find out if all users are selected
|
||||
var includesCurrentUser = vm.users.some(function (user) { return user.isCurrentUser === true; });
|
||||
|
||||
if(includesCurrentUser) {
|
||||
if (vm.selection.length === vm.users.length - 1) { return true;}
|
||||
} else {
|
||||
if (vm.selection.length === vm.users.length) { return true;}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -426,15 +439,23 @@
|
||||
return;
|
||||
}
|
||||
|
||||
if(user.userDisplayState.key === "Disabled") {
|
||||
// if the current user is selected prevent any bulk actions with the user included
|
||||
if(user.isCurrentUser) {
|
||||
vm.allowDisableUser = false;
|
||||
vm.allowEnableUser = false;
|
||||
vm.allowSetUserGroup = false;
|
||||
return;
|
||||
}
|
||||
|
||||
if(user.userDisplayState && user.userDisplayState.key === "Disabled") {
|
||||
vm.allowDisableUser = false;
|
||||
}
|
||||
|
||||
if(user.userDisplayState.key === "Active") {
|
||||
if(user.userDisplayState && user.userDisplayState.key === "Active") {
|
||||
vm.allowEnableUser = false;
|
||||
}
|
||||
|
||||
if(user.userDisplayState.key === "Invited") {
|
||||
if(user.userDisplayState && user.userDisplayState.key === "Invited") {
|
||||
vm.allowEnableUser = false;
|
||||
}
|
||||
|
||||
|
||||
@@ -178,7 +178,7 @@
|
||||
</umb-avatar>
|
||||
</div>
|
||||
<div class="umb-user-card__checkmark" ng-class="{'umb-user-card__checkmark--visible': user.selected || vm.selection.length > 0 }" ng-click="vm.selectUser(user, vm.selection, $event)">
|
||||
<umb-checkmark checked="user.selected" size="s"></umb-checkmark>
|
||||
<umb-checkmark ng-if="!user.isCurrentUser" checked="user.selected" size="s"></umb-checkmark>
|
||||
</div>
|
||||
<div class="umb-user-card__name" href="">{{user.name}}</div>
|
||||
<div class="umb-user-card__group">
|
||||
@@ -217,12 +217,12 @@
|
||||
<tbody>
|
||||
<tr ng-repeat="user in vm.users" ng-click="vm.clickUser(user)" style="cursor: pointer;" ng-mouseenter="user.hover = true" ng-mouseleave="user.hover = false">
|
||||
<td style="padding-left: 10px;">
|
||||
<div ng-click="vm.selectUser(user, vm.selection, $event)">
|
||||
<umb-checkmark
|
||||
ng-if="vm.selection.length > 0 || user.hover"
|
||||
checked="user.selected"
|
||||
size="xs">
|
||||
</umb-checkmark>
|
||||
<div ng-if="!user.isCurrentUser" ng-click="vm.selectUser(user, vm.selection, $event)">
|
||||
<umb-checkmark
|
||||
ng-if="vm.selection.length > 0 || user.hover"
|
||||
checked="user.selected"
|
||||
size="xs">
|
||||
</umb-checkmark>
|
||||
</div>
|
||||
</td>
|
||||
<td scope="row">
|
||||
|
||||
Reference in New Issue
Block a user