(fix) don't show a dialog on top of a dialog for acl confirmation

This commit is contained in:
Ludovic Marcotte 2015-08-05 20:23:11 -04:00
parent 5e19a889c2
commit 2f122f12b6
2 changed files with 14 additions and 4 deletions

View file

@ -67,7 +67,7 @@
</md-card> </md-card>
</md-dialog-content> </md-dialog-content>
<div class="md-actions"> <div ng-hide="acl.confirmation.showing" class="md-actions">
<md-autocomplete <md-autocomplete
class="md-flex" class="md-flex"
md-input-name="addUser" md-input-name="addUser"
@ -93,6 +93,15 @@
</md-autocomplete> </md-autocomplete>
<md-button ng-click="acl.saveModal()"><var:string label:value="Save"/></md-button> <md-button ng-click="acl.saveModal()"><var:string label:value="Save"/></md-button>
</div> </div>
<div class="md-actions" ng-show="acl.confirmation.showing">
<span>{{acl.confirmation.message}}</span>
<md-button ng-click="acl.selectedUser.$resetRights(true); acl.confirmation.showing = false">
<var:string label:value="Cancel"/>
</md-button>
<md-button class="md-warn" ng-click="acl.confirmation.showing = false">
<var:string label:value="Ok"/>
</md-button>
</div>
</md-dialog> </md-dialog>
</container> </container>

View file

@ -22,6 +22,8 @@
vm.removeUser = removeUser; vm.removeUser = removeUser;
vm.addUser = addUser; vm.addUser = addUser;
vm.selectUser = selectUser; vm.selectUser = selectUser;
vm.confirmation = { showing: false,
message: ''};
function userFilter($query) { function userFilter($query) {
return User.$filter($query, folder.$acl.users); return User.$filter($query, folder.$acl.users);
@ -43,9 +45,8 @@
function confirmChange(user) { function confirmChange(user) {
var confirmation = user.$confirmRights(); var confirmation = user.$confirmRights();
if (confirmation) { if (confirmation) {
Dialog.confirm(l('Warning'), confirmation).catch(function() { vm.confirmation.showing = true;
user.$resetRights(true); vm.confirmation.message = confirmation;
});
} }
} }