-
-
+
+
+
+
+
diff --git a/UI/WebServerResources/js/Contacts/addressbook-model.js b/UI/WebServerResources/js/Contacts/addressbook-model.js
index b8eff57cc..db88bc1a1 100644
--- a/UI/WebServerResources/js/Contacts/addressbook-model.js
+++ b/UI/WebServerResources/js/Contacts/addressbook-model.js
@@ -38,7 +38,8 @@
$timeout: $timeout,
$$resource: new Resource(Settings.baseURL),
$Card: Card,
- $$Acl: Acl
+ $$Acl: Acl,
+ activeUser: Settings.activeUser
});
return AddressBook; // return constructor
@@ -77,6 +78,9 @@
// Instanciate AddressBook objects
angular.forEach(this.$addressbooks, function(o, i) {
_this.$addressbooks[i] = new AddressBook(o);
+ // Add 'isOwned' attribute based on active user (TODO: add it server-side?)
+ _this.$addressbooks[i].isOwned = _this.activeUser.isSuperUser
+ || _this.$addressbooks[i].owner == _this.activeUser.login;
});
}
return this.$addressbooks;
diff --git a/UI/WebServerResources/js/ContactsUI.js b/UI/WebServerResources/js/ContactsUI.js
index 17614771e..e48bba450 100644
--- a/UI/WebServerResources/js/ContactsUI.js
+++ b/UI/WebServerResources/js/ContactsUI.js
@@ -9,7 +9,13 @@
angular.module('SOGo.ContactsUI', ['ngSanitize', 'ui.router', 'mm.foundation', 'SOGo.Common', 'SOGo.UIDesktop'])
.constant('sgSettings', {
- baseURL: ApplicationBaseURL
+ baseURL: ApplicationBaseURL,
+ activeUser: {
+ login: UserLogin,
+ language: UserLanguage,
+ folderURL: UserFolderURL,
+ isSuperUser: IsSuperUser
+ }
})
.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) {
@@ -181,7 +187,7 @@
};
$scope.share = function() {
var modal = $modal.open({
- templateUrl: 'addressbookSharing.html',
+ templateUrl: stateAddressbook.id + '/aclsTemplate',
resolve: {
modalUsers: function() {
return stateAddressbook.$acl.$users();