",' ',' error_outline'," "+l("An error occured while importing contacts.")+"","
",""].join(""),position:"top right",hideDelay:3e3})}}),s.close=function(){t.hide()}}a.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxContactsImportDialog",controller:o,controllerAs:"$CardsImportDialogController",locals:{folder:t}}),o.$inject=["scope","$mdDialog","folder"]},y.showLinks=function(t){function o(e,t){this.addressbook=t,this.close=function(){e.hide()}}(t.urls?e.when():$.$reloadAll()).then(function(){a.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:t.id+"/links",controller:o,controllerAs:"links",locals:{addressbook:t}})}),o.$inject=["$mdDialog","addressbook"]},y.showProperties=function(e){function t(e,t,o){var r=this;r.addressbook=new $(o.$omit()),r.saveProperties=function(){r.addressbook.$save().then(function(){o.init(r.addressbook.$omit()),t.hide()})},r.close=function(){t.cancel()}}a.show({templateUrl:e.id+"/properties",controller:t,controllerAs:"properties",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcAddressBook:e}}).catch(function(){}),t.$inject=["$scope","$mdDialog","srcAddressBook"]},y.share=function(e){e.$acl.$users().then(function(){a.show({templateUrl:e.id+"/UIxAclEditor",controller:"AclController",controllerAs:"acl",clickOutsideToClose:!0,escapeToClose:!0,locals:{usersWithACL:e.$acl.users,User:C,folder:e}})})},y.subscribeToFolder=function(e){console.debug("subscribeToFolder "+e.owner+e.name),$.$subscribe(e.owner,e.name).then(function(e){c.show(c.simple().content(l("Successfully subscribed to address book")).position("top right").hideDelay(3e3))})},y.isDroppableFolder=function(e,t){return t.id!=e.id&&(t.isOwned||t.acls.objectCreator)},y.dragSelectedCards=function(e,o,r){var s,d,n,a,i,u,f;s=o.id,i=!1,0===(d=e.$selectedCards()).length&&(d=[e.$selectedCard()]),(n=_.filter(d,function(e){return e.$isCard()})).length!=d.length&&c.show(c.simple().content(l("Lists can't be moved or copied.")).position("top right").hideDelay(2e3)),n.length&&("copy"==r?(u=e.$copyCards(n,s),f=l("%{0} card(s) copied",n.length)):(u=e.$moveCards(n,s),f=l("%{0} card(s) moved",n.length),a=_.map(n,"id"),i=e.selectedCard&&a.indexOf(e.selectedCard)>=0),u.then(function(){i&&t.go("app.addressbook"),c.show(c.simple().content(f).position("top right").hideDelay(2e3))}))},function(e){_.forEach(["backspace","delete"],function(t){e.push(h.createHotkey({key:t,description:l("Delete selected card or address book"),callback:function(){$.selectedFolder&&!$.selectedFolder.hasSelectedCard()&&w()}}))}),_.forEach(e,function(e){h.registerHotkey(e)})}(F),o.$on("$destroy",function(){_.forEach(F,function(e){h.deregisterHotkey(e)})})}e.$inject=["$q","$state","$scope","$rootScope","$stateParams","$timeout","$window","$mdDialog","$mdToast","$mdMedia","$mdSidenav","FileUploader","sgConstant","sgHotkeys","sgFocus","Card","AddressBook","Dialog","sgSettings","User","stateAddressbooks"],angular.module("SOGo.ContactsUI").controller("AddressBooksController",e)}(),function(){"use strict";function e(e,t,o,r,s,d,n,a,c,i,u,f,p){function h(){u.go("app.addressbook").then(function(){g.card=null,delete d.selectedFolder.selectedCard})}function m(){var e=p;a.confirm(l("Warning"),l("Are you sure you want to delete the card of %{0}?","