diff --git a/UI/WebServerResources/js/Scheduler.services.js b/UI/WebServerResources/js/Scheduler.services.js index f35f654ba..24ceff264 100644 --- a/UI/WebServerResources/js/Scheduler.services.js +++ b/UI/WebServerResources/js/Scheduler.services.js @@ -1,2 +1,2 @@ -!function(){"use strict";function d(e){this.component=e,this.component.attendees&&_.forEach(this.component.attendees,function(e){e.image=d.$gravatar(e.email,32)}),this.workDaysOnly=!0,this.slotStartTimeLimit=new Date,this.slotStartTimeLimit.setMinutes(0),this.slotStartTimeLimit.setHours(d.dayStartHour),this.slotEndTimeLimit=new Date,this.slotEndTimeLimit.setMinutes(0),this.slotEndTimeLimit.setHours(d.dayEndHour),this.$days=[],this.$futureFreebusyData={},this.updateFreeBusyCoverage(),this.updateFreeBusy(),0==this.$days.length&&this.getDays()}d.$factory=["$q","$timeout","$log","sgSettings","Attendees_ROLES","Preferences","User","Card","Gravatar","Resource",function(e,t,n,i,a,o,r,s,c,l){return angular.extend(d,{$q:e,$timeout:t,$log:n,$settings:i,$User:r,$Preferences:o,$Card:s,$gravatar:c,$$resource:new l(i.activeUser("folderURL")+"Calendar",i.activeUser()),ROLES:a}),d.dayStartHour=parseInt(o.defaults.SOGoDayStartTime.split(":")[0]),d.dayEndHour=parseInt(o.defaults.SOGoDayEndTime.split(":")[0]),d}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").constant("Attendees_ROLES",{REQ_PARTICIPANT:"req-participant",OPT_PARTICIPANT:"opt-participant",NON_PARTICIPANT:"non-participant",CHAIR:"chair"}).factory("Attendees",d.$factory),d.timeToQuarters=function(e){return 4*e.getHours()+Math.ceil(e.getMinutes()/15)},d.prototype.getLength=function(){return this.component.attendees?this.component.attendees.length:0},d.prototype.initOrganizer=function(e){var t=this,e=e&&e.isSubscription?d.$User.$filter(e.owner).then(function(e){e=e[0];t.component.organizer={uid:e.uid,name:e.cn,email:e.c_email}}):(this.component.organizer||(this.component.organizer={uid:d.$settings.activeUser("login"),name:d.$settings.activeUser("identification"),email:d.$settings.activeUser("email")}),d.$q.when());e.then(function(){t.updateFreeBusyAttendee(t.component.organizer)})},d.prototype.add=function(e,t){var n,i,a=this,o=d.$q.when();return e&&((!this.component.attendees||t&&t.organizerCalendar)&&this.initOrganizer(t?t.organizerCalendar:null),e.$isList({expandable:!0})?o=(i=d.$Card.$find(e.container,e.c_name)).$id().then(function(e){_.forEach(i.refs,function(e){n={name:e.c_cn,email:e.$preferredEmail(t?t.partial:null),role:d.ROLES.REQ_PARTICIPANT,partstat:"needs-action",uid:e.c_uid,$avatarIcon:"person"},_.find(a.component.attendees,function(e){return e.email==n.email})||(n.image=d.$gravatar(n.email,32),a.component.attendees?a.component.attendees.push(n):a.component.attendees=[n],a.updateFreeBusyAttendee(n))})}):(n={uid:e.c_uid,domain:e.c_domain,isMSExchange:e.ismsexchange,isGroup:e.$isList(),isExpandableGroup:!1,isResource:e.isresource,name:e.c_cn,email:e.$$email,role:d.ROLES.REQ_PARTICIPANT,partstat:"needs-action",$avatarIcon:e.$avatarIcon},_.find(this.attendees,function(e){return e.email==n.email})||(e.$isList()&&d.$Preferences.defaults.SOGoLDAPGroupExpansionEnabled&&(o=e.$members().then(function(e){n.members=e,n.isExpandableGroup=!0})),n.image=d.$gravatar(n.email,32),this.component.attendees?_.findIndex(this.component.attendees,{email:n.email})<0&&this.component.attendees.push(n):this.component.attendees=[n],this.updateFreeBusyAttendee(n)))),o},d.prototype.nextRole=function(t){var e=_.values(d.ROLES),n=_.findIndex(e,function(e){return t.role===e});t.role=e[++n%4]},d.prototype.hasAttendee=function(e){var t=_.find(this.component.attendees,function(t){return _.find(e.emails,function(e){return e.value==t.email})});return angular.isDefined(t)},d.prototype.remove=function(t){var e=_.findIndex(this.component.attendees,function(e){return e.email==t.email});-1=this.startLimit;){for(var a,o=0,r=t;0===this.currentEntries[r]&&oe&&this.attachUrls.splice(e,1)},u.prototype.$addDueDate=function(){this.due=new Date,this.due.setMinutes(15*Math.round(this.due.getMinutes()/15)),this.dueDate=this.due.toISOString()},u.prototype.$deleteDueDate=function(){delete this.due,delete this.dueDate},u.prototype.$addStartDate=function(){this.start=new Date,this.start.setMinutes(15*Math.round(this.start.getMinutes()/15))},u.prototype.$deleteStartDate=function(){delete this.start,delete this.startDate},u.prototype.$addRecurrenceDate=function(){var e=new Date;e.setMinutes(15*Math.round(e.getMinutes()/15)),angular.isUndefined(this.repeat.dates)&&(this.repeat={frequency:"custom",dates:[]}),this.repeat.dates.push(e)},u.prototype.$deleteRecurrenceDate=function(e){-1e&&this.repeat.dates.splice(e,1)},u.prototype.$reset=function(){var n=this;angular.forEach(this,function(e,t){"constructor"!=t&&"$"!=t[0]&&delete n[t]}),this.init(this.$shadowData),this.$shadowData=this.$omit()},u.prototype.$reply=function(){var e,t=this,n=[this.pid,this.id];return this.occurrenceId&&n.push(this.occurrenceId),e={reply:this.reply,delegatedTo:this.delegatedTo,alarm:this.$hasAlarm?this.alarm:{},classification:this.classification},u.$$resource.save(n,e,{action:"rsvpAppointment"}).then(function(e){return t.$shadowData=t.$omit(),e})},u.prototype.$adjust=function(e){var t=[this.pid,this.id];return _.every(_.values(e),function(e){return 0===e})?u.$q.when():(this.occurrenceId&&t.push(this.occurrenceId),u.$log.debug("adjust "+t.join("/")+" "+JSON.stringify(e)),u.$$resource.save(t,e,{action:"adjust"}))},u.prototype.$save=function(e){var t,n,i=this,a=this.$omit(),o=u.$Preferences.$mdDateLocaleProvider;return a.startDate=a.start?a.start.format(o,"%Y-%m-%d"):"",a.startTime=a.start?a.start.format(o,"%H:%M"):"",a.endDate=a.end?a.end.format(o,"%Y-%m-%d"):"",a.endTime=a.end?a.end.format(o,"%H:%M"):"",a.dueDate=a.due?a.due.format(o,"%Y-%m-%d"):"",a.dueTime=a.due?a.due.format(o,"%H:%M"):"",a.completedDate=a.completed?a.completed.format(o,"%Y-%m-%d"):"",this.hasCustomRepeat()?"monthly"==this.repeat.frequency&&this.repeat.month.type&&"byday"==this.repeat.month.type&&"relative"!=this.repeat.month.day||"yearly"==this.repeat.frequency&&this.repeat.year.byday?(delete a.repeat.monthdays,a.repeat.days=[{day:this.repeat.month.day,occurrence:this.repeat.month.occurrence.toString()}]):"monthly"!=this.repeat.frequency&&"yearly"!=this.repeat.frequency||!this.repeat.month.type?"custom"==this.repeat.frequency&&this.repeat.dates&&_.forEach(a.repeat.dates,function(e,t,n){n[t]={date:e.format(o,"%Y-%m-%d"),time:e.format(o,"%H:%M")}}):(delete a.repeat.days,"relative"==this.repeat.month.day&&(a.repeat.monthdays=[this.repeat.month.occurrence])):this.repeat.frequency&&"never"!=this.repeat.frequency&&(a.repeat={frequency:this.repeat.frequency}),a.startDate&&this.repeat.frequency&&"never"!=this.repeat.frequency?"until"==this.repeat.end&&this.repeat.until?a.repeat.until=this.repeat.until.stringWithSeparator("-"):"count"==this.repeat.end&&this.repeat.count?a.repeat.count=this.repeat.count:(delete a.repeat.until,delete a.repeat.count):delete a.repeat,"not-specified"==this.status?delete a.status:"completed"!=this.status&&delete a.completedDate,(a.startDate||a.dueDate)&&this.$hasAlarm?!this.alarm.action||"email"!=this.alarm.action||this.attendees&&0',' ',"

"+l("editRepeatingItem")+"

","
"," ",' '+l("button_thisOccurrenceOnly")+"",' '+l("button_allOccurrences")+""," ",""].join(""),controller:r}).then(function(){d.$emit("calendars:list")},function(){}).finally(function(){u(function(){g.$resetGhost()})})),r.$inject=["$scope","$mdDialog","component","params"],c.$inject=["$scope","$mdDialog","component","params","conflictError"]}s={title:"Title",location:"Location",calendarName:"Calendar",start:"Start",priority:"Priority",category:"Category",status:"Status",events:{end:"End"},tasks:{end:"Due Date"}},c.component=g,c.componentType="events",c.selectedList=0,c.selectComponentType=$,c.unselectComponents=function(){_.forEach(g["$"+c.componentType],function(e){e.selected=!1}),c.mode.multiple=0},c.selectAll=function(){_.forEach(g["$"+c.componentType],function(e){e.selected=!0}),c.mode.multiple=g["$"+c.componentType].length},c.searchMode=v,c.toggleComponentSelection=function(e,t){t.selected=!t.selected,c.mode.multiple+=t.selected?1:-1,e.preventDefault(),e.stopPropagation()},c.confirmDeleteSelectedComponents=function(){o.confirm(l("Warning"),l("Are you sure you want to delete the selected components?"),{ok:l("Delete")}).then(function(){var e=_.filter(g["$"+c.componentType],function(e){return e.selected});f.$deleteComponents(e).then(function(){c.mode.multiple=0,d.$emit("calendars:list")})})},c.openEvent=function(e,t){C(e,t,"appointment")},c.openTask=function(e,t){C(e,t,"task")},c.newComponent=b,c.filter=function(e){{if(!e)return g["$query"+c.componentType.capitalize()].filterpopup;g.$filter(c.componentType,{filterpopup:e})}},c.filteredBy=function(e){return g["$query"+c.componentType.capitalize()].filterpopup==e},c.sort=function(e){{var t;{if(!e)return t=g["$query"+c.componentType.capitalize()].sort,s[t]||s[c.componentType][t];g.$filter(c.componentType,{sort:e})}}},c.sortedBy=function(e){return g["$query"+c.componentType.capitalize()].sort==e},c.reload=function(){g.$loaded=g.STATUS.LOADING,f.reloadWebCalendars().finally(function(){d.$emit("calendars:list")})},c.cancelSearch=function(){c.mode.search=!1,g.$filter(c.componentType,{value:""})},c.mode={search:!1,multiple:0},this.$onInit=function(){var e;(e=y).push(n.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:v})),e.push(n.createHotkey({key:l("hotkey_create_event"),description:l("Create a new event"),callback:b,args:"appointment"})),e.push(n.createHotkey({key:l("hotkey_create_task"),description:l("Create a new task"),callback:b,args:"task"})),_.forEach(e,function(e){n.registerHotkey(e)}),r="events","tasksListView"==p.settings.Calendar.SelectedList&&(c.selectedList=1,r="tasks"),$(r,{reload:!0}),d.$on("calendars:list",function(){g.$filter(c.componentType,{reload:!0})}),d.$on("calendar:dragend",D),t.$on("$destroy",function(){_.forEach(y,function(e){n.deregisterHotkey(e)})})},this.ascending=function(){return g["$query"+c.componentType.capitalize()].asc}}e.$inject=["$rootScope","$scope","$q","$timeout","$state","$mdDialog","sgHotkeys","sgFocus","Dialog","Preferences","CalendarSettings","Calendar","Component"],angular.module("SOGo.SchedulerUI").controller("CalendarListController",e)}(),function(){"use strict";function e(o,e,t,i,n,r,a,s,c,d,u,h){var p=this;this.activeUser=d.activeUser,this.service=h,this.filter={name:""},this.sortableMode=!1,this.sortableCalendars={scrollableContainer:"#sidenav-content",containment:"md-list",orderChanged:function(){h.saveFoldersOrder(_.flatMap(h.$findAll(),"id"))},accept:function(e,t,n){return e.sortableScope.element[0]==t.element[0]}},this.$onInit=function(){p.categories=_.map(u.defaults.SOGoCalendarCategories,function(e){return{id:e.asCSSIdentifier(),name:e,color:u.defaults.SOGoCalendarCategoriesColors[e]}}),e.$watch(function(){return _.union(_.map(h.$calendars,function(e){return _.pick(e,["id","active","color"])}),_.map(h.$subscriptions,function(e){return _.pick(e,["id","active","color"])}),_.map(h.$webcalendars,function(e){return _.pick(e,["id","active","color"])}))},function(e,n){var t=_.intersectionBy(e,n,"id"),i=_.map(_.filter(t,function(e){var t=_.find(n,{id:e.id});return!_.isEqual(e,t)}),"id"),a=h.$q.when();0"}))},this.newMessageWithRecipient=function(e,t,n){m(e,[t+" <"+n+">"])},this.edit=function(){var t="vevent"==this.component.component?"Appointment":"Task";s.hide().then(function(){var e="UIx"+t+"EditorTemplate";s.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:e,controller:"ComponentEditorController",controllerAs:"editor",locals:{stateComponent:p.component}})})},this.editAllOccurrences=function(){(h=i.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){p.component=h,p.edit()})},this.reply=function(e){(e||this.component).$reply().then(function(){t.$emit("calendars:list"),n.getAlarms(),s.hide()})},this.replyAllOccurrences=function(){(h=i.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){h.reply=p.component.reply,h.delegatedTo=p.component.delegatedTo,h.$hasAlarm=p.component.$hasAlarm,h.classification=p.component.classification,h.alarm=p.component.alarm,p.reply(h)})},this.deleteOccurrence=function(){this.component.remove(!0).then(function(){t.$emit("calendars:list"),s.hide()})},this.deleteAllOccurrences=function(){this.component.remove().then(function(){t.$emit("calendars:list"),s.hide()})},this.toggleRawSource=function(n){i.$$resource.post(this.component.pid+"/"+this.component.id,"raw").then(function(e){function t(e,t,n){e.data=n,e.close=function(){t.hide()}}s.hide(),s.show({parent:angular.element(document.body),targetEvent:n,clickOutsideToClose:!0,escapeToClose:!0,template:['',' ','
',"  
"," ",' '+l("Close")+""," ","
"].join(""),controller:t,locals:{data:e}}),t.$inject=["scope","$mdDialog","data"]})},this.copySelectedComponent=function(e){this.component.copyTo(e).then(function(){s.hide(),t.$emit("calendars:list")})},this.moveSelectedComponent=function(e){this.component.moveTo(e).then(function(){s.hide(),t.$emit("calendars:list")})}}function t(n,e,u,t,h,i,a,o,r,s,c,d,p,m,f,g,y,$,v){var C,b,D,w,S=this;function k(){var e;S.attendeesEditor.containerElement||(S.attendeesEditor.containerElement=a[0].querySelector("#freebusy")),e=a[0].querySelector("#freebusy_day_"+S.component.start.getDayString()),S.attendeesEditor.containerElement&&e&&(e=e.offsetLeft-S.attendeesEditor.containerElement.offsetLeft,S.attendeesEditor.containerElement.scrollLeft=e)}function E(e){S.adjustStartTime(),S.adjustEndTime(),S.component.$attendees.findSlot(e).then(function(){S.startTime=new Date(S.component.start.getTime()),S.endTime=new Date(S.component.end.getTime())}).catch(function(e){S.component.start=new Date(S.component.start.getTime()+1),h(k),r.show({template:["",'
',' error_outline'," "+e+"","
","
"].join(""),hideDelay:5e3,position:sgConstant.toastPosition})}).finally(function(){h(k)})}function T(){_.has(S.component,"$attendees")&&(S.component.$attendees.updateFreeBusyCoverage(),S.component.$attendees.updateFreeBusy(),h(k))}this.$onInit=function(){this.service=p,this.component=v,this.categories={},this.showRecurrenceEditor=this.component.$hasCustomRepeat,this.showAttendeesEditor=this.component.attendees&&this.component.attendees.length,"appointment"==this.component.type&&(this.component.initAttendees(),this.attendeeConflictError=!1,this.attendeesEditor={days:this.component.$attendees.$days,hours:function(){for(var e=[],t=0;t<=23;t++)e.push(t.toString());return e}(),containerElement:a[0].querySelector("#freebusy")}),this.component.start&&(C=new Date(this.component.start.getTime()),this.startTime=new Date(this.component.start.getTime())),this.component.end&&(b=new Date(this.component.end.getTime()),this.endTime=new Date(this.component.end.getTime())),this.component.due&&(new Date(this.component.due.getTime()),this.dueTime=new Date(this.component.due.getTime())),this.component.attendees&&h(k),D=parseInt($.defaults.SOGoDayStartTime),w=parseInt($.defaults.SOGoDayEndTime)},this.addAttachUrl=function(){var e=this.component.addAttachUrl("");s("attachUrl_"+e)},this.toggleRecurrenceEditor=function(){this.showRecurrenceEditor=!this.showRecurrenceEditor,this.component.$hasCustomRepeat=this.showRecurrenceEditor},this.toggleAttendeesEditor=function(){this.showAttendeesEditor=!this.showAttendeesEditor},this.recurrenceMonthDaysAreRequired=function(){return this.component&&"monthly"==this.component.repeat.frequency&&"bymonthday"==this.component.repeat.month.type},this.frequencies=function(){return _.filter(i.repeatFrequencies,function(e){return"custom"!=e[0]||"custom"==S.component.repeat.frequency})},this.changeFrequency=function(){"custom"==this.component.repeat.frequency&&(this.showRecurrenceEditor=!0)},this.changeCalendar=function(){this.component.attendees&&0? *"),"");return S.showAttendeesEditor|=a,S.searchText="",S.cardFilter(t).then(function(e){return e.length?e[0]:new y({c_cn:_.trim(n,' "'),emails:[{value:t}]})}).catch(function(e){return new y({c_cn:_.trim(n,' "'),emails:[{value:t}]})})}function d(e){if(!S.component.$attendees.hasAttendee(e))return S.component.$attendees.add(e,r)}if(t&&(r.partial=t),angular.isString(e)){for(i="",n=0;n",'
','
",'
',' {{'+t+"block.component.c_priority}}"," {{ "+t+"block.component.summary }}",' ',' repeat',' alarm',' visibility_off',' vpn_key'," ",'
',' place ',"
",'
',"
","
",'
{{ block.startHour }}
','
{{ block.endHour }}
',""].join("")},link:function(e,t,n){var i;_.has(n,"sgCalendarGhost")||(n=90/e.block.siblings,i=e.block.position*n,n=100-(e.block.position+1)*n,t.css("left",i+"%"),t.css("right",n+"%"),e.block.component&&e.block.component.c_isallday||(t.addClass("starts"+e.block.start),t.addClass("lasts"+e.block.length)),e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(e.showCalendarName=a.activeUser.login!==e.block.component.c_owner,t.addClass("bg-folder"+e.block.component.pid),t.addClass("contrast-bdr-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}}e.$inject=["Calendar"],angular.module("SOGo.SchedulerUI").directive("sgCalendarDayBlock",e)}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarDayTable",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";function e(r,e,f,g,s){return{restrict:"A",require:["^sgCalendarDay","^sgCalendarScrollView"],link:function(c,l,e,t){n=l[0],d=t[0],u=t[1],h=-1,l.addClass("sg-event--ghost md-whiteframe-3dp ng-hide");var n,d,u,h,p,i=r.$on("calendar:dragstart",function(){var e,t;c.block=s.$ghost,(t=d.calendarData())&&(h=t.index,e=t.pid,p=c.block.pointerHandler.originalCalendar.index);e=e||c.block.component.pid;(t=c.block.component.blocks[0].userState)&&l.addClass("sg-event--"+t);l.addClass("bg-folder"+e)}),a=r.$on("calendar:drag",function(){var e,t,n,i,a,o,r,s;if(e=!1,g.$view&&g.$view.type==u.type){if(t="multiday-allday"===u.type,n=c.block.component.c_isallday,i=c.block.pointerHandler.currentEventCoordinates.dayNumber,a=c.block.pointerHandler.currentEventCoordinates.start,r=c.block.pointerHandler.currentEventCoordinates.duration,s=f.EventDragDayLength-a,angular.isUndefined(r))return;for(s<(o=r)&&(o=s),-1f.EventDragDayLength&&(o=f.EventDragDayLength),-1','
',' ','
','
","
"," {{ ::component.c_title }}",' ',' repeat',' alarm',' visibility_off',' vpn_key'," ",'
',' access_time ',"
",'
',' place ',"
","
",""].join("")},link:function(e,t,n){e.component.viewable&&t.addClass("md-clickable");e.component.userstate&&t.addClass("sg-event--"+e.component.userstate);t.addClass("bg-folder"+e.component.pid),t.addClass("contrast-bdr-folder"+e.component.pid),0===e.component.c_isopaque&&t.addClass("sg-event--transparent");0===e.component.c_status&&t.addClass("sg-event--cancelled")}}}e.$inject=["CalendarSettings"],angular.module("SOGo.SchedulerUI").directive("sgCalendarListEvent",e)}(),function(){function e(r,e,t,n,s,i,a,o,c,d,u){var h=this;this.$onInit=function(){this.editMode=!1},this.$postLink=function(){this.clickableElement=t.find("p")[0],this.nameElements=this.clickableElement.getElementsByClassName("sg-calendar-name"),this.inputContainer=t.find("md-input-container")[0],this.inputElement=t.find("input")[0],this.moreOptionsButton=_.last(t.find("md-icon")),this.updateCalendarName()},this.updateCalendarName=function(){_.forEach(this.nameElements,function(e){e.innerHTML=h.calendar.name})},this.editFolder=function(e){e.stopPropagation(),e.preventDefault(),this.editMode=!0,this.inputElement.value=this.calendar.name,this.clickableElement.classList.add("ng-hide"),this.inputContainer.classList.remove("ng-hide"),e.srcEvent&&"touchend"==e.srcEvent.type?n(function(){h.inputElement.focus(),h.inputElement.select()},200):(this.inputElement.select(),this.inputElement.focus()),this.panel&&this.panel.close()},this.saveFolder=function(e){this.inputElement.disabled||(0===this.inputElement.value.length&&this.revertEditing(),this.calendar.name=this.inputElement.value,this.inputElement.disabled=!0,this.calendar.$rename().then(function(e){h.editMode=!1,h.inputContainer.classList.add("ng-hide"),h.clickableElement.classList.remove("ng-hide"),h.updateCalendarName()},function(){h.editMode=!0,h.inputElement.value=h.calendar.name,n(function(){h.inputElement.focus(),h.inputElement.select()},200)}).finally(function(){h.inputElement.disabled=!1}))},this.revertEditing=function(){this.editMode=!1,this.clickableElement.classList.remove("ng-hide"),this.inputContainer.classList.add("ng-hide"),this.inputElement.value=this.calendar.name},this.confirmDelete=function(){this.calendar.isSubscription?this.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))}):d.confirm(l("Warning"),l('Are you sure you want to delete the calendar "%{0}"?',this.calendar.name),{ok:l("Delete")}).then(function(){h.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))})})},this.showMenu=function(o){var e=i.newPanelPosition().relativeTo(this.moreOptionsButton).addPanelPosition(i.xPosition.ALIGN_START,i.yPosition.ALIGN_TOPS),t=i.newPanelAnimation().openFrom(this.moreOptionsButton).duration(100).withAnimation(i.animation.FADE),e={attachTo:angular.element(document.body),locals:{itemCtrl:this,calendar:this.calendar,editFolder:angular.bind(this,this.editFolder),confirmDelete:angular.bind(this,this.confirmDelete)},bindToController:!0,controller:n,controllerAs:"$menuCtrl",position:e,animation:t,targetEvent:o,templateUrl:"UIxCalendarMenu",trapFocus:!0,clickOutsideToClose:!0,escapeToClose:!0,focusOnOpen:!0};function n(e,n,i,t){var a=this;this.showOnly=function(){_.forEach(u.$findAll(),function(e){a.calendar.id==e.id?e.active=1:e.active=0})},this.showAll=function(){_.forEach(u.$findAll(),function(e){e.active=1})},this.showProperties=function(){var e=this.calendar.color;function t(e,t,n){var i=this;i.calendar=new u(n.$omit()),i.saveProperties=function(e){e.$valid&&i.calendar.$save().then(function(){n.init(i.calendar.$omit()),t.hide()},function(){e.$setPristine()})},i.close=function(){t.cancel()},e.$watch(function(){return i.calendar.color},function(){n.color=i.calendar.color})}n.show({templateUrl:this.calendar.id+"/properties",controller:t,controllerAs:"properties",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcCalendar:this.calendar}}).catch(function(){a.calendar.color=e}),t.$inject=["$scope","$mdDialog","srcCalendar"]},this.showLinks=function(){function e(e,t){this.calendar=t,this.close=function(){e.hide()}}n.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:this.calendar.id+"/links",controller:e,controllerAs:"links",locals:{calendar:this.calendar}}),e.$inject=["$mdDialog","calendar"]},this.importCalendar=function(){function e(e,o,t){function n(e){e=0===e.type.indexOf("text")||/\.(ics)$/.test(e.name);return e||s.show({template:["",'
',' error_outline'," "+l("Select an iCalendar file (.ics).")+"","
","
"].join(""),position:c.toastPosition,hideDelay:3e3}),e}this.uploader=new i({url:ApplicationBaseURL+[t.id,"import"].join("/"),autoUpload:!0,queueLimit:1,filters:[{name:n,fn:n}],onSuccessItem:function(e,t,n,i){var a;o.hide(),0===t.imported?a=l("No event was imported."):(a=l("A total of %{0} events were imported in the calendar.",t.imported),r.$emit("calendars:list")),s.show(s.simple().textContent(a).position(c.toastPosition).hideDelay(3e3))},onErrorItem:function(e,t,n,i){s.show({template:["",'
',' error_outline'," "+l("An error occurred while importing calendar.")+"","
","
"].join(""),position:c.toastPosition,hideDelay:3e3})}}),this.close=function(){o.hide()}}n.show({parent:angular.element(document.body),targetEvent:o,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxCalendarImportDialog",controller:e,controllerAs:"$CalendarImportDialogController",locals:{folder:this.calendar}}),e.$inject=["scope","$mdDialog","folder"]},this.share=function(){this.calendar.$acl.$users().then(function(){n.show({templateUrl:a.calendar.id+"/UIxAclEditor",controller:"AclController",controllerAs:"acl",clickOutsideToClose:!0,escapeToClose:!0,locals:{usersWithACL:a.calendar.$acl.users,User:t,folder:a.calendar}})})}}i.open(e).then(function(e){(h.panel=e).panelEl.one("click",function(){e.close()})}),n.$inject=["mdPanelRef","$mdDialog","FileUploader","User"]}}e.$inject=["$rootScope","$scope","$element","$timeout","$mdToast","$mdPanel","$mdMedia","$mdSidenav","sgConstant","Dialog","Calendar"],angular.module("SOGo.SchedulerUI").controller("sgCalendarListItemController",e).directive("sgCalendarListItem",function(){return{restrict:"C",scope:{},bindToController:{calendar:"=sgCalendar"},template:['','

',' ',' error',' ',' ',"

",'',' ',"",'drag_handle",'more_vert'].join(""),controller:"sgCalendarListItemController",controllerAs:"$ctrl"}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthDay",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthEvent",function(){return{restrict:"E",scope:{block:"=sgBlock",clickBlock:"&sgClick"},replace:!0,template:function(e,t){t=_.has(t,"sgCalendarGhost")?"":"::";return['
','
",'
',' {{ '+t+"block.component.startHour }}",' {{'+t+"block.component.c_priority}}"," {{ "+t+"block.component.summary }}",' ',' repeat',' alarm',' visibility_off',' vpn_key'," ","
","
"].join("")},link:function(e,t,n){_.has(n,"sgCalendarGhost")||(e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(t.addClass("bg-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}})}(),function(){"use strict";function e(e,n){var t=this,i={portrait:{letter:[8.5,11,"in"],legal:[8.5,14,"in"],a4:[210,297,"mm"]},landscape:{letter:[11,8.5,"in"],legal:[14,8.5,"in"],a4:[297,210,"mm"]}},a={letter:[.4,2.1],legal:[.4,2.1],a4:[10,30]};this.$onInit=function(){e.$watchGroup([function(){return t.pageSize},function(){return t.workingHoursOnly}],angular.bind(this,function(){var e,t=i[this.orientation][this.pageSize];this.units=t[2],this.pageMargin=a[this.pageSize][0]+this.units,this.viewportHeight=(t[1]-2*a[this.pageSize][0]).toString()+this.units,this.hideHoursStart=0,this.hideHoursEnd=24,this.totalHours=24,this.clipTop=0,"month"===this.calendarView?this.viewHeight=(t[1]-3*a[this.pageSize][0]).toString()+this.units:(this.workingHoursOnly&&(n.defaults.SOGoDayEndTime&&(e=n.defaults.SOGoDayEndTime.split(":"),this.hideHoursEnd=parseInt(e[0]),this.totalHours=this.hideHoursEnd),n.defaults.SOGoDayStartTime&&(e=n.defaults.SOGoDayStartTime.split(":"),this.hideHoursStart=parseInt(e[0]),this.totalHours-=this.hideHoursStart)),this.hourHeight=(t[1]-2*a[this.pageSize][0]-a[this.pageSize][1])/this.totalHours,this.clipTop=(this.hourHeight*this.hideHoursStart).toString()+this.units,this.viewHeight=(this.hideHoursEnd*this.hourHeight).toString()+this.units)}))},this.eventsPositions=function(){var e,t=0,n=[];if("month"===this.calendarView)n.push("[ui-view=calendars] .monthView md-grid-list { min-height: "+this.viewHeight+"; }");else for(;t<=96;)t<=4*this.hideHoursStart&&(e=4*this.hideHoursStart-t,n.push("[ui-view=calendars] .sg-event.starts"+t+" .text { margin-top: "+this.hourHeight/4*e+this.units+"; }")),n.push("[ui-view=calendars] .sg-event.starts"+t+" { top: "+this.hourHeight/4*t+this.units+"; }"),n.push("[ui-view=calendars] .sg-event.lasts"+t+" { height: "+this.hourHeight/4*t+this.units+"; }"),t++;return n.join("\n")}}e.$inject=["$scope","Preferences"],angular.module("SOGo.SchedulerUI").directive("sgCalendarPrintStylesheet",function(){return{restrict:"E",scope:{calendarView:"'," @page {"," size: {{ $ctrl.pageSize }} {{ $ctrl.orientation }};"," margin: 0;"," }"," @media print {"," body {"," padding: {{ $ctrl.pageMargin }};"," }"," [ui-view=calendars] .view-list {"," height: {{ $ctrl.viewportHeight }};"," overflow: hidden;"," }"," [ui-view=calendars] .calendarView {"," transform: translateY(-{{ $ctrl.clipTop }});"," height: {{ $ctrl.viewHeight }};"," position: relative;"," overflow: hidden;"," }"," [ui-view=calendars] .allDaysView {"," max-height: {{ $ctrl.hourHeight }}{{ $ctrl.units }} !important;"," }"," [ui-view=calendars] .hours .hour,"," [ui-view=calendars] .days .day .clickableHourCell {"," min-height: {{ $ctrl.hourHeight }}{{ $ctrl.units }};"," max-height: {{ $ctrl.hourHeight }}{{ $ctrl.units }};"," }"," {{ $ctrl.eventsPositions() }}"," }",""].join("\n")}})}(),function(){"use strict";function e(c,l,e,t,d,n,u,h,p){return{restrict:"A",scope:{type:"@sgCalendarScrollView"},controller:i,link:function(e,n,t,i){var a,o,r;function s(e,t){this.$element=e,this.element=e[0],this.type=t,this.quarterHeight=this.getQuarterHeight(),this.scrollStep=6*this.quarterHeight,this.dayNumbers=this.getDayNumbers(),this.maxX=this.getMaxColumns(),this.deregisterDragStart=c.$on("calendar:dragstart",angular.bind(this,this.onDragStart)),this.deregisterDragStop=c.$on("calendar:dragend",angular.bind(this,this.onDragEnd)),this.bindedUpdateCoordinates=angular.bind(this,this.updateCoordinates),this.bindedUpdateFromPointerHandler=angular.bind(this,this.updateFromPointerHandler),this.updateCoordinates(),angular.element(l).on("resize",this.bindedUpdateCoordinates)}a=null,o=e.type,r="multicolumndayview"==n.attr("sg-view"),i.isMultiColumn=r,d(function(){var e,t;a=new s(n,o),"monthly"==o||p.defaults.SOGoDayStartTime&&(t=p.defaults.SOGoDayStartTime.split(":"),e=document.getElementById("hour"+parseInt(t[0])),t=parseInt(t[1])*a.quarterHeight,a.element.scrollTop=e.offsetTop+t);i.quarterHeight=a.quarterHeight}),e.$on("$destroy",function(){a&&a.$destroy()}),s.prototype={$destroy:function(){this.deregisterDragStart(),this.deregisterDragStop(),this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),angular.element(l).off("resize",this.bindedUpdateCoordinates)},onDragStart:function(){this.$element.on("mousemove",this.bindedUpdateFromPointerHandler),this.updateCoordinates(),this.updateFromPointerHandler()},onDragEnd:function(){this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),u.$view=null},getQuarterHeight:function(){var e=null,t=document.getElementById("hour0"),n=document.getElementById("hour23");return e=t&&n?(n.offsetTop-t.offsetTop)/92:e},getDayDimensions:function(e){var t,n,i,a,o=t=n=i=0,r=this.element.getElementsByClassName("day");return 0this.lastScroll+100)&&(this.lastScroll=e,(e=n.y-this.scrollStep)<0?(t=-this.element.scrollTop,this.element.scrollTop+=e=e'," .bg-category{{ ngModel.id }} {"," background-color: {{ ngModel.color }} !important;"," }"," .bdr-category{{ ngModel.id }} {"," border-color: {{ ngModel.color }} !important;"," }",""].join("")}})}(),function(){"use strict";function e(u,h,p,m,f,g,y){return{restrict:"CA",require:"^sgCalendarDay",link:function(o,r,e,s){if(o.block){if(!o.block.component.editable||o.block.userState)return void r.removeClass("sg-draggable-calendar-block");!function(){var e,t,n,i;o.block.length<3||(n=o.block.component,e=o.block.dayIndex,e=_.findIndex(n.blocks,["dayIndex",e]),i=0===e,e=e===n.blocks.length-1,(t=angular.element('
')).addClass("bdr-folder"+n.pid),n.c_isallday||"SG-CALENDAR-MONTH-DAY"===r[0].parentNode.tagName?(i&&(n=angular.element('
').append(t),r.append(n)),e&&(n=angular.element('
').append(t.clone()),r.append(n))):(i&&(n=angular.element('
').append(t),r.append(n)),e&&(i=angular.element('
').append(t.clone()),r.append(i))))}()}function t(e){var t;e.stopPropagation(),e.target.scrollHeight>e.target.clientHeight+1&&(t=(t=e.target.getBoundingClientRect()).left+t.width-18,e.pageX>t)||(t="move-event",o.block&&o.block.component?"dragGrip-top"==e.target.className||"dragGrip-left"==e.target.className?t="change-start":"dragGrip-bottom"!=e.target.className&&"dragGrip-right"!=e.target.className||(t="change-end"):t="change-end",(t=new d(t)).initFromEvent(e),y.$ghost.pointerHandler=t,angular.element(document).one("mouseup",n),angular.element(document).on("mousemove",i))}function i(e){var t=y.$ghost.pointerHandler;h(function(){t.updateFromEvent(e)})}function n(e){var t=o.block,n=y.$ghost.pointerHandler;angular.element(document).off("mousemove",i),n.dragHasStarted&&(u.$emit("calendar:dragend"),n.dragHasStarted=!1),t&&t.component&&_.forEach(t.component.blocks,function(e){e.dragging=!1})}function c(){}function a(e){this.setEventType(e)}function d(e){this.dragMode=e}r.on("mousedown",t),o.$on("$destroy",function(){r.off("mousedown",t),r.off("mousemove",i)}),c.prototype={x:-1,y:-1,getDelta:function(e){var t=new c;return t.x=this.x-e.x,t.y=this.y-e.y,f.$view&&(t.days=f.$view.dayNumbers[this.x]-f.$view.dayNumbers[e.x]),t},getDistance:function(e){e=this.getDelta(e);return Math.sqrt(e.x*e.x+e.y*e.y)},clone:function(){var e=new c;return e.x=this.x,e.y=this.y,e}},a.prototype={dayNumber:-1,weekDay:-1,start:-1,duration:-1,eventType:null,setEventType:function(e){this.eventType=e},initFromBlock:function(e){var i=-1;"monthly"===this.eventType?(this.start=0,this.duration=e.component.blocks.length*g.EventDragDayLength):(this.start=e.component.blocks[0].start,this.duration=_.sumBy(e.component.blocks,function(e){var t=e.dayNumber,n=i<0?0:t-i-1;return i=t,e.length+n*g.EventDragDayLength}))},initFromCalendar:function(e){this.dayNumber=e},getDelta:function(e){var t=new a;return t.dayNumber=this.dayNumber-e.dayNumber,t.start=this.start-e.start,t.duration=this.duration-e.duration,t},_quartersToHM:function(e){var e=15*e,t=Math.floor(e/60),e=e%60;return(t=t<10?"0"+t:t)+":"+(e=e<10?"0"+e:e)},getStartTime:function(){return this._quartersToHM(this.start)},getEndTime:function(){var e=(this.start+this.duration)%g.EventDragDayLength;return this._quartersToHM(e)},clone:function(){var e=new a;return e.dayNumber=this.dayNumber,e.start=this.start,e.duration=this.duration,e}},d.prototype={originalCoordinates:null,currentCoordinates:null,originalViewCoordinates:null,currentViewCoordinates:null,originalEventCoordinates:null,currentEventCoordinates:null,originalCalendar:null,dragHasStarted:!1,getEventViewCoordinates:null,initFromBlock:function(e){this.currentEventCoordinates=new a(this.eventType),this.originalEventCoordinates=new a(this.eventType),this.originalEventCoordinates.initFromBlock(e)},initFromEvent:function(e){this.currentCoordinates=new c,this.updateFromEvent(e),this.originalCoordinates=this.currentCoordinates.clone()},initFromCalendar:function(e){this.originalCalendar=e,this.currentEventCoordinates.initFromCalendar(e.index),this.originalEventCoordinates.initFromCalendar(e.index)},updateFromEvent:function(e){var t,n,i,a;this.currentCoordinates.x=e.pageX,this.currentCoordinates.y=e.pageY,this.dragHasStarted&&f.$view?(e=this.getEventViewCoordinates(f.$view),this.originalViewCoordinates||(this.originalViewCoordinates=this.getEventViewCoordinates(f.$view,this.originalCoordinates),y.$ghost.component.isNew&&(this.setTimeFromQuarters(y.$ghost.component.start,this.originalViewCoordinates.y),p.debug("new event start date "+y.$ghost.component.start))),this.currentViewCoordinates&&e&&e.x==this.currentViewCoordinates.x&&e.y==this.currentViewCoordinates.y||(this.currentViewCoordinates=e,this.originalViewCoordinates&&(e||(this.currentViewCoordinates=this.originalViewCoordinates.clone()),this.updateEventCoordinates()))):this.originalCoordinates&&this.currentCoordinates&&!this.dragHasStarted&&3=g.EventDragDayLength&&(t=Math.floor(this.currentEventCoordinates.start/g.EventDragDayLength),this.currentEventCoordinates.start-=t*g.EventDragDayLength,this.currentEventCoordinates.dayNumber+=t),p.debug("event coordinates "+JSON.stringify(this.currentEventCoordinates)),u.$emit("calendar:drag")},getContainerBasedCoordinates:function(e,t){var t=(t||this.currentCoordinates).getDelta(e.coordinates),n=e.element;return t=t.xn.clientWidth||t.y<0||t.y>n.clientHeight?null:t},prepareWithEventType:function(e){var t={multiday:this.getEventMultiDayViewCoordinates,"multiday-allday":this.getEventMultiDayAllDayViewCoordinates,monthly:this.getEventMonthlyViewCoordinates,unknown:null}[e];this.eventType=e,this.getEventViewCoordinates=t},getEventMultiDayViewCoordinates:function(e,t){var n,i=this.getEventMultiDayAllDayViewCoordinates(e,t);return i&&(n=e.quarterHeight,(t=this.getContainerBasedCoordinates(e,t)).y+=e.element.scrollTop,i.y=Math.floor((t.y-g.EventDragHorizontalOffset)/n),e=g.EventDragDayLength-1,i.y<0?i.y=0:i.y>e&&(i.y=e)),i},getEventMultiDayAllDayViewCoordinates:function(e,t){var n,i,t=this.getContainerBasedCoordinates(e,t);return t?(n=new c,i=e.dayWidth,e=e.daysOffset,n.x=Math.floor((t.x-e)/i),t=0,e=f.$view.maxX,"move-event"!=this.dragMode&&(i=s.calendarData())&&(t=e=i.index),n.xe&&(n.x=e),n.y=0):n=null,n},getEventMonthlyViewCoordinates:function(e,t){var n,i,a,o,t=this.getContainerBasedCoordinates(e,t);return t?(n=new c,i=e.maxX,a=e.dayWidth,o=e.daysOffset,e=e.dayHeight,(e=Math.floor(+t.y/e))<0&&(e=0),n.x=Math.floor((t.x-o)/a),n.x<0?n.x=0:n.x>i&&(n.x=i),n.x+=(i+1)*e,n.y=0):n=null,n},getDistance:function(){return this.currentCoordinates.getDistance(this.originalCoordinates)},setTimeFromQuarters:function(e,t){var n=Math.floor(t/4);e.setHours(n,t%4*15)}}}}}e.$inject=["$rootScope","$timeout","$log","Preferences","Calendar","CalendarSettings","Component"],angular.module("SOGo.SchedulerUI").directive("sgDraggableCalendarBlock",e)}(),function(){function e(e,t,n){var i=this;this.$onInit=function(){e.$watch(function(){return i.component?{start:i.component.start,end:i.component.end,attendees:_.keys(i.component.$attendees.$futureFreebusyData)}:null},function(e,t){e&&e.attendees&&e.attendees.length&&n.all(_.values(i.component.$attendees.$futureFreebusyData)).then(function(){i.onUpdate()})},!0)},this.onUpdate=function(){}}e.$inject=["$scope","$element","$q"],angular.module("SOGo.SchedulerUI").directive("sgFreebusy",function(){return{restrict:"C",scope:{},bindToController:{component:"=sgComponent"},controller:e}})}(),function(){function e(e,t){var c=this;this.$postLink=function(){var a,o=[],r=[],s=[];this.parentController=e.parentController,a=this.parentController.onUpdate,_.forEach(t.find("div"),function(e){e.className.startsWith("hour")?o.push(e):e.className.startsWith("quarter")?r.push(e):e.className.startsWith("busy")&&s.push(e)}),this.parentController.onUpdate=function(){var e=c.attendee.uid?c.attendee.freebusy[c.day]:null;c.attendee.uid||_.forEach(o,function(e){e.classList.add("sg-no-freebusy")});for(var t=0;t<24;t++)for(var n=0;n<4;n++){var i=4*t+n;c.coversFreebusy(t,n)?r[i].classList.add("event"):r[i].classList.remove("event"),e&&e[t][n]?s[i].classList.remove("ng-hide"):s[i].classList.add("ng-hide")}angular.bind(c.parentController,a)()}},this.coversFreebusy=function(e,t){return c.attendees.coversFreeBusy(c.day,e,t)}}e.$inject=["$scope","$element"],angular.module("SOGo.SchedulerUI").directive("sgFreebusyDay",function(){return{restrict:"E",require:"^^sgFreebusy",bindToController:{day:"=sgDay",attendees:"=sgAttendees",attendee:"=sgAttendee"},replace:!0,template:function(e,t){for(var n=[""],i=0;i<24;i++){n.push('
');for(var a=0;a<4;a++)n.push('
'),n.push('
'),n.push("
");n.push("
")}return n.push(" \x3c!-- divider --\x3e"),n.push("
"),n.join("")},link:function(e,t,n,i){e.parentController=i},controller:e,controllerAs:"$ctrl"}})}(),function(){"use strict";function e(r,s,c){var l,d=this,u=s.controller("sgCalendarScrollView");r.nowDay=null,r.lineElement=null,r.updateLine=function(e){var t=new Date,n=t.getDayString(),i=t.getHours(),a=4*r.quarterHeight,t=t.getMinutes(),o=r.quarterHeight/15,i=parseInt(i*a+t*o-1);!e&&n==r.nowDay||(r.lineElement&&r.lineElement.remove(),r.lineElement=function(t,e){var n=angular.element("");u.isMultiColumn?e&&e[0].attributes["sg-day"].value==t&&s.append(n):_.forEach(e,function(e){e.attributes["sg-day"].value==t&&angular.element(e).find("div").eq(0).append(n)});return n}(n,r.days),r.nowDay=n);r.lineElement&&(r.lineElement.css("top",i+"px"),l=c(angular.bind(d,r.updateLine),6e4))},r.$on("$destroy",function(){l&&c.cancel(l)})}e.$inject=["$scope","$element","$timeout"],angular.module("SOGo.SchedulerUI").directive("sgNowLine",function(){return{restrict:"C",require:"^^sgCalendarScrollView",link:function(n,e,t,i){function a(){return e.find("sg-calendar-day")}var o=n.$watch(function(){return i.quarterHeight},function(e){var t;e&&(o(),n.quarterHeight=e,t=n.$watch(a,function(e){e.length&&(t(),n.days=e,n.updateLine())}))})},controller:e}})}(); +!function(){"use strict";function d(e){this.component=e,this.component.attendees&&_.forEach(this.component.attendees,function(e){e.image=d.$gravatar(e.email,32)}),this.workDaysOnly=!0,this.slotStartTimeLimit=new Date,this.slotStartTimeLimit.setMinutes(0),this.slotStartTimeLimit.setHours(d.dayStartHour),this.slotEndTimeLimit=new Date,this.slotEndTimeLimit.setMinutes(0),this.slotEndTimeLimit.setHours(d.dayEndHour),this.$days=[],this.$futureFreebusyData={},this.updateFreeBusyCoverage(),this.updateFreeBusy(),0==this.$days.length&&this.getDays()}d.$factory=["$q","$timeout","$log","sgSettings","Attendees_ROLES","Preferences","User","Card","Gravatar","Resource",function(e,t,n,i,a,o,r,s,c,l){return angular.extend(d,{$q:e,$timeout:t,$log:n,$settings:i,$User:r,$Preferences:o,$Card:s,$gravatar:c,$$resource:new l(i.activeUser("folderURL")+"Calendar",i.activeUser()),ROLES:a}),d.dayStartHour=parseInt(o.defaults.SOGoDayStartTime.split(":")[0]),d.dayEndHour=parseInt(o.defaults.SOGoDayEndTime.split(":")[0]),d}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").constant("Attendees_ROLES",{REQ_PARTICIPANT:"req-participant",OPT_PARTICIPANT:"opt-participant",NON_PARTICIPANT:"non-participant",CHAIR:"chair"}).factory("Attendees",d.$factory),d.timeToQuarters=function(e){return 4*e.getHours()+Math.ceil(e.getMinutes()/15)},d.prototype.getLength=function(){return this.component.attendees?this.component.attendees.length:0},d.prototype.initOrganizer=function(e){var t=this,e=e&&e.isSubscription?d.$User.$filter(e.owner).then(function(e){e=e[0];t.component.organizer={uid:e.uid,name:e.cn,email:e.c_email}}):(this.component.organizer||(this.component.organizer={uid:d.$settings.activeUser("login"),name:d.$settings.activeUser("identification"),email:d.$settings.activeUser("email")}),d.$q.when());e.then(function(){t.updateFreeBusyAttendee(t.component.organizer)})},d.prototype.add=function(e,t){var n,i,a=this,o=d.$q.when();return e&&((!this.component.attendees||t&&t.organizerCalendar)&&this.initOrganizer(t?t.organizerCalendar:null),e.$isList({expandable:!0})?o=(i=d.$Card.$find(e.container,e.c_name)).$id().then(function(e){_.forEach(i.refs,function(e){n={name:e.c_cn,email:e.$preferredEmail(t?t.partial:null),role:d.ROLES.REQ_PARTICIPANT,partstat:"needs-action",uid:e.c_uid,$avatarIcon:"person"},_.find(a.component.attendees,function(e){return e.email==n.email})||(n.image=d.$gravatar(n.email,32),a.component.attendees?a.component.attendees.push(n):a.component.attendees=[n],a.updateFreeBusyAttendee(n))})}):(n={uid:e.c_uid,domain:e.c_domain,isMSExchange:e.ismsexchange,isGroup:e.$isList(),isExpandableGroup:!1,isResource:e.isresource,name:e.c_cn,email:e.$$email,role:d.ROLES.REQ_PARTICIPANT,partstat:"needs-action",$avatarIcon:e.$avatarIcon},_.find(this.attendees,function(e){return e.email==n.email})||(e.$isList()&&d.$Preferences.defaults.SOGoLDAPGroupExpansionEnabled&&(o=e.$members().then(function(e){n.members=e,n.isExpandableGroup=!0})),n.image=d.$gravatar(n.email,32),this.component.attendees?_.findIndex(this.component.attendees,{email:n.email})<0&&this.component.attendees.push(n):this.component.attendees=[n],this.updateFreeBusyAttendee(n)))),o},d.prototype.nextRole=function(t){var e=_.values(d.ROLES),n=_.findIndex(e,function(e){return t.role===e});t.role=e[++n%4]},d.prototype.hasAttendee=function(e){var t=_.find(this.component.attendees,function(t){return _.find(e.emails,function(e){return e.value==t.email})});return angular.isDefined(t)},d.prototype.remove=function(t){var e=_.findIndex(this.component.attendees,function(e){return e.email==t.email});-1=this.startLimit;){for(var a,o=0,r=t;0===this.currentEntries[r]&&oe&&this.attachUrls.splice(e,1)},u.prototype.$addDueDate=function(){this.due=new Date,this.due.setMinutes(15*Math.round(this.due.getMinutes()/15)),this.dueDate=this.due.toISOString()},u.prototype.$deleteDueDate=function(){delete this.due,delete this.dueDate},u.prototype.$addStartDate=function(){this.start=new Date,this.start.setMinutes(15*Math.round(this.start.getMinutes()/15))},u.prototype.$deleteStartDate=function(){delete this.start,delete this.startDate},u.prototype.$addRecurrenceDate=function(){var e=new Date;e.setMinutes(15*Math.round(e.getMinutes()/15)),angular.isUndefined(this.repeat.dates)&&(this.repeat={frequency:"custom",dates:[]}),this.repeat.dates.push(e)},u.prototype.$deleteRecurrenceDate=function(e){-1e&&this.repeat.dates.splice(e,1)},u.prototype.$reset=function(){var n=this;angular.forEach(this,function(e,t){"constructor"!=t&&"$"!=t[0]&&delete n[t]}),this.init(this.$shadowData),this.$shadowData=this.$omit()},u.prototype.$reply=function(){var e,t=this,n=[this.pid,this.id];return this.occurrenceId&&n.push(this.occurrenceId),e={reply:this.reply,delegatedTo:this.delegatedTo,alarm:this.$hasAlarm?this.alarm:{},classification:this.classification},u.$$resource.save(n,e,{action:"rsvpAppointment"}).then(function(e){return t.$shadowData=t.$omit(),e})},u.prototype.$adjust=function(e){var t=[this.pid,this.id];return _.every(_.values(e),function(e){return 0===e})?u.$q.when():(this.occurrenceId&&t.push(this.occurrenceId),u.$log.debug("adjust "+t.join("/")+" "+JSON.stringify(e)),u.$$resource.save(t,e,{action:"adjust"}))},u.prototype.$save=function(e){var t,n,i=this,a=this.$omit(),o=u.$Preferences.$mdDateLocaleProvider;return a.startDate=a.start?a.start.format(o,"%Y-%m-%d"):"",a.startTime=a.start?a.start.format(o,"%H:%M"):"",a.endDate=a.end?a.end.format(o,"%Y-%m-%d"):"",a.endTime=a.end?a.end.format(o,"%H:%M"):"",a.dueDate=a.due?a.due.format(o,"%Y-%m-%d"):"",a.dueTime=a.due?a.due.format(o,"%H:%M"):"",a.completedDate=a.completed?a.completed.format(o,"%Y-%m-%d"):"",this.hasCustomRepeat()?"monthly"==this.repeat.frequency&&this.repeat.month.type&&"byday"==this.repeat.month.type&&"relative"!=this.repeat.month.day||"yearly"==this.repeat.frequency&&this.repeat.year.byday?(delete a.repeat.monthdays,a.repeat.days=[{day:this.repeat.month.day,occurrence:this.repeat.month.occurrence.toString()}]):"monthly"!=this.repeat.frequency&&"yearly"!=this.repeat.frequency||!this.repeat.month.type?"custom"==this.repeat.frequency&&this.repeat.dates&&_.forEach(a.repeat.dates,function(e,t,n){n[t]={date:e.format(o,"%Y-%m-%d"),time:e.format(o,"%H:%M")}}):(delete a.repeat.days,"relative"==this.repeat.month.day&&(a.repeat.monthdays=[this.repeat.month.occurrence])):this.repeat.frequency&&"never"!=this.repeat.frequency&&(a.repeat={frequency:this.repeat.frequency}),a.startDate&&this.repeat.frequency&&"never"!=this.repeat.frequency?"until"==this.repeat.end&&this.repeat.until?a.repeat.until=this.repeat.until.stringWithSeparator("-"):"count"==this.repeat.end&&this.repeat.count?a.repeat.count=this.repeat.count:(delete a.repeat.until,delete a.repeat.count):delete a.repeat,"not-specified"==this.status?delete a.status:"completed"!=this.status&&delete a.completedDate,(a.startDate||a.dueDate)&&this.$hasAlarm?!this.alarm.action||"email"!=this.alarm.action||this.attendees&&0',' ',"

"+l("editRepeatingItem")+"

","
"," ",' '+l("button_thisOccurrenceOnly")+"",' '+l("button_allOccurrences")+""," ",""].join(""),controller:r}).then(function(){d.$emit("calendars:list")},function(){}).finally(function(){u(function(){g.$resetGhost()})})),r.$inject=["$scope","$mdDialog","component","params"],c.$inject=["$scope","$mdDialog","component","params","conflictError"]}s={title:"Title",location:"Location",calendarName:"Calendar",start:"Start",priority:"Priority",category:"Category",status:"Status",events:{end:"End"},tasks:{end:"Due Date"}},c.component=g,c.componentType="events",c.selectedList=0,c.selectComponentType=$,c.unselectComponents=function(){_.forEach(g["$"+c.componentType],function(e){e.selected=!1}),c.mode.multiple=0},c.selectAll=function(){_.forEach(g["$"+c.componentType],function(e){e.selected=!0}),c.mode.multiple=g["$"+c.componentType].length},c.searchMode=v,c.toggleComponentSelection=function(e,t){t.selected=!t.selected,c.mode.multiple+=t.selected?1:-1,e.preventDefault(),e.stopPropagation()},c.confirmDeleteSelectedComponents=function(){o.confirm(l("Warning"),l("Are you sure you want to delete the selected components?"),{ok:l("Delete")}).then(function(){var e=_.filter(g["$"+c.componentType],function(e){return e.selected});f.$deleteComponents(e).then(function(){c.mode.multiple=0,d.$emit("calendars:list")})})},c.openEvent=function(e,t){C(e,t,"appointment")},c.openTask=function(e,t){C(e,t,"task")},c.newComponent=b,c.filter=function(e){{if(!e)return g["$query"+c.componentType.capitalize()].filterpopup;g.$filter(c.componentType,{filterpopup:e})}},c.filteredBy=function(e){return g["$query"+c.componentType.capitalize()].filterpopup==e},c.sort=function(e){{var t;{if(!e)return t=g["$query"+c.componentType.capitalize()].sort,s[t]||s[c.componentType][t];g.$filter(c.componentType,{sort:e})}}},c.sortedBy=function(e){return g["$query"+c.componentType.capitalize()].sort==e},c.reload=function(){g.$loaded=g.STATUS.LOADING,f.reloadWebCalendars().finally(function(){d.$emit("calendars:list")})},c.cancelSearch=function(){c.mode.search=!1,g.$filter(c.componentType,{value:""})},c.mode={search:!1,multiple:0},this.$onInit=function(){var e;(e=y).push(n.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:v})),e.push(n.createHotkey({key:l("hotkey_create_event"),description:l("Create a new event"),callback:b,args:"appointment"})),e.push(n.createHotkey({key:l("hotkey_create_task"),description:l("Create a new task"),callback:b,args:"task"})),_.forEach(e,function(e){n.registerHotkey(e)}),r="events","tasksListView"==p.settings.Calendar.SelectedList&&(c.selectedList=1,r="tasks"),$(r,{reload:!0}),d.$on("calendars:list",function(){g.$filter(c.componentType,{reload:!0})}),d.$on("calendar:dragend",D),t.$on("$destroy",function(){_.forEach(y,function(e){n.deregisterHotkey(e)})})},this.ascending=function(){return g["$query"+c.componentType.capitalize()].asc}}e.$inject=["$rootScope","$scope","$q","$timeout","$state","$mdDialog","sgHotkeys","sgFocus","Dialog","Preferences","CalendarSettings","Calendar","Component"],angular.module("SOGo.SchedulerUI").controller("CalendarListController",e)}(),function(){"use strict";function e(o,e,t,i,n,r,a,s,c,d,u,h){var p=this;this.activeUser=d.activeUser,this.service=h,this.filter={name:""},this.sortableMode=!1,this.sortableCalendars={scrollableContainer:"#sidenav-content",containment:"md-list",orderChanged:function(){h.saveFoldersOrder(_.flatMap(h.$findAll(),"id"))},accept:function(e,t,n){return e.sortableScope.element[0]==t.element[0]}},this.$onInit=function(){p.categories=_.map(u.defaults.SOGoCalendarCategories,function(e){return{id:e.asCSSIdentifier(),name:e,color:u.defaults.SOGoCalendarCategoriesColors[e]}}),e.$watch(function(){return _.union(_.map(h.$calendars,function(e){return _.pick(e,["id","active","color"])}),_.map(h.$subscriptions,function(e){return _.pick(e,["id","active","color"])}),_.map(h.$webcalendars,function(e){return _.pick(e,["id","active","color"])}))},function(e,n){var t=_.intersectionBy(e,n,"id"),i=_.map(_.filter(t,function(e){var t=_.find(n,{id:e.id});return!_.isEqual(e,t)}),"id"),a=h.$q.when();0"}))},this.newMessageWithRecipient=function(e,t,n){m(e,[t+" <"+n+">"])},this.edit=function(){var t="vevent"==this.component.component?"Appointment":"Task";s.hide().then(function(){var e="UIx"+t+"EditorTemplate";s.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:e,controller:"ComponentEditorController",controllerAs:"editor",locals:{stateComponent:p.component}})})},this.editAllOccurrences=function(){(h=i.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){p.component=h,p.edit()})},this.reply=function(e){(e||this.component).$reply().then(function(){t.$emit("calendars:list"),n.getAlarms(),s.hide()})},this.replyAllOccurrences=function(){(h=i.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){h.reply=p.component.reply,h.delegatedTo=p.component.delegatedTo,h.$hasAlarm=p.component.$hasAlarm,h.classification=p.component.classification,h.alarm=p.component.alarm,p.reply(h)})},this.deleteOccurrence=function(){this.component.remove(!0).then(function(){t.$emit("calendars:list"),s.hide()})},this.deleteAllOccurrences=function(){this.component.remove().then(function(){t.$emit("calendars:list"),s.hide()})},this.toggleRawSource=function(n){i.$$resource.post(this.component.pid+"/"+this.component.id,"raw").then(function(e){function t(e,t,n){e.data=n,e.close=function(){t.hide()}}s.hide(),s.show({parent:angular.element(document.body),targetEvent:n,clickOutsideToClose:!0,escapeToClose:!0,template:['',' ','
',"  
"," ",' '+l("Close")+""," ","
"].join(""),controller:t,locals:{data:e}}),t.$inject=["scope","$mdDialog","data"]})},this.copySelectedComponent=function(e){this.component.copyTo(e).then(function(){s.hide(),t.$emit("calendars:list")})},this.moveSelectedComponent=function(e){this.component.moveTo(e).then(function(){s.hide(),t.$emit("calendars:list")})}}function t(n,e,u,t,h,i,a,o,r,s,c,d,p,m,f,g,y,$,v){var C,b,D,w,S=this;function k(){var e;S.attendeesEditor.containerElement||(S.attendeesEditor.containerElement=a[0].querySelector("#freebusy")),e=a[0].querySelector("#freebusy_day_"+S.component.start.getDayString()),S.attendeesEditor.containerElement&&e&&(e=e.offsetLeft-S.attendeesEditor.containerElement.offsetLeft,S.attendeesEditor.containerElement.scrollLeft=e)}function E(e){S.adjustStartTime(),S.adjustEndTime(),S.component.$attendees.findSlot(e).then(function(){S.startTime=new Date(S.component.start.getTime()),S.endTime=new Date(S.component.end.getTime())}).catch(function(e){S.component.start=new Date(S.component.start.getTime()+1),h(k),r.show({template:["",'
',' error_outline'," "+e+"","
","
"].join(""),hideDelay:5e3,position:sgConstant.toastPosition})}).finally(function(){h(k)})}function T(){_.has(S.component,"$attendees")&&(S.component.$attendees.updateFreeBusyCoverage(),S.component.$attendees.updateFreeBusy(),h(k))}this.$onInit=function(){this.service=p,this.component=v,this.categories={},this.showRecurrenceEditor=this.component.$hasCustomRepeat,this.showAttendeesEditor=this.component.attendees&&this.component.attendees.length,"appointment"==this.component.type&&(this.component.initAttendees(),this.attendeeConflictError=!1,this.attendeesEditor={days:this.component.$attendees.$days,hours:function(){for(var e=[],t=0;t<=23;t++)e.push(t.toString());return e}(),containerElement:a[0].querySelector("#freebusy")}),this.component.start&&(C=new Date(this.component.start.getTime()),this.startTime=new Date(this.component.start.getTime())),this.component.end&&(b=new Date(this.component.end.getTime()),this.endTime=new Date(this.component.end.getTime())),this.component.due&&(new Date(this.component.due.getTime()),this.dueTime=new Date(this.component.due.getTime())),this.component.attendees&&h(k),D=parseInt($.defaults.SOGoDayStartTime),w=parseInt($.defaults.SOGoDayEndTime)},this.addAttachUrl=function(){var e=this.component.addAttachUrl("");s("attachUrl_"+e)},this.toggleRecurrenceEditor=function(){this.showRecurrenceEditor=!this.showRecurrenceEditor,this.component.$hasCustomRepeat=this.showRecurrenceEditor},this.toggleAttendeesEditor=function(){this.showAttendeesEditor=!this.showAttendeesEditor},this.recurrenceMonthDaysAreRequired=function(){return this.component&&"monthly"==this.component.repeat.frequency&&"bymonthday"==this.component.repeat.month.type},this.frequencies=function(){return _.filter(i.repeatFrequencies,function(e){return"custom"!=e[0]||"custom"==S.component.repeat.frequency})},this.changeFrequency=function(){"custom"==this.component.repeat.frequency&&(this.showRecurrenceEditor=!0)},this.changeCalendar=function(){this.component.attendees&&0? *"),"");return S.showAttendeesEditor|=a,S.searchText="",S.cardFilter(t).then(function(e){return e.length?e[0]:new y({c_cn:_.trim(n,' "'),emails:[{value:t}]})}).catch(function(e){return new y({c_cn:_.trim(n,' "'),emails:[{value:t}]})})}function d(e){if(!S.component.$attendees.hasAttendee(e))return S.component.$attendees.add(e,r)}if(t&&(r.partial=t),angular.isString(e)){for(i="",n=0;n",'
','
",'
',' {{'+t+"block.component.c_priority}}"," {{ "+t+"block.component.summary }}",' ',' repeat',' alarm',' visibility_off',' vpn_key'," ",'
',' place ',"
",'
',"
","
",'
{{ block.startHour }}
','
{{ block.endHour }}
',""].join("")},link:function(e,t,n){var i;_.has(n,"sgCalendarGhost")||(n=90/e.block.siblings,i=e.block.position*n,n=100-(e.block.position+1)*n,t.css("left",i+"%"),t.css("right",n+"%"),e.block.component&&e.block.component.c_isallday||(t.addClass("starts"+e.block.start),t.addClass("lasts"+e.block.length)),e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(e.showCalendarName=a.activeUser.login!==e.block.component.c_owner,t.addClass("bg-folder"+e.block.component.pid),t.addClass("contrast-bdr-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}}e.$inject=["Calendar"],angular.module("SOGo.SchedulerUI").directive("sgCalendarDayBlock",e)}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarDayTable",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";function e(r,e,f,g,s){return{restrict:"A",require:["^sgCalendarDay","^sgCalendarScrollView"],link:function(c,l,e,t){n=l[0],d=t[0],u=t[1],h=-1,l.addClass("sg-event--ghost md-whiteframe-3dp ng-hide");var n,d,u,h,p,i=r.$on("calendar:dragstart",function(){var e,t;c.block=s.$ghost,(t=d.calendarData())&&(h=t.index,e=t.pid,p=c.block.pointerHandler.originalCalendar.index);e=e||c.block.component.pid;(t=c.block.component.blocks[0].userState)&&l.addClass("sg-event--"+t);l.addClass("bg-folder"+e)}),a=r.$on("calendar:drag",function(){var e,t,n,i,a,o,r,s;if(e=!1,g.$view&&g.$view.type==u.type){if(t="multiday-allday"===u.type,n=c.block.component.c_isallday,i=c.block.pointerHandler.currentEventCoordinates.dayNumber,a=c.block.pointerHandler.currentEventCoordinates.start,r=c.block.pointerHandler.currentEventCoordinates.duration,s=f.EventDragDayLength-a,angular.isUndefined(r))return;for(s<(o=r)&&(o=s),-1f.EventDragDayLength&&(o=f.EventDragDayLength),-1','
',' ','
','
","
"," {{ ::component.c_title }}",' ',' repeat',' alarm',' visibility_off',' vpn_key'," ",'
',' access_time ',"
",'
',' place ',"
","
",""].join("")},link:function(e,t,n){e.component.viewable&&t.addClass("md-clickable");e.component.userstate&&t.addClass("sg-event--"+e.component.userstate);t.addClass("bg-folder"+e.component.pid),t.addClass("contrast-bdr-folder"+e.component.pid),0===e.component.c_isopaque&&t.addClass("sg-event--transparent");0===e.component.c_status&&t.addClass("sg-event--cancelled")}}}e.$inject=["CalendarSettings"],angular.module("SOGo.SchedulerUI").directive("sgCalendarListEvent",e)}(),function(){function e(r,e,t,n,s,i,a,o,c,d,u){var h=this;this.$onInit=function(){this.editMode=!1},this.$postLink=function(){this.clickableElement=t.find("p")[0],this.nameElements=this.clickableElement.getElementsByClassName("sg-calendar-name"),this.inputContainer=t.find("md-input-container")[0],this.inputElement=t.find("input")[0],this.moreOptionsButton=_.last(t.find("md-icon")),this.updateCalendarName()},this.updateCalendarName=function(){_.forEach(this.nameElements,function(e){e.innerHTML=h.calendar.name})},this.editFolder=function(e){e.stopPropagation(),e.preventDefault(),this.editMode=!0,this.inputElement.value=this.calendar.name,this.clickableElement.classList.add("ng-hide"),this.inputContainer.classList.remove("ng-hide"),e.srcEvent&&"touchend"==e.srcEvent.type?n(function(){h.inputElement.focus(),h.inputElement.select()},200):(this.inputElement.select(),this.inputElement.focus()),this.panel&&this.panel.close()},this.saveFolder=function(e){this.inputElement.disabled||(0===this.inputElement.value.length&&this.revertEditing(),this.calendar.name=this.inputElement.value,this.inputElement.disabled=!0,this.calendar.$rename().then(function(e){h.editMode=!1,h.inputContainer.classList.add("ng-hide"),h.clickableElement.classList.remove("ng-hide"),h.updateCalendarName()},function(){h.editMode=!0,h.inputElement.value=h.calendar.name,n(function(){h.inputElement.focus(),h.inputElement.select()},200)}).finally(function(){h.inputElement.disabled=!1}))},this.revertEditing=function(){this.editMode=!1,this.clickableElement.classList.remove("ng-hide"),this.inputContainer.classList.add("ng-hide"),this.inputElement.value=this.calendar.name},this.confirmDelete=function(){this.calendar.isSubscription?this.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))}):d.confirm(l("Warning"),l('Are you sure you want to delete the calendar "%{0}"?',this.calendar.name),{ok:l("Delete")}).then(function(){h.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))})})},this.showMenu=function(o){var e=i.newPanelPosition().relativeTo(this.moreOptionsButton).addPanelPosition(i.xPosition.ALIGN_START,i.yPosition.ALIGN_TOPS),t=i.newPanelAnimation().openFrom(this.moreOptionsButton).duration(100).withAnimation(i.animation.FADE),e={attachTo:angular.element(document.body),locals:{itemCtrl:this,calendar:this.calendar,editFolder:angular.bind(this,this.editFolder),confirmDelete:angular.bind(this,this.confirmDelete)},bindToController:!0,controller:n,controllerAs:"$menuCtrl",position:e,animation:t,targetEvent:o,templateUrl:"UIxCalendarMenu",trapFocus:!0,clickOutsideToClose:!0,escapeToClose:!0,focusOnOpen:!0};function n(e,n,i,t){var a=this;this.showOnly=function(){_.forEach(u.$findAll(),function(e){a.calendar.id==e.id?e.active=1:e.active=0})},this.showAll=function(){_.forEach(u.$findAll(),function(e){e.active=1})},this.showProperties=function(){var e=this.calendar.color;function t(e,t,n){var i=this;i.calendar=new u(n.$omit()),i.saveProperties=function(e){e.$valid&&i.calendar.$save().then(function(){n.init(i.calendar.$omit()),t.hide()},function(){e.$setPristine()})},i.close=function(){t.cancel()},e.$watch(function(){return i.calendar.color},function(){n.color=i.calendar.color})}n.show({templateUrl:this.calendar.id+"/properties",controller:t,controllerAs:"properties",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcCalendar:this.calendar}}).catch(function(){a.calendar.color=e}),t.$inject=["$scope","$mdDialog","srcCalendar"]},this.showLinks=function(){function e(e,t){this.calendar=t,this.close=function(){e.hide()}}n.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:this.calendar.id+"/links",controller:e,controllerAs:"links",locals:{calendar:this.calendar}}),e.$inject=["$mdDialog","calendar"]},this.importCalendar=function(){function e(e,o,t){function n(e){e=0===e.type.indexOf("text")||/\.(ics)$/.test(e.name);return e||s.show({template:["",'
',' error_outline'," "+l("Select an iCalendar file (.ics).")+"","
","
"].join(""),position:c.toastPosition,hideDelay:3e3}),e}this.uploader=new i({url:ApplicationBaseURL+[t.id,"import"].join("/"),autoUpload:!0,queueLimit:1,filters:[{name:n,fn:n}],onSuccessItem:function(e,t,n,i){var a;o.hide(),0===t.imported?a=l("No event was imported."):(a=l("A total of %{0} events were imported in the calendar.",t.imported),r.$emit("calendars:list")),s.show(s.simple().textContent(a).position(c.toastPosition).hideDelay(3e3))},onErrorItem:function(e,t,n,i){s.show({template:["",'
',' error_outline'," "+l("An error occurred while importing calendar.")+"","
","
"].join(""),position:c.toastPosition,hideDelay:3e3})}}),this.close=function(){o.hide()}}n.show({parent:angular.element(document.body),targetEvent:o,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxCalendarImportDialog",controller:e,controllerAs:"$CalendarImportDialogController",locals:{folder:this.calendar}}),e.$inject=["scope","$mdDialog","folder"]},this.share=function(){this.calendar.$acl.$users().then(function(){n.show({templateUrl:a.calendar.id+"/UIxAclEditor",controller:"AclController",controllerAs:"acl",clickOutsideToClose:!0,escapeToClose:!0,locals:{usersWithACL:a.calendar.$acl.users,User:t,folder:a.calendar}})})}}i.open(e).then(function(e){(h.panel=e).panelEl.one("click",function(){e.close()})}),n.$inject=["mdPanelRef","$mdDialog","FileUploader","User"]}}e.$inject=["$rootScope","$scope","$element","$timeout","$mdToast","$mdPanel","$mdMedia","$mdSidenav","sgConstant","Dialog","Calendar"],angular.module("SOGo.SchedulerUI").controller("sgCalendarListItemController",e).directive("sgCalendarListItem",function(){return{restrict:"C",scope:{},bindToController:{calendar:"=sgCalendar"},template:['','

',' ',' error',' ',' ',"

",'',' ',"",'drag_handle",'more_vert'].join(""),controller:"sgCalendarListItemController",controllerAs:"$ctrl"}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthDay",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthEvent",function(){return{restrict:"E",scope:{block:"=sgBlock",clickBlock:"&sgClick"},replace:!0,template:function(e,t){t=_.has(t,"sgCalendarGhost")?"":"::";return['
','
",'
',' {{ '+t+"block.component.startHour }}",' {{'+t+"block.component.c_priority}}"," {{ "+t+"block.component.summary }}",' ',' repeat',' alarm',' visibility_off',' vpn_key'," ","
","
"].join("")},link:function(e,t,n){_.has(n,"sgCalendarGhost")||(e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(t.addClass("bg-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}})}(),function(){"use strict";function e(e,n){var t=this,i={portrait:{letter:[8.5,11,"in"],legal:[8.5,14,"in"],a4:[210,297,"mm"]},landscape:{letter:[11,8.5,"in"],legal:[14,8.5,"in"],a4:[297,210,"mm"]}},a={letter:[.4,2.1],legal:[.4,2.1],a4:[10,30]};this.$onInit=function(){e.$watchGroup([function(){return t.pageSize},function(){return t.workingHoursOnly}],angular.bind(this,function(){var e,t=i[this.orientation][this.pageSize];this.units=t[2],this.pageMargin=a[this.pageSize][0]+this.units,this.viewportHeight=(t[1]-2*a[this.pageSize][0]).toString()+this.units,this.hideHoursStart=0,this.hideHoursEnd=24,this.totalHours=24,this.clipTop=0,"month"===this.calendarView?this.viewHeight=(t[1]-3*a[this.pageSize][0]).toString()+this.units:(this.workingHoursOnly&&(n.defaults.SOGoDayEndTime&&(e=n.defaults.SOGoDayEndTime.split(":"),this.hideHoursEnd=parseInt(e[0]),this.totalHours=this.hideHoursEnd),n.defaults.SOGoDayStartTime&&(e=n.defaults.SOGoDayStartTime.split(":"),this.hideHoursStart=parseInt(e[0]),this.totalHours-=this.hideHoursStart)),this.hourHeight=(t[1]-2*a[this.pageSize][0]-a[this.pageSize][1])/this.totalHours,this.clipTop=(this.hourHeight*this.hideHoursStart).toString()+this.units,this.viewHeight=(this.hideHoursEnd*this.hourHeight).toString()+this.units)}))},this.eventsPositions=function(){var e,t=0,n=[];if("month"===this.calendarView)n.push("[ui-view=calendars] .monthView md-grid-list { min-height: "+this.viewHeight+"; }");else for(;t<=96;)t<=4*this.hideHoursStart&&(e=4*this.hideHoursStart-t,n.push("[ui-view=calendars] .sg-event.starts"+t+" .text { margin-top: "+this.hourHeight/4*e+this.units+"; }")),n.push("[ui-view=calendars] .sg-event.starts"+t+" { top: "+this.hourHeight/4*t+this.units+"; }"),n.push("[ui-view=calendars] .sg-event.lasts"+t+" { height: "+this.hourHeight/4*t+this.units+"; }"),t++;return n.join("\n")}}e.$inject=["$scope","Preferences"],angular.module("SOGo.SchedulerUI").directive("sgCalendarPrintStylesheet",function(){return{restrict:"E",scope:{calendarView:"'," @page {"," size: {{ $ctrl.pageSize }} {{ $ctrl.orientation }};"," margin: 0;"," }"," @media print {"," body {"," padding: {{ $ctrl.pageMargin }};"," }"," [ui-view=calendars] .view-list {"," height: {{ $ctrl.viewportHeight }};"," overflow: hidden;"," }"," [ui-view=calendars] .calendarView {"," transform: translateY(-{{ $ctrl.clipTop }});"," height: {{ $ctrl.viewHeight }};"," position: relative;"," overflow: hidden;"," }"," [ui-view=calendars] .allDaysView {"," max-height: {{ $ctrl.hourHeight }}{{ $ctrl.units }} !important;"," }"," [ui-view=calendars] .hours .hour,"," [ui-view=calendars] .days .day .clickableHourCell {"," min-height: {{ $ctrl.hourHeight }}{{ $ctrl.units }};"," max-height: {{ $ctrl.hourHeight }}{{ $ctrl.units }};"," }"," {{ $ctrl.eventsPositions() }}"," }",""].join("\n")}})}(),function(){"use strict";function e(c,l,e,t,d,n,u,h,p){return{restrict:"A",scope:{type:"@sgCalendarScrollView"},controller:i,link:function(e,n,t,i){var a,o,r;function s(e,t){this.$element=e,this.element=e[0],this.type=t,this.quarterHeight=this.getQuarterHeight(),this.scrollStep=6*this.quarterHeight,this.dayNumbers=this.getDayNumbers(),this.maxX=this.getMaxColumns(),this.deregisterDragStart=c.$on("calendar:dragstart",angular.bind(this,this.onDragStart)),this.deregisterDragStop=c.$on("calendar:dragend",angular.bind(this,this.onDragEnd)),this.bindedUpdateCoordinates=angular.bind(this,this.updateCoordinates),this.bindedUpdateFromPointerHandler=angular.bind(this,this.updateFromPointerHandler),this.updateCoordinates(),angular.element(l).on("resize",this.bindedUpdateCoordinates)}a=null,o=e.type,r="multicolumndayview"==n.attr("sg-view"),i.isMultiColumn=r,d(function(){var e,t;a=new s(n,o),"monthly"==o||p.defaults.SOGoDayStartTime&&(t=p.defaults.SOGoDayStartTime.split(":"),e=document.getElementById("hour"+parseInt(t[0])),t=parseInt(t[1])*a.quarterHeight,a.element.scrollTop=e.offsetTop+t);i.quarterHeight=a.quarterHeight}),e.$on("$destroy",function(){a&&a.$destroy()}),s.prototype={$destroy:function(){this.deregisterDragStart(),this.deregisterDragStop(),this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),angular.element(l).off("resize",this.bindedUpdateCoordinates)},onDragStart:function(){this.$element.on("mousemove",this.bindedUpdateFromPointerHandler),this.updateCoordinates(),this.updateFromPointerHandler()},onDragEnd:function(){this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),u.$view=null},getQuarterHeight:function(){var e=null,t=document.getElementById("hour0"),n=document.getElementById("hour23");return e=t&&n?(n.offsetTop-t.offsetTop)/92:e},getDayDimensions:function(e){var t,n,i,a,o=t=n=i=0,r=this.element.getElementsByClassName("day");return 0this.lastScroll+100)&&(this.lastScroll=e,(e=n.y-this.scrollStep)<0?(t=-this.element.scrollTop,this.element.scrollTop+=e=e'," .bg-category{{ ngModel.id }} {"," background-color: {{ ngModel.color }} !important;"," }"," .bdr-category{{ ngModel.id }} {"," border-color: {{ ngModel.color }} !important;"," }",""].join("")}})}(),function(){"use strict";function e(u,h,p,m,f,g,y){return{restrict:"CA",require:"^sgCalendarDay",link:function(o,r,e,s){if(o.block){if(!o.block.component.editable||o.block.userState)return void r.removeClass("sg-draggable-calendar-block");!function(){var e,t,n,i;o.block.length<3||(n=o.block.component,e=o.block.dayIndex,e=_.findIndex(n.blocks,["dayIndex",e]),i=0===e,e=e===n.blocks.length-1,(t=angular.element('
')).addClass("bdr-folder"+n.pid),n.c_isallday||"SG-CALENDAR-MONTH-DAY"===r[0].parentNode.tagName?(i&&(n=angular.element('
').append(t),r.append(n)),e&&(n=angular.element('
').append(t.clone()),r.append(n))):(i&&(n=angular.element('
').append(t),r.append(n)),e&&(i=angular.element('
').append(t.clone()),r.append(i))))}()}function t(e){var t;e.stopPropagation(),e.target.scrollHeight>e.target.clientHeight+1&&(t=(t=e.target.getBoundingClientRect()).left+t.width-18,e.pageX>t)||(t="move-event",o.block&&o.block.component?"dragGrip-top"==e.target.className||"dragGrip-left"==e.target.className?t="change-start":"dragGrip-bottom"!=e.target.className&&"dragGrip-right"!=e.target.className||(t="change-end"):t="change-end",(t=new d(t)).initFromEvent(e),y.$ghost.pointerHandler=t,angular.element(document).one("mouseup",n),angular.element(document).on("mousemove",i))}function i(e){var t=y.$ghost.pointerHandler;h(function(){t.updateFromEvent(e)})}function n(e){var t=o.block,n=y.$ghost.pointerHandler;angular.element(document).off("mousemove",i),n.dragHasStarted&&(u.$emit("calendar:dragend"),n.dragHasStarted=!1),t&&t.component&&_.forEach(t.component.blocks,function(e){e.dragging=!1})}function c(){}function a(e){this.setEventType(e)}function d(e){this.dragMode=e}r.on("mousedown",t),o.$on("$destroy",function(){r.off("mousedown",t),r.off("mousemove",i)}),c.prototype={x:-1,y:-1,getDelta:function(e){var t=new c;return t.x=this.x-e.x,t.y=this.y-e.y,f.$view&&(t.days=f.$view.dayNumbers[this.x]-f.$view.dayNumbers[e.x]),t},getDistance:function(e){e=this.getDelta(e);return Math.sqrt(e.x*e.x+e.y*e.y)},clone:function(){var e=new c;return e.x=this.x,e.y=this.y,e}},a.prototype={dayNumber:-1,weekDay:-1,start:-1,duration:-1,eventType:null,setEventType:function(e){this.eventType=e},initFromBlock:function(e){var i=-1;"monthly"===this.eventType?(this.start=0,this.duration=e.component.blocks.length*g.EventDragDayLength):(this.start=e.component.blocks[0].start,this.duration=_.sumBy(e.component.blocks,function(e){var t=e.dayNumber,n=i<0?0:t-i-1;return i=t,e.length+n*g.EventDragDayLength}))},initFromCalendar:function(e){this.dayNumber=e},getDelta:function(e){var t=new a;return t.dayNumber=this.dayNumber-e.dayNumber,t.start=this.start-e.start,t.duration=this.duration-e.duration,t},_quartersToHM:function(e){var e=15*e,t=Math.floor(e/60),e=e%60;return(t=t<10?"0"+t:t)+":"+(e=e<10?"0"+e:e)},getStartTime:function(){return this._quartersToHM(this.start)},getEndTime:function(){var e=(this.start+this.duration)%g.EventDragDayLength;return this._quartersToHM(e)},clone:function(){var e=new a;return e.dayNumber=this.dayNumber,e.start=this.start,e.duration=this.duration,e}},d.prototype={originalCoordinates:null,currentCoordinates:null,originalViewCoordinates:null,currentViewCoordinates:null,originalEventCoordinates:null,currentEventCoordinates:null,originalCalendar:null,dragHasStarted:!1,getEventViewCoordinates:null,initFromBlock:function(e){this.currentEventCoordinates=new a(this.eventType),this.originalEventCoordinates=new a(this.eventType),this.originalEventCoordinates.initFromBlock(e)},initFromEvent:function(e){this.currentCoordinates=new c,this.updateFromEvent(e),this.originalCoordinates=this.currentCoordinates.clone()},initFromCalendar:function(e){this.originalCalendar=e,this.currentEventCoordinates.initFromCalendar(e.index),this.originalEventCoordinates.initFromCalendar(e.index)},updateFromEvent:function(e){var t,n,i,a;this.currentCoordinates.x=e.pageX,this.currentCoordinates.y=e.pageY,this.dragHasStarted&&f.$view?(e=this.getEventViewCoordinates(f.$view),this.originalViewCoordinates||(this.originalViewCoordinates=this.getEventViewCoordinates(f.$view,this.originalCoordinates),y.$ghost.component.isNew&&(this.setTimeFromQuarters(y.$ghost.component.start,this.originalViewCoordinates.y),p.debug("new event start date "+y.$ghost.component.start))),this.currentViewCoordinates&&e&&e.x==this.currentViewCoordinates.x&&e.y==this.currentViewCoordinates.y||(this.currentViewCoordinates=e,this.originalViewCoordinates&&(e||(this.currentViewCoordinates=this.originalViewCoordinates.clone()),this.updateEventCoordinates()))):this.originalCoordinates&&this.currentCoordinates&&!this.dragHasStarted&&3=g.EventDragDayLength&&(t=Math.floor(this.currentEventCoordinates.start/g.EventDragDayLength),this.currentEventCoordinates.start-=t*g.EventDragDayLength,this.currentEventCoordinates.dayNumber+=t),p.debug("event coordinates "+JSON.stringify(this.currentEventCoordinates)),u.$emit("calendar:drag")},getContainerBasedCoordinates:function(e,t){var t=(t||this.currentCoordinates).getDelta(e.coordinates),n=e.element;return t=t.xn.clientWidth||t.y<0||t.y>n.clientHeight?null:t},prepareWithEventType:function(e){var t={multiday:this.getEventMultiDayViewCoordinates,"multiday-allday":this.getEventMultiDayAllDayViewCoordinates,monthly:this.getEventMonthlyViewCoordinates,unknown:null}[e];this.eventType=e,this.getEventViewCoordinates=t},getEventMultiDayViewCoordinates:function(e,t){var n,i=this.getEventMultiDayAllDayViewCoordinates(e,t);return i&&(n=e.quarterHeight,(t=this.getContainerBasedCoordinates(e,t)).y+=e.element.scrollTop,i.y=Math.floor((t.y-g.EventDragHorizontalOffset)/n),e=g.EventDragDayLength-1,i.y<0?i.y=0:i.y>e&&(i.y=e)),i},getEventMultiDayAllDayViewCoordinates:function(e,t){var n,i,t=this.getContainerBasedCoordinates(e,t);return t?(n=new c,i=e.dayWidth,e=e.daysOffset,n.x=Math.floor((t.x-e)/i),t=0,e=f.$view.maxX,"move-event"!=this.dragMode&&(i=s.calendarData())&&(t=e=i.index),n.xe&&(n.x=e),n.y=0):n=null,n},getEventMonthlyViewCoordinates:function(e,t){var n,i,a,o,t=this.getContainerBasedCoordinates(e,t);return t?(n=new c,i=e.maxX,a=e.dayWidth,o=e.daysOffset,e=e.dayHeight,(e=Math.floor(+t.y/e))<0&&(e=0),n.x=Math.floor((t.x-o)/a),n.x<0?n.x=0:n.x>i&&(n.x=i),n.x+=(i+1)*e,n.y=0):n=null,n},getDistance:function(){return this.currentCoordinates.getDistance(this.originalCoordinates)},setTimeFromQuarters:function(e,t){var n=Math.floor(t/4);e.setHours(n,t%4*15)}}}}}e.$inject=["$rootScope","$timeout","$log","Preferences","Calendar","CalendarSettings","Component"],angular.module("SOGo.SchedulerUI").directive("sgDraggableCalendarBlock",e)}(),function(){function e(e,t,n){var i=this;this.$onInit=function(){e.$watch(function(){return i.component?{start:i.component.start,end:i.component.end,attendees:_.keys(i.component.$attendees.$futureFreebusyData)}:null},function(e,t){e&&e.attendees&&e.attendees.length&&n.all(_.values(i.component.$attendees.$futureFreebusyData)).then(function(){i.onUpdate()})},!0)},this.onUpdate=function(){}}e.$inject=["$scope","$element","$q"],angular.module("SOGo.SchedulerUI").directive("sgFreebusy",function(){return{restrict:"C",scope:{},bindToController:{component:"=sgComponent"},controller:e}})}(),function(){function e(e,t){var c=this;this.$postLink=function(){var a,o=[],r=[],s=[];this.parentController=e.parentController,a=this.parentController.onUpdate,_.forEach(t.find("div"),function(e){e.className.startsWith("hour")?o.push(e):e.className.startsWith("quarter")?r.push(e):e.className.startsWith("busy")&&s.push(e)}),this.parentController.onUpdate=function(){var e=c.attendee.uid?c.attendee.freebusy[c.day]:null;c.attendee.uid||_.forEach(o,function(e){e.classList.add("sg-no-freebusy")});for(var t=0;t<24;t++)for(var n=0;n<4;n++){var i=4*t+n;c.coversFreebusy(t,n)?r[i].classList.add("event"):r[i].classList.remove("event"),e&&e[t][n]?s[i].classList.remove("ng-hide"):s[i].classList.add("ng-hide")}angular.bind(c.parentController,a)()}},this.coversFreebusy=function(e,t){return c.attendees.coversFreeBusy(c.day,e,t)}}e.$inject=["$scope","$element"],angular.module("SOGo.SchedulerUI").directive("sgFreebusyDay",function(){return{restrict:"E",require:"^^sgFreebusy",bindToController:{day:"=sgDay",attendees:"=sgAttendees",attendee:"=sgAttendee"},replace:!0,template:function(e,t){for(var n=[""],i=0;i<24;i++){n.push('
');for(var a=0;a<4;a++)n.push('
'),n.push('
'),n.push("
");n.push("
")}return n.push(" \x3c!-- divider --\x3e"),n.push("
"),n.join("")},link:function(e,t,n,i){e.parentController=i},controller:e,controllerAs:"$ctrl"}})}(),function(){"use strict";function e(r,s,c,l){var d,u=this,h=s.controller("sgCalendarScrollView");r.nowDay=null,r.lineElement=null,r.updateLine=function(e){var t,n,i,a,o=new Date;o.setTime(o.getTime()+60*o.getTimezoneOffset()*1e3+1e3*l.defaults.UserTimeZoneSecondsFromGMT),t=o.getDayString(),a=o.getHours(),n=4*r.quarterHeight,o=o.getMinutes(),i=r.quarterHeight/15,a=parseInt(a*n+o*i-1),!e&&t==r.nowDay||(r.lineElement&&r.lineElement.remove(),r.lineElement=function(t,e){var n=angular.element("");h.isMultiColumn?e&&e[0].attributes["sg-day"].value==t&&s.append(n):_.forEach(e,function(e){e.attributes["sg-day"].value==t&&angular.element(e).find("div").eq(0).append(n)});return n}(t,r.days),r.nowDay=t);r.lineElement&&(r.lineElement.css("top",a+"px"),d=c(angular.bind(u,r.updateLine),6e4))},r.$on("$destroy",function(){d&&c.cancel(d)})}e.$inject=["$scope","$element","$timeout","Preferences"],angular.module("SOGo.SchedulerUI").directive("sgNowLine",function(){return{restrict:"C",require:"^^sgCalendarScrollView",link:function(n,e,t,i){function a(){return e.find("sg-calendar-day")}var o=n.$watch(function(){return i.quarterHeight},function(e){var t;e&&(o(),n.quarterHeight=e,t=n.$watch(a,function(e){e.length&&(t(),n.days=e,n.updateLine())}))})},controller:e}})}(); //# sourceMappingURL=Scheduler.services.js.map \ No newline at end of file diff --git a/UI/WebServerResources/js/Scheduler.services.js.map b/UI/WebServerResources/js/Scheduler.services.js.map index 198933ff7..d116d8a52 100644 --- a/UI/WebServerResources/js/Scheduler.services.js.map +++ b/UI/WebServerResources/js/Scheduler.services.js.map @@ -1 +1 @@ -{"version":3,"file":"Scheduler.services.js","sources":["Scheduler/Attendees.service.js","Scheduler/Calendar.service.js","Scheduler/Component.service.js","Scheduler/CalendarController.js","Scheduler/CalendarListController.js","Scheduler/CalendarsController.js","Scheduler/ComponentController.js","Scheduler/sgCalendarDay.directive.js","Scheduler/sgCalendarDayBlock.directive.js","Scheduler/sgCalendarDayTable.directive.js","Scheduler/sgCalendarGhost.directive.js","Scheduler/sgCalendarListEvent.directive.js","Scheduler/sgCalendarListItem.directive.js","Scheduler/sgCalendarMonthDay.directive.js","Scheduler/sgCalendarMonthEvent.directive.js","Scheduler/sgCalendarPrintStylesheet.directive.js","Scheduler/sgCalendarScrollView.directive.js","Scheduler/sgCategoryStylesheet.directive.js","Scheduler/sgDraggableCalendarBlock.directive.js","Scheduler/sgFreebusy.directive.js","Scheduler/sgFreebusyDay.directive.js","Scheduler/sgNowLine.directive.js"],"names":["Attendees","component","this","attendees","_","forEach","attendee","image","$gravatar","email","workDaysOnly","slotStartTimeLimit","Date","setMinutes","setHours","dayStartHour","slotEndTimeLimit","dayEndHour","$days","$futureFreebusyData","updateFreeBusyCoverage","updateFreeBusy","length","getDays","$factory","$q","$timeout","$log","Settings","ROLES","Preferences","User","Card","Gravatar","Resource","angular","extend","$settings","$User","$Preferences","$Card","$$resource","activeUser","parseInt","defaults","SOGoDayStartTime","split","SOGoDayEndTime","module","e","constant","REQ_PARTICIPANT","OPT_PARTICIPANT","NON_PARTICIPANT","CHAIR","factory","timeToQuarters","dateTime","getHours","Math","ceil","getMinutes","prototype","getLength","initOrganizer","calendar","_this","promise","isSubscription","$filter","owner","then","results","organizer","uid","name","cn","c_email","when","updateFreeBusyAttendee","add","card","options","list","organizerCalendar","$isList","expandable","$find","container","c_name","$id","listId","refs","ref","c_cn","$preferredEmail","partial","role","partstat","c_uid","$avatarIcon","find","o","push","domain","c_domain","isMSExchange","ismsexchange","isGroup","isExpandableGroup","isResource","isresource","$$email","SOGoLDAPGroupExpansionEnabled","$members","members","findIndex","nextRole","roles","values","index","hasAttendee","emails","value","isDefined","remove","currentAttendee","splice","roundedStart","roundedEnd","startQuarter","endQuarter","freebusy","start","end","getTime","isAllDay","beginOfDay","daysUpTo","date","hourKey","currentDay","getDate","dayKey","getDayString","toString","isUndefined","addMinutes","coversFreeBusy","day","hour","quarter","refDate","sd","ed","formatFcn","delta","addDays","$mdDateLocaleProvider","formatDate","$dateFormat","SOGoLongDateFormat","stringWithSeparator","promises","filter","all","resource","days","params","sday","map","eday","userResource","intersection","keys","fetch","data","i","forwardFindDate","currentStart","foundDate","maxOffset","endLimit","duration","offset","firstStep","floor","currentEntries","indexOf","startLimit","foundTime","testDuration","setTime","forwardAdjustCurrentStart","getDay","backwardFindDate","lastIndexOf","testOffset","debug","backwardAdjustCurrentStart","findSlot","direction","findDate","adjustCurrentStart","clone","setSeconds","step","catch","err","mergeFreebusy","startDay","j","attendeeEntries","flatMap","count","reject","l","Calendar","futureCalendarData","init","id","newCalendarData","create","$unwrap","Component","Acl","$Component","$$Acl","$view","EventDragDayLength","EventDragHorizontalOffset","ConflictHTTPErrorCode","$defaultCalendar","SOGoDefaultCalendar","$findAll","active","$add","isWebCalendar","$webcalendars","$subscriptions","$calendars","sibling","localeCompare","settings","FoldersOrder","saveFoldersOrder","$reloadAll","writable","calendars","union","isOwned","acls","objectCreator","calendarData","group","login","$get","$getIndex","$subscribe","path","$addWebCalendar","url","d","defer","urls","webCalendarURL","post","isEditable","isRemote","JSON","stringify","undefined","resolve","response","status","reloadWebCalendars","$error","statusText","$deleteComponents","components","pid","uids","saveFoldersActivation","ids","request","folders","color","$acl","isSuperUser","$shadowData","$omit","$futureCalendarData","getClassName","base","$rename","$save","$delete","$reset","key","save","setCredentials","username","password","export","realOwnerId","type","filename","webDavICSURL","ownerPaths","substring","join","open","$setActivation","$getComponent","componentId","recurrenceId","isError","isObject","copy","futureComponentData","newComponentData","newguid","isNew","$rootScope","Component_STATUS","STATUS","$Attendees","timeFormat","$query","search","$queryEvents","sort","asc","filterpopup","$queryTasks","$refreshTimeout","$ghost","EventsFilterState","TasksFilterState","EventsSortingState","TasksSortingState","show_completed","ShowCompletedTasks","$categories","SOGoCalendarCategoriesColors","SOGoTimeFormat","NOT_LOADED","DELAYED_LOADING","LOADING","LOADED","DELAYED_MS","$selectedCount","$events","event","selected","$tasks","task","$startRefreshTimeout","cancel","f","refreshViewCheck","SOGoRefreshViewCheck","bind","$emit","timeInterval","$isLoading","$loaded","now","month","getMonth","year","getFullYear","queryKey","capitalize","dirty","otherType","$unwrapCollection","calendarId","occurrenceId","filterCategories","query","re","RegExp","category","saveSelectedList","componentType","$eventsBlocksForView","view","viewAction","startDate","endDate","firstDayOfWeek","SOGoFirstDayOfWeek","beginOfWeek","setDate","setMonth","endOfWeek","$eventsBlocks","dayDates","dayNumbers","deferred","toLowerCase","views","reduceComponent","objects","eventData","componentData","zipObject","eventsFields","c_startdate","getHourString","blocks","associateComponent","block","nbr","isFirst","$views","viewIndex","allDayBlocks","reduce","events","flatten","dayIndex","dayNumber","viewData","calendarName","fields","invokeMap","monthData","dayData","size","$resetGhost","pointerHandler","startHour","endHour","$parseDate","dateString","no_time","time","categories","repeat","alarm","action","quantity","unit","reference","relation","isString","round","minutesTo","setDelta","dueDate","due","completedDate","completed","c_category","$isRecurrent","byDayMask","occurrence","frequency","byday","dates","rdate","rdates","interval","monthdays","months","until","$hasCustomRepeat","hasCustomRepeat","match","classification","exec","SOGoCalendarDefaultReminder","$hasAlarm","M","H","D","W","sendAppointmentNotifications","SOGoAppointmentSendEMailNotifications","destinationCalendar","initAttendees","$attendees","isReadOnly","isEditableOccurrence","isInvitation","userHasRSVP","isInvitationOccurrence","isMovable","showPercentComplete","percentComplete","enablePercentComplete","markAsCompleted","dlp","localizedCompletedDate","localizedCompletedTime","formatTime","c_folder","canRemindAttendeesByEmail","addAttachUrl","attachUrl","attachUrls","deleteAttachUrl","$addDueDate","toISOString","$deleteDueDate","$addStartDate","$deleteStartDate","$addRecurrenceDate","$deleteRecurrenceDate","$reply","reply","delegatedTo","$adjust","every","v","extraAttributes","format","startTime","endTime","dueTime","occurrenceOnly","$futureComponentData","error","repeatDescription","localizedString","toUpperCase","alarmDescription","copyTo","destination","moveTo","CalendarController","$scope","$state","$stateParams","$mdDialog","sgHotkeys","stateEventsBlocks","deregisterCalendarsList","vm","hotkeys","_goToPeriod","$event","selectedDate","isSelectableDay","changeDate","_formatDate","replace","_updateView","asDate","$onInit","expandedAllDays","selectableDays","SOGoCalendarWeekdays","createHotkey","description","callback","args","changeView","registerHotkey","$on","deregisterHotkey","toggleAllDays","newDate","element","currentTarget","attr","go","printView","centerIsClose","show","parent","document","body","clickOutsideToClose","escapeToClose","templateUrl","controller","PrintController","controllerAs","locals","calendarView","visibleList","includes","$window","Dialog","orientations","week","multicolumnday","pageSize","workingHoursOnly","orientation","addClass","$watch","newSize","oldSize","removeClass","$onDestroy","print","stopPropagation","close","hide","$inject","CalendarListController","focus","CalendarSettings","sortLabels","selectComponentType","reload","unselectComponents","searchMode","mode","openComponent","viewable","targetEvent","stateComponent","newComponent","baseComponent","updateComponentFromGhost","calendarNumber","activeCalendars","RecurrentComponentDialogController","updateThisOccurrence","onComponentAdjustError","updateAllOccurrences","message","AttendeeConflictDialogController","conflictError","ignoreConflicts","originalCoordinates","originalEventCoordinates","coordinates","currentEventCoordinates","summary","finally","getDelta","originalCalendar","isException","getAlarms","template","title","location","priority","tasks","selectedList","multiple","selectAll","toggleComponentSelection","preventDefault","confirmDeleteSelectedComponents","confirm","ok","openEvent","openTask","filteredBy","field","sortedBy","cancelSearch","SelectedList","ascending","CalendarsController","$mdMedia","$mdToast","sgConstant","service","sortableMode","sortableCalendars","scrollableContainer","containment","orderChanged","accept","sourceItemHandleScope","destSortableScope","destItemScope","sortableScope","SOGoCalendarCategories","asCSSIdentifier","pick","newList","oldList","commonList","intersectionBy","oldObject","isEqual","closed","toggleSortableMode","resetSort","newCalendar","ev","prompt","UserLogin","noop","addWebCalendar","WebCalendarAuthDialogController","scope","hostname","formatted","authenticate","form","$valid","required","reason","$setValidity","inputType","subscribeToFolder","simple","textContent","position","toastPosition","hideDelay","ComponentController","AddressBook","Account","_newMessage","recipients","accounts","account","onCompleteDeferred","$getMailboxes","mailboxes","$newMessage","editable","to","subject","onComplete","stateParent","stateAccount","stateMessage","onCompletePromise","calendarService","highPriority","cardFilter","$filterAll","newMessageWithAllRecipients","newMessageWithRecipient","edit","editAllOccurrences","replyAllOccurrences","deleteOccurrence","deleteAllOccurrences","toggleRawSource","ComponentRawSourceDialogController","copySelectedComponent","moveSelectedComponent","ComponentEditorController","$element","oldStartDate","oldEndDate","dayStartTime","dayEndTime","scrollToStart","scrollLeft","attendeesEditor","containerElement","querySelector","dayElement","offsetLeft","adjustStartTime","adjustEndTime","has","showRecurrenceEditor","showAttendeesEditor","attendeeConflictError","hours","toggleRecurrenceEditor","toggleAttendeesEditor","recurrenceMonthDaysAreRequired","frequencies","repeatFrequencies","changeFrequency","changeCalendar","addAttendee","address","emailRE","createCard","str","searchText","cards","trim","addCard","newCard","charCodeAt","test","charAt","expandAttendee","member","removeAttendee","$setDirty","defaultIconForAttendee","nextSlot","previousSlot","priorityLevel","changeAlarmRelation","alarmRelation","onAlarmChange","reset","$setPristine","addStartDate","removeStartDate","addDueDate","removeDueDate","adjustAllDay","valueOf","adjustDueTime","sgCalendarDayController","dayString","directive","restrict","sgCalendarDayBlock","clickBlock","tElem","tAttrs","p","link","iElement","attrs","left","pc","siblings","right","css","c_isallday","userState","showCalendarName","c_owner","c_isopaque","c_status","sgCalendarGhost","require","ctrls","domElement","calendarDayCtrl","scrollViewCtrl","originalCalendarNumber","deregisterDragStart","deregisterDrag","showGhost","isRelative","durationLeft","maxDuration","quartersToHM","quarterHeight","topOffset","getEndTime","deregisterDragEnd","forEachRight","classList","c","quarters","minutes","mins","sgCalendarListEvent","clickComponent","userstate","sgCalendarListItemController","$mdPanel","$mdSidenav","$ctrl","editMode","$postLink","clickableElement","nameElements","getElementsByClassName","inputContainer","inputElement","moreOptionsButton","last","updateCalendarName","innerHTML","editFolder","srcEvent","select","panel","saveFolder","disabled","revertEditing","confirmDelete","alert","showMenu","panelPosition","newPanelPosition","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","panelAnimation","newPanelAnimation","openFrom","withAnimation","animation","FADE","config","attachTo","itemCtrl","bindToController","MenuController","trapFocus","focusOnOpen","mdPanelRef","FileUploader","$menuCtrl","showOnly","showAll","showProperties","PropertiesDialogController","srcCalendar","saveProperties","showLinks","LinksDialogController","importCalendar","CalendarImportDialogController","folder","filterByExtension","item","isTextFile","uploader","ApplicationBaseURL","autoUpload","queueLimit","filters","fn","onSuccessItem","headers","msg","imported","onErrorItem","share","$users","usersWithACL","users","panelRef","panelEl","one","sgPrintStylesheetController","sizes","portrait","letter","legal","a4","landscape","margins","$watchGroup","units","pageMargin","viewportHeight","hideHoursStart","hideHoursEnd","totalHours","clipTop","viewHeight","hourHeight","eventsPositions","sgCalendarScrollView","$document","$mdGesture","sgCalendarScrollViewController","isMultiColumn","sgScrollView","getQuarterHeight","scrollStep","getDayNumbers","maxX","getMaxColumns","onDragStart","deregisterDragStop","onDragEnd","bindedUpdateCoordinates","updateCoordinates","bindedUpdateFromPointerHandler","updateFromPointerHandler","on","hourCell","quartersOffset","getElementById","scrollTop","offsetTop","$destroy","off","height","hour0","hour23","getDayDimensions","viewLeft","width","leftOffset","tileHeader","nodes","domRect","getBoundingClientRect","clientHeight","top","getElementsByTagName","el","attributes","mdGridList","dayDimensions","x","y","dayHeight","dayWidth","daysOffset","scrollY","pointerCoordinates","getContainerBasedCoordinates","lastScroll","minY","ngModel","sgDraggableCalendarBlock","isLastBlock","dragGrip","topGrip","bottomGrip","blockIndex","isFirstBlock","parentNode","tagName","leftGrip","append","rightGrip","initGrips","onDragDetect","scrollableZone","target","scrollHeight","rect","pageX","dragMode","className","SOGoEventDragPointerHandler","initFromEvent","onDrag","updateFromEvent","pointer","dragHasStarted","b","dragging","SOGoCoordinates","SOGoEventDragEventCoordinates","eventType","setEventType","otherCoordinates","getDistance","sqrt","weekDay","initFromBlock","prevDayNumber","sumBy","currentDayNumber","initFromCalendar","_quartersToHM","getStartTime","currentCoordinates","originalViewCoordinates","currentViewCoordinates","getEventViewCoordinates","isMonthly","pageY","newEventCoordinates","setTimeFromQuarters","updateEventCoordinates","isHourCell","hasClass","parseDate","newData","prepareWithEventType","newDuration","deltaDays","deltaQuarters","clientWidth","method","multiday","getEventMultiDayViewCoordinates","multiday-allday","getEventMultiDayAllDayViewCoordinates","monthly","getEventMonthlyViewCoordinates","unknown","pxCoordinates","maxY","minX","daysY","sgFreebusyController","newAttrs","oldAttrs","onUpdate","sgFreebusyDayController","parentControllerOnUpdate","busys","parentController","div","startsWith","freebusys","coversFreebusy","tElement","sgNowLineController","updater","nowDay","lineElement","updateLine","force","minuteHeight","$lineElement","eq","_addLine","iAttr","sgCalendarScrollViewCtrl","_getDays","_unwatchView","_unwatchDays"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Scheduler.services.js","sources":["Scheduler/Attendees.service.js","Scheduler/Calendar.service.js","Scheduler/Component.service.js","Scheduler/CalendarController.js","Scheduler/CalendarListController.js","Scheduler/CalendarsController.js","Scheduler/ComponentController.js","Scheduler/sgCalendarDay.directive.js","Scheduler/sgCalendarDayBlock.directive.js","Scheduler/sgCalendarDayTable.directive.js","Scheduler/sgCalendarGhost.directive.js","Scheduler/sgCalendarListEvent.directive.js","Scheduler/sgCalendarListItem.directive.js","Scheduler/sgCalendarMonthDay.directive.js","Scheduler/sgCalendarMonthEvent.directive.js","Scheduler/sgCalendarPrintStylesheet.directive.js","Scheduler/sgCalendarScrollView.directive.js","Scheduler/sgCategoryStylesheet.directive.js","Scheduler/sgDraggableCalendarBlock.directive.js","Scheduler/sgFreebusy.directive.js","Scheduler/sgFreebusyDay.directive.js","Scheduler/sgNowLine.directive.js"],"names":["Attendees","component","this","attendees","_","forEach","attendee","image","$gravatar","email","workDaysOnly","slotStartTimeLimit","Date","setMinutes","setHours","dayStartHour","slotEndTimeLimit","dayEndHour","$days","$futureFreebusyData","updateFreeBusyCoverage","updateFreeBusy","length","getDays","$factory","$q","$timeout","$log","Settings","ROLES","Preferences","User","Card","Gravatar","Resource","angular","extend","$settings","$User","$Preferences","$Card","$$resource","activeUser","parseInt","defaults","SOGoDayStartTime","split","SOGoDayEndTime","module","e","constant","REQ_PARTICIPANT","OPT_PARTICIPANT","NON_PARTICIPANT","CHAIR","factory","timeToQuarters","dateTime","getHours","Math","ceil","getMinutes","prototype","getLength","initOrganizer","calendar","_this","promise","isSubscription","$filter","owner","then","results","organizer","uid","name","cn","c_email","when","updateFreeBusyAttendee","add","card","options","list","organizerCalendar","$isList","expandable","$find","container","c_name","$id","listId","refs","ref","c_cn","$preferredEmail","partial","role","partstat","c_uid","$avatarIcon","find","o","push","domain","c_domain","isMSExchange","ismsexchange","isGroup","isExpandableGroup","isResource","isresource","$$email","SOGoLDAPGroupExpansionEnabled","$members","members","findIndex","nextRole","roles","values","index","hasAttendee","emails","value","isDefined","remove","currentAttendee","splice","roundedStart","roundedEnd","startQuarter","endQuarter","freebusy","start","end","getTime","isAllDay","beginOfDay","daysUpTo","date","hourKey","currentDay","getDate","dayKey","getDayString","toString","isUndefined","addMinutes","coversFreeBusy","day","hour","quarter","refDate","sd","ed","formatFcn","delta","addDays","$mdDateLocaleProvider","formatDate","$dateFormat","SOGoLongDateFormat","stringWithSeparator","promises","filter","all","resource","days","params","sday","map","eday","userResource","intersection","keys","fetch","data","i","forwardFindDate","currentStart","foundDate","maxOffset","endLimit","duration","offset","firstStep","floor","currentEntries","indexOf","startLimit","foundTime","testDuration","setTime","forwardAdjustCurrentStart","getDay","backwardFindDate","lastIndexOf","testOffset","debug","backwardAdjustCurrentStart","findSlot","direction","findDate","adjustCurrentStart","clone","setSeconds","step","catch","err","mergeFreebusy","startDay","j","attendeeEntries","flatMap","count","reject","l","Calendar","futureCalendarData","init","id","newCalendarData","create","$unwrap","Component","Acl","$Component","$$Acl","$view","EventDragDayLength","EventDragHorizontalOffset","ConflictHTTPErrorCode","$defaultCalendar","SOGoDefaultCalendar","$findAll","active","$add","isWebCalendar","$webcalendars","$subscriptions","$calendars","sibling","localeCompare","settings","FoldersOrder","saveFoldersOrder","$reloadAll","writable","calendars","union","isOwned","acls","objectCreator","calendarData","group","login","$get","$getIndex","$subscribe","path","$addWebCalendar","url","d","defer","urls","webCalendarURL","post","isEditable","isRemote","JSON","stringify","undefined","resolve","response","status","reloadWebCalendars","$error","statusText","$deleteComponents","components","pid","uids","saveFoldersActivation","ids","request","folders","color","$acl","isSuperUser","$shadowData","$omit","$futureCalendarData","getClassName","base","$rename","$save","$delete","$reset","key","save","setCredentials","username","password","export","realOwnerId","type","filename","webDavICSURL","ownerPaths","substring","join","open","$setActivation","$getComponent","componentId","recurrenceId","isError","isObject","copy","futureComponentData","newComponentData","newguid","isNew","$rootScope","Component_STATUS","STATUS","$Attendees","timeFormat","$query","search","$queryEvents","sort","asc","filterpopup","$queryTasks","$refreshTimeout","$ghost","EventsFilterState","TasksFilterState","EventsSortingState","TasksSortingState","show_completed","ShowCompletedTasks","$categories","SOGoCalendarCategoriesColors","SOGoTimeFormat","NOT_LOADED","DELAYED_LOADING","LOADING","LOADED","DELAYED_MS","$selectedCount","$events","event","selected","$tasks","task","$startRefreshTimeout","cancel","f","refreshViewCheck","SOGoRefreshViewCheck","bind","$emit","timeInterval","$isLoading","$loaded","now","month","getMonth","year","getFullYear","queryKey","capitalize","dirty","otherType","$unwrapCollection","calendarId","occurrenceId","filterCategories","query","re","RegExp","category","saveSelectedList","componentType","$eventsBlocksForView","view","viewAction","startDate","endDate","firstDayOfWeek","SOGoFirstDayOfWeek","beginOfWeek","setDate","setMonth","endOfWeek","$eventsBlocks","dayDates","dayNumbers","deferred","toLowerCase","views","reduceComponent","objects","eventData","componentData","zipObject","eventsFields","c_startdate","getHourString","blocks","associateComponent","block","nbr","isFirst","$views","viewIndex","allDayBlocks","reduce","events","flatten","dayIndex","dayNumber","viewData","calendarName","fields","invokeMap","monthData","dayData","size","$resetGhost","pointerHandler","startHour","endHour","$parseDate","dateString","no_time","time","categories","repeat","alarm","action","quantity","unit","reference","relation","isString","round","minutesTo","setDelta","dueDate","due","completedDate","completed","c_category","$isRecurrent","byDayMask","occurrence","frequency","byday","dates","rdate","rdates","interval","monthdays","months","until","$hasCustomRepeat","hasCustomRepeat","match","classification","exec","SOGoCalendarDefaultReminder","$hasAlarm","M","H","D","W","sendAppointmentNotifications","SOGoAppointmentSendEMailNotifications","destinationCalendar","initAttendees","$attendees","isReadOnly","isEditableOccurrence","isInvitation","userHasRSVP","isInvitationOccurrence","isMovable","showPercentComplete","percentComplete","enablePercentComplete","markAsCompleted","dlp","localizedCompletedDate","localizedCompletedTime","formatTime","c_folder","canRemindAttendeesByEmail","addAttachUrl","attachUrl","attachUrls","deleteAttachUrl","$addDueDate","toISOString","$deleteDueDate","$addStartDate","$deleteStartDate","$addRecurrenceDate","$deleteRecurrenceDate","$reply","reply","delegatedTo","$adjust","every","v","extraAttributes","format","startTime","endTime","dueTime","occurrenceOnly","$futureComponentData","error","repeatDescription","localizedString","toUpperCase","alarmDescription","copyTo","destination","moveTo","CalendarController","$scope","$state","$stateParams","$mdDialog","sgHotkeys","stateEventsBlocks","deregisterCalendarsList","vm","hotkeys","_goToPeriod","$event","selectedDate","isSelectableDay","changeDate","_formatDate","replace","_updateView","asDate","$onInit","expandedAllDays","selectableDays","SOGoCalendarWeekdays","createHotkey","description","callback","args","changeView","registerHotkey","$on","deregisterHotkey","toggleAllDays","newDate","element","currentTarget","attr","go","printView","centerIsClose","show","parent","document","body","clickOutsideToClose","escapeToClose","templateUrl","controller","PrintController","controllerAs","locals","calendarView","visibleList","includes","$window","Dialog","orientations","week","multicolumnday","pageSize","workingHoursOnly","orientation","addClass","$watch","newSize","oldSize","removeClass","$onDestroy","print","stopPropagation","close","hide","$inject","CalendarListController","focus","CalendarSettings","sortLabels","selectComponentType","reload","unselectComponents","searchMode","mode","openComponent","viewable","targetEvent","stateComponent","newComponent","baseComponent","updateComponentFromGhost","calendarNumber","activeCalendars","RecurrentComponentDialogController","updateThisOccurrence","onComponentAdjustError","updateAllOccurrences","message","AttendeeConflictDialogController","conflictError","ignoreConflicts","originalCoordinates","originalEventCoordinates","coordinates","currentEventCoordinates","summary","finally","getDelta","originalCalendar","isException","getAlarms","template","title","location","priority","tasks","selectedList","multiple","selectAll","toggleComponentSelection","preventDefault","confirmDeleteSelectedComponents","confirm","ok","openEvent","openTask","filteredBy","field","sortedBy","cancelSearch","SelectedList","ascending","CalendarsController","$mdMedia","$mdToast","sgConstant","service","sortableMode","sortableCalendars","scrollableContainer","containment","orderChanged","accept","sourceItemHandleScope","destSortableScope","destItemScope","sortableScope","SOGoCalendarCategories","asCSSIdentifier","pick","newList","oldList","commonList","intersectionBy","oldObject","isEqual","closed","toggleSortableMode","resetSort","newCalendar","ev","prompt","UserLogin","noop","addWebCalendar","WebCalendarAuthDialogController","scope","hostname","formatted","authenticate","form","$valid","required","reason","$setValidity","inputType","subscribeToFolder","simple","textContent","position","toastPosition","hideDelay","ComponentController","AddressBook","Account","_newMessage","recipients","accounts","account","onCompleteDeferred","$getMailboxes","mailboxes","$newMessage","editable","to","subject","onComplete","stateParent","stateAccount","stateMessage","onCompletePromise","calendarService","highPriority","cardFilter","$filterAll","newMessageWithAllRecipients","newMessageWithRecipient","edit","editAllOccurrences","replyAllOccurrences","deleteOccurrence","deleteAllOccurrences","toggleRawSource","ComponentRawSourceDialogController","copySelectedComponent","moveSelectedComponent","ComponentEditorController","$element","oldStartDate","oldEndDate","dayStartTime","dayEndTime","scrollToStart","scrollLeft","attendeesEditor","containerElement","querySelector","dayElement","offsetLeft","adjustStartTime","adjustEndTime","has","showRecurrenceEditor","showAttendeesEditor","attendeeConflictError","hours","toggleRecurrenceEditor","toggleAttendeesEditor","recurrenceMonthDaysAreRequired","frequencies","repeatFrequencies","changeFrequency","changeCalendar","addAttendee","address","emailRE","createCard","str","searchText","cards","trim","addCard","newCard","charCodeAt","test","charAt","expandAttendee","member","removeAttendee","$setDirty","defaultIconForAttendee","nextSlot","previousSlot","priorityLevel","changeAlarmRelation","alarmRelation","onAlarmChange","reset","$setPristine","addStartDate","removeStartDate","addDueDate","removeDueDate","adjustAllDay","valueOf","adjustDueTime","sgCalendarDayController","dayString","directive","restrict","sgCalendarDayBlock","clickBlock","tElem","tAttrs","p","link","iElement","attrs","left","pc","siblings","right","css","c_isallday","userState","showCalendarName","c_owner","c_isopaque","c_status","sgCalendarGhost","require","ctrls","domElement","calendarDayCtrl","scrollViewCtrl","originalCalendarNumber","deregisterDragStart","deregisterDrag","showGhost","isRelative","durationLeft","maxDuration","quartersToHM","quarterHeight","topOffset","getEndTime","deregisterDragEnd","forEachRight","classList","c","quarters","minutes","mins","sgCalendarListEvent","clickComponent","userstate","sgCalendarListItemController","$mdPanel","$mdSidenav","$ctrl","editMode","$postLink","clickableElement","nameElements","getElementsByClassName","inputContainer","inputElement","moreOptionsButton","last","updateCalendarName","innerHTML","editFolder","srcEvent","select","panel","saveFolder","disabled","revertEditing","confirmDelete","alert","showMenu","panelPosition","newPanelPosition","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","panelAnimation","newPanelAnimation","openFrom","withAnimation","animation","FADE","config","attachTo","itemCtrl","bindToController","MenuController","trapFocus","focusOnOpen","mdPanelRef","FileUploader","$menuCtrl","showOnly","showAll","showProperties","PropertiesDialogController","srcCalendar","saveProperties","showLinks","LinksDialogController","importCalendar","CalendarImportDialogController","folder","filterByExtension","item","isTextFile","uploader","ApplicationBaseURL","autoUpload","queueLimit","filters","fn","onSuccessItem","headers","msg","imported","onErrorItem","share","$users","usersWithACL","users","panelRef","panelEl","one","sgPrintStylesheetController","sizes","portrait","letter","legal","a4","landscape","margins","$watchGroup","units","pageMargin","viewportHeight","hideHoursStart","hideHoursEnd","totalHours","clipTop","viewHeight","hourHeight","eventsPositions","sgCalendarScrollView","$document","$mdGesture","sgCalendarScrollViewController","isMultiColumn","sgScrollView","getQuarterHeight","scrollStep","getDayNumbers","maxX","getMaxColumns","onDragStart","deregisterDragStop","onDragEnd","bindedUpdateCoordinates","updateCoordinates","bindedUpdateFromPointerHandler","updateFromPointerHandler","on","hourCell","quartersOffset","getElementById","scrollTop","offsetTop","$destroy","off","height","hour0","hour23","getDayDimensions","viewLeft","width","leftOffset","tileHeader","nodes","domRect","getBoundingClientRect","clientHeight","top","getElementsByTagName","el","attributes","mdGridList","dayDimensions","x","y","dayHeight","dayWidth","daysOffset","scrollY","pointerCoordinates","getContainerBasedCoordinates","lastScroll","minY","ngModel","sgDraggableCalendarBlock","isLastBlock","dragGrip","topGrip","bottomGrip","blockIndex","isFirstBlock","parentNode","tagName","leftGrip","append","rightGrip","initGrips","onDragDetect","scrollableZone","target","scrollHeight","rect","pageX","dragMode","className","SOGoEventDragPointerHandler","initFromEvent","onDrag","updateFromEvent","pointer","dragHasStarted","b","dragging","SOGoCoordinates","SOGoEventDragEventCoordinates","eventType","setEventType","otherCoordinates","getDistance","sqrt","weekDay","initFromBlock","prevDayNumber","sumBy","currentDayNumber","initFromCalendar","_quartersToHM","getStartTime","currentCoordinates","originalViewCoordinates","currentViewCoordinates","getEventViewCoordinates","isMonthly","pageY","newEventCoordinates","setTimeFromQuarters","updateEventCoordinates","isHourCell","hasClass","parseDate","newData","prepareWithEventType","newDuration","deltaDays","deltaQuarters","clientWidth","method","multiday","getEventMultiDayViewCoordinates","multiday-allday","getEventMultiDayAllDayViewCoordinates","monthly","getEventMonthlyViewCoordinates","unknown","pxCoordinates","maxY","minX","daysY","sgFreebusyController","newAttrs","oldAttrs","onUpdate","sgFreebusyDayController","parentControllerOnUpdate","busys","parentController","div","startsWith","freebusys","coversFreebusy","tElement","sgNowLineController","updater","nowDay","lineElement","updateLine","force","minuteHeight","getTimezoneOffset","UserTimeZoneSecondsFromGMT","$lineElement","eq","_addLine","iAttr","sgCalendarScrollViewCtrl","_getDays","_unwatchView","_unwatchDays"],"mappings":"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"} \ No newline at end of file