Update user list when acl is changed
Signed-off-by: Julius Härtl <jus@bitgrid.net>
This commit is contained in:
@@ -141,7 +141,11 @@ app.factory('BoardService', function (ApiService, $http, $q) {
|
|||||||
board.acl = {};
|
board.acl = {};
|
||||||
}
|
}
|
||||||
board.acl[response.data.id] = response.data;
|
board.acl[response.data.id] = response.data;
|
||||||
|
if (response.data.type === OC.Share.SHARE_TYPE_USER) {
|
||||||
self._updateUsers();
|
self._updateUsers();
|
||||||
|
} else {
|
||||||
|
self.fetchOne(response.data.boardId);
|
||||||
|
}
|
||||||
deferred.resolve(response.data);
|
deferred.resolve(response.data);
|
||||||
}, function (error) {
|
}, function (error) {
|
||||||
deferred.reject('Error creating ACL ' + _acl);
|
deferred.reject('Error creating ACL ' + _acl);
|
||||||
@@ -156,7 +160,11 @@ app.factory('BoardService', function (ApiService, $http, $q) {
|
|||||||
var self = this;
|
var self = this;
|
||||||
$http.delete(this.baseUrl + '/' + acl.boardId + '/acl/' + acl.id).then(function (response) {
|
$http.delete(this.baseUrl + '/' + acl.boardId + '/acl/' + acl.id).then(function (response) {
|
||||||
delete board.acl[response.data.id];
|
delete board.acl[response.data.id];
|
||||||
|
if (response.data.type === OC.Share.SHARE_TYPE_USER) {
|
||||||
self._updateUsers();
|
self._updateUsers();
|
||||||
|
} else {
|
||||||
|
self.fetchOne(response.data.boardId);
|
||||||
|
}
|
||||||
deferred.resolve(response.data);
|
deferred.resolve(response.data);
|
||||||
}, function (error) {
|
}, function (error) {
|
||||||
deferred.reject('Error deleting ACL ' + acl.id);
|
deferred.reject('Error deleting ACL ' + acl.id);
|
||||||
@@ -172,7 +180,11 @@ app.factory('BoardService', function (ApiService, $http, $q) {
|
|||||||
var _acl = acl;
|
var _acl = acl;
|
||||||
$http.put(this.baseUrl + '/' + acl.boardId + '/acl', _acl).then(function (response) {
|
$http.put(this.baseUrl + '/' + acl.boardId + '/acl', _acl).then(function (response) {
|
||||||
board.acl[_acl.id] = response.data;
|
board.acl[_acl.id] = response.data;
|
||||||
|
if (response.data.type === OC.Share.SHARE_TYPE_USER) {
|
||||||
self._updateUsers();
|
self._updateUsers();
|
||||||
|
} else {
|
||||||
|
self.fetchOne(response.data.boardId);
|
||||||
|
}
|
||||||
deferred.resolve(response.data);
|
deferred.resolve(response.data);
|
||||||
}, function (error) {
|
}, function (error) {
|
||||||
deferred.reject('Error updating ACL ' + _acl);
|
deferred.reject('Error updating ACL ' + _acl);
|
||||||
@@ -185,20 +197,21 @@ app.factory('BoardService', function (ApiService, $http, $q) {
|
|||||||
if (!this.getCurrent() || !this.getCurrent().acl) {
|
if (!this.getCurrent() || !this.getCurrent().acl) {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
var result = [this.getCurrent().owner];
|
var result = [this.getCurrent().owner];
|
||||||
angular.forEach(this.getCurrent().acl, function(value, key) {
|
angular.forEach(this.getCurrent().acl, function(value, key) {
|
||||||
if (value.type === OC.Share.SHARE_TYPE_USER) {
|
if (value.type === OC.Share.SHARE_TYPE_USER) {
|
||||||
result.push(value.participant);
|
result.push(value.participant);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.getCurrent()._users = result;
|
this.getCurrent().users = result;
|
||||||
};
|
};
|
||||||
|
|
||||||
BoardService.prototype.getUsers = function () {
|
BoardService.prototype.getUsers = function () {
|
||||||
if (this.getCurrent() && !this.getCurrent()._users) {
|
if (this.getCurrent() && !this.getCurrent().users) {
|
||||||
this._updateUsers();
|
this._updateUsers();
|
||||||
}
|
}
|
||||||
return this.getCurrent()._users;
|
return this.getCurrent().users;
|
||||||
};
|
};
|
||||||
|
|
||||||
BoardService.prototype.canRead = function () {
|
BoardService.prototype.canRead = function () {
|
||||||
|
|||||||
Reference in New Issue
Block a user