sogo/UI/WebServerResources/js/Administration.js.map
2016-01-14 16:10:37 -05:00

1 line
13 KiB
Plaintext

{"version":3,"sources":["Administration/Administration.app.js","Administration/AdministrationAclController.js","Administration/AdministrationController.js"],"names":["configure","$stateProvider","$urlRouterProvider","state","abstract","views","administration","templateUrl","controller","controllerAs","url","module","acl","resolve","stateUser","stateFolder","otherwise","$q","$stateParams","User","user","_","find","$users","uid","userId","angular","isUndefined","$filter","then","users","reject","$folders","$state","decodeUriFilter","AddressBook","Calendar","folder","o","folderId","$$folders","name","type","id","split","pop","owner","displayName","selectedFolder","runBlock","$log","$rootScope","$on","event","toState","toParams","fromState","fromParams","error","go","current","previous","rejection","config","run","$inject","AdministrationAclController","$animate","$mdToast","getTemplate","isDefined","$cards","selectUser","vm","selectedUid","selectedUser","$rights","userFilter","$query","$acl","dry","removeUser","$removeUser","data","status","Dialog","alert","l","addUser","$addUser","userToAdd","searchText","close","save","$saveUsersRights","show","simple","content","position","hideDelay","this","folderType","AdministrationController","encodeUriFilter","filter","i","selectFolder","service"],"mappings":"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","file":"Administration.js","sourcesContent":["/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n/* JavaScript for SOGoAdministration */\n\n(function() {\n 'use strict';\n\n angular.module('SOGo.AdministrationUI', ['ui.router', 'SOGo.Common', 'SOGo.Authentication', 'SOGo.PreferencesUI', 'SOGo.ContactsUI', 'SOGo.SchedulerUI'])\n .config(configure)\n .run(runBlock);\n\n /**\n * @ngInject\n */\n configure.$inject = ['$stateProvider', '$urlRouterProvider'];\n function configure($stateProvider, $urlRouterProvider) {\n $stateProvider\n .state('administration', {\n abstract: true,\n views: {\n administration: {\n templateUrl: 'administration.html',\n controller: 'AdministrationController',\n controllerAs: 'app'\n }\n }\n })\n .state('administration.rights', {\n url: '/rights',\n views: {\n module: {\n templateUrl: 'rights.html'\n }\n }\n })\n .state('administration.rights.edit', {\n url: '/:userId/:folderId/edit',\n views: {\n acl: {\n templateUrl: 'UIxAdministrationAclEditor', // UI/Templates/Administration/UIxAdministrationAclEditor.wox\n controller: 'AdministrationAclController',\n controllerAs: 'acl'\n }\n },\n resolve: {\n stateUser: stateUser,\n stateFolder: stateFolder\n }\n });\n\n // if none of the above states are matched, use this as the fallback\n $urlRouterProvider.otherwise('/rights');\n }\n\n /**\n * @ngInject\n */\n stateUser.$inject = ['$q', '$stateParams', 'User'];\n function stateUser($q, $stateParams, User) {\n var user;\n\n user = _.find(User.$users, function(user) {\n return user.uid == $stateParams.userId;\n });\n\n if (angular.isUndefined(user)) {\n return User.$filter($stateParams.userId).then(function(users) {\n user = _.find(User.$users, function(user) {\n return user.uid == $stateParams.userId;\n });\n if (angular.isUndefined(user)) {\n return $q.reject('User with ID ' + $stateParams.userId + ' not found');\n }\n else {\n // Resolve folders\n return user.$folders().then(function() {\n return user;\n });\n }\n return user;\n });\n }\n\n return user;\n }\n\n /**\n * @ngInject\n */\n stateFolder.$inject = ['$state', '$stateParams', 'decodeUriFilter', 'stateUser', 'AddressBook', 'Calendar'];\n function stateFolder($state, $stateParams, decodeUriFilter, stateUser, AddressBook, Calendar) {\n var folder, o,\n folderId = decodeUriFilter($stateParams.folderId);\n\n folder = _.find(stateUser.$$folders, function(folder) {\n return folder.name == folderId;\n });\n \n if (folder.type == \"Appointment\") {\n o = new Calendar({ id: folder.name.split('/').pop(),\n owner: folder.owner,\n name: folder.displayName });\n } else {\n o = new AddressBook({ id: folder.name.split('/').pop(),\n owner: folder.owner,\n name: folder.displayName });\n }\n\n stateUser.selectedFolder = o.id;\n\n return o;\n }\n\n /**\n * @ngInject\n */\n runBlock.$inject = ['$log', '$rootScope', '$state'];\n function runBlock($log, $rootScope, $state) {\n $rootScope.$on('$stateChangeError', function(event, toState, toParams, fromState, fromParams, error) {\n $log.error(error);\n $state.go('administration.rights');\n });\n $rootScope.$on('$routeChangeError', function(event, current, previous, rejection) {\n $log.error(event, current, previous, rejection);\n });\n }\n\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n/* JavaScript for SOGoAdministration */\n\n(function() {\n 'use strict';\n \n /**\n * @ngInject\n */\n AdministrationAclController.$inject = ['$animate', '$state', '$mdToast', 'stateUser', 'stateFolder', 'User'];\n function AdministrationAclController($animate, $state, $mdToast, stateUser, stateFolder, User) {\n var vm = this;\n\n vm.user = stateUser;\n vm.folder = stateFolder;\n vm.folderType = angular.isDefined(stateFolder.$cards)? 'AddressBook' : 'Calendar';\n vm.selectedUser = null;\n vm.selectedUid = null;\n vm.selectUser = selectUser;\n vm.removeUser = removeUser;\n vm.getTemplate = getTemplate;\n vm.close = close;\n vm.save = save;\n\n vm.userToAdd = '';\n vm.searchText = '';\n vm.userFilter = userFilter;\n vm.addUser = addUser;\n\n stateFolder.$acl.$users(stateFolder.owner).then(function(data) {\n vm.users = data;\n });\n\n function getTemplate() {\n if (angular.isDefined(stateFolder.$cards))\n return '../' + stateFolder.owner + '/Contacts/' + stateFolder.id + '/UIxContactsUserRightsEditor';\n\n return '../' + stateFolder.owner + '/Calendar/' + stateFolder.id + '/UIxCalUserRightsEditor';\n }\n\n function selectUser(user) {\n if (vm.selectedUid == user.uid) {\n vm.selectedUid = null;\n }\n else {\n vm.selectedUid = user.uid;\n vm.selectedUser = user;\n vm.selectedUser.$rights();\n }\n }\n\n function userFilter($query) {\n return User.$filter($query, stateFolder.$acl.users, { dry: true });\n }\n\n function removeUser(user) {\n stateFolder.$acl.$removeUser(user.uid).catch(function(data, status) {\n Dialog.alert(l('Warning'), l('An error occured please try again.'));\n });\n }\n\n function addUser(data) {\n if (data) {\n stateFolder.$acl.$addUser(data, stateFolder.owner).then(function() {\n vm.userToAdd = '';\n vm.searchText = '';\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n }\n\n function close() {\n $state.go('administration.rights').then(function() {\n delete vm.user.selectedFolder;\n vm.user = null;\n });\n }\n\n function save() {\n stateFolder.$acl.$saveUsersRights(stateFolder.owner).then(function() {\n $mdToast.show(\n $mdToast.simple()\n .content(l('ACLs saved'))\n .position('top right')\n .hideDelay(3000)\n );\n }, function(data, status) {\n Dialog.alert(l('Warning'), l('An error occured please try again.'));\n });\n }\n }\n\n angular\n .module('SOGo.AdministrationUI')\n .controller('AdministrationAclController', AdministrationAclController);\n\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n/* JavaScript for SOGoAdministration */\n\n(function() {\n 'use strict';\n \n /**\n * @ngInject\n */\n AdministrationController.$inject = ['$state', '$mdToast', 'Dialog', 'encodeUriFilter', 'User'];\n function AdministrationController($state, $mdToast, Dialog, encodeUriFilter, User) {\n var vm = this;\n\n vm.service = User;\n\n vm.selectedUser = null;\n vm.users = User.$users;\n\n vm.go = go;\n vm.filter = filter;\n vm.selectUser = selectUser;\n vm.selectFolder = selectFolder;\n\n function go(module) {\n $state.go('administration.' + module);\n }\n\n function filter(searchText) {\n User.$filter(searchText);\n }\n\n function selectUser(i) {\n if (vm.selectedUser == vm.users[i]) {\n vm.selectedUser = null;\n }\n else {\n // Fetch folders of specific type for selected user\n vm.users[i].$folders().then(function() {\n vm.selectedUser = vm.users[i];\n });\n }\n }\n\n function selectFolder(folder) {\n $state.go('administration.rights.edit', {userId: vm.selectedUser.uid, folderId: encodeUriFilter(folder.name)});\n }\n\n }\n\n angular\n .module('SOGo.AdministrationUI')\n .controller('AdministrationController', AdministrationController);\n\n})();\n"]}