10 lines
62 KiB
JavaScript
10 lines
62 KiB
JavaScript
/*
|
|
* Kendo UI v2015.3.1111 (http://www.telerik.com/kendo-ui)
|
|
* Copyright 2015 Telerik AD. All rights reserved.
|
|
*
|
|
* Kendo UI commercial licenses may be obtained at
|
|
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
|
|
* If you do not own a commercial license, this file shall be governed by the trial license terms.
|
|
*/
|
|
!function(e,define){define(["./kendo.dropdownlist.min","./kendo.editable.min","./kendo.multiselect.min","./kendo.window.min","./kendo.datetimepicker.min","./kendo.scheduler.recurrence.min","./kendo.scheduler.view.min","./kendo.scheduler.dayview.min","./kendo.scheduler.agendaview.min","./kendo.scheduler.monthview.min","./kendo.scheduler.timelineview.min","./kendo.mobile.actionsheet.min","./kendo.mobile.pane.min","./kendo.pdf.min"],e)}(function(){return function(e,t){function n(e,t){return t=t||"",e.startTimezone&&(t=e.startTimezone,e.endTimezone&&(t+=" | "+e.endTimezone)),t}function i(e,t){var n=t.timezone;n&&(e[P.attr("timezone")]=n)}function o(e,t){var n,i=t.model.fields[t.field].validation;i&&(n=i.dateCompare,n&&q(n)&&n.message&&(e[P.attr("dateCompare-msg")]=n.message))}function r(e,t){return function(n){return n=e(n),s(n,"apply",t),n||[]}}function a(e,t){return function(n){return n&&("[object Array]"===Q.call(n)||n instanceof P.data.ObservableArray||(n=[n])),s(n,"remove",t,!0),n=e(n),n||[]}}function s(e,t,n,i){var o,r,a;for(e=e||[],r=0,a=e.length;a>r;r++)o=e[r],i?o.startTimezone||o.endTimezone?n?(o.start=P.timezone.convert(o.start,o.startTimezone||o.endTimezone,n),o.end=P.timezone.convert(o.end,o.endTimezone||o.startTimezone,n),o.start=P.timezone[t](o.start,n),o.end=P.timezone[t](o.end,n)):(o.start=P.timezone[t](o.start,o.startTimezone||o.endTimezone),o.end=P.timezone[t](o.end,o.endTimezone||o.startTimezone)):n&&(o.start=P.timezone[t](o.start,n),o.end=P.timezone[t](o.end,n)):o.startTimezone||o.endTimezone?(o.start=P.timezone[t](o.start,o.startTimezone||o.endTimezone),o.end=P.timezone[t](o.end,o.endTimezone||o.startTimezone),n&&(o.start=P.timezone.convert(o.start,o.startTimezone||o.endTimezone,n),o.end=P.timezone.convert(o.end,o.endTimezone||o.startTimezone,n))):n&&(o.start=P.timezone[t](o.start,n),o.end=P.timezone[t](o.end,n)),i&&delete o.uid;return e}function l(e,t){for(var n,i=e.length,o=0;i>o;o++)if(n=e[o],n.uid===t)return n}function c(e,t,n){return e=n?P.timezone.convert(e,t,n):P.timezone.remove(e,t)}function u(e){var t,n,i,o,r,a,s,l,u,d,h,f;return e.filter("[name=end]").length&&(t=e.closest(".k-scheduler-edit-form"),n=t.find("[name=start]:visible"),i=t.find("[name=end]:visible"),i[0]&&n[0]&&(a=P.widgetInstance(n,P.ui),s=P.widgetInstance(i,P.ui),l=t.data("kendoEditable"),u=l?l.options.model:null,a&&s?(o=a.value(),r=s.value()):(o=P.parseDate(n.val()),r=P.parseDate(i.val())),o&&r))?(u&&(d=n.attr(P.attr("timezone")),h=u.startTimezone,f=u.endTimezone,h=h||f,f=f||h,h&&(o=c(o,h,d),r=c(r,f,d))),r>=o):!0}function d(e,t,n,i){for(var o=e.length,r=[],a=0;o>a;a++)r=r.concat(e[a].expand(t,n,i));return r}function h(e){return delete e.name,delete e.prefix,delete e.remove,delete e.edit,delete e.add,delete e.navigate,e}function f(t,n){var i,o,r=(t.fields||t)[n],a=["url","email","number","date","boolean"],s=r?r.validation:{},l=P.attr("type"),c=e.inArray,u={};for(i in s)o=s[i],c(i,a)>=0?u[l]=i:P.isFunction(o)||(u[i]=q(o)?o.value||i:o),u[P.attr(i+"-msg")]=o.message;return u}function p(t,n){var i=f(n,t.field);return function(n){e(P.format('<select data-{0}bind="value:{1}">',P.ns,t.field)).appendTo(n).attr(i).kendoDropDownList({dataTextField:t.dataTextField,dataValueField:t.dataValueField,dataSource:t.dataSource,valuePrimitive:t.valuePrimitive,optionLabel:"None",template:P.format('<span class="k-scheduler-mark" style="background-color:#= data.{0}?{0}:"none" #"></span>#={1}#',t.dataColorField,t.dataTextField)})}}function g(t){var n=f(t.model,t.field);return function(t){e('<textarea name="description" class="k-textbox"/>').attr(n).appendTo(t)}}function m(t,n){var i=f(n,t.field);return function(n){e(P.format('<select data-{0}bind="value:{1}">',P.ns,t.field)).appendTo(n).attr(i).kendoMultiSelect({dataTextField:t.dataTextField,dataValueField:t.dataValueField,dataSource:t.dataSource,valuePrimitive:t.valuePrimitive,itemTemplate:P.format('<span class="k-scheduler-mark" style="background-color:#= data.{0}?{0}:"none" #"></span>#={1}#',t.dataColorField,t.dataTextField),tagTemplate:P.format('<span class="k-scheduler-mark" style="background-color:#= data.{0}?{0}:"none" #"></span>#={1}#',t.dataColorField,t.dataTextField)})}}function v(t,n){var i=f(n,t.field);return function(n){var o,r,a="",s=t.dataSource.view();for(o=0,r=s.length;r>o;o++)a+=P.format('<option value="{0}">{1}</option>',P.getter(t.dataValueField)(s[o]),P.getter(t.dataTextField)(s[o]));e(P.format('<select data-{0}bind="value:{1}" multiple="multiple" data-{0}value-primitive="{3}">{2}</select>',P.ns,t.field,a,t.valuePrimitive)).appendTo(n).attr(i)}}function _(e,t){var n,i=e.end.getTime()-e.start.getTime(),o=new Date(e.start.getTime());return P.date.setTime(o,t),n=new Date(o.getTime()),P.date.setTime(n,i,!0),{start:o,end:n}}var w,b,y,x,k,C,S,T,D,A,E,M,P=window.kendo,I=P.date,R=P.support.input,z=I.MS_PER_DAY,B=I.getDate,L=P.date.getMilliseconds,F=P.recurrence,O=P.keys,N=P.ui,H=N.Widget,V=N.DataBoundWidget,U="string",W=N.Popup,j=N.Calendar,G=P.data.DataSource,q=e.isPlainObject,$=e.extend,Y=e.proxy,Q=Object.prototype.toString,K=e.isArray,X=".kendoScheduler",Z="click",J="change",ee="cancel",te="remove",ne="save",ie="add",oe="edit",re=/(?:value:start|value:end)(?:,|$)/,ae=B(new Date),se="recurrenceException",le="Are you sure you want to delete this event?",ce="Do you want to delete only this event occurrence or the whole series?",ue="Do you want to edit only this event occurrence or the whole series?",de="Are you sure you want to delete this event occurrence?",he="Are you sure you want to delete the whole series?",fe='<a class="k-button #=className#" #=attr# href="\\#">#=text#</a>',pe=P.template('<li class="k-current-view" data-#=ns#name="#=view#"><a role="button" href="\\#" class="k-link">${views[view].title}</a></li>'),ge=P.template('<div class="k-floatwrap k-header k-scheduler-toolbar"># if (pdf) { #<ul class="k-reset k-scheduler-tools"><li><a role="button" href="\\#" class="k-button k-pdf"><span class="k-icon k-i-pdf"></span>${messages.pdf}</a></li></ul># } #<ul class="k-reset k-scheduler-navigation"><li class="k-state-default k-header k-nav-today"><a role="button" href="\\#" class="k-link">${messages.today}</a></li><li class="k-state-default k-header k-nav-prev"><a role="button" href="\\#" class="k-link"><span class="k-icon k-i-arrow-w"></span></a></li><li class="k-state-default k-header k-nav-next"><a role="button" href="\\#" class="k-link"><span class="k-icon k-i-arrow-e"></span></a></li><li class="k-state-default k-nav-current"><a role="button" href="\\#" class="k-link"><span class="k-icon k-i-calendar"></span><span class="k-sm-date-format" data-#=ns#bind="text: formattedShortDate"></span><span class="k-lg-date-format" data-#=ns#bind="text: formattedDate"></span></a></li></ul>#if(viewsCount === 1){#<a role="button" data-#=ns#name="#=view#" href="\\#" class="k-link k-scheduler-refresh"><span class="k-icon k-i-refresh"></span></a>#}else{#<ul class="k-reset k-header k-scheduler-views">#for(var view in views){#<li class="k-state-default k-view-#= view.toLowerCase() #" data-#=ns#name="#=view#"><a role="button" href="\\#" class="k-link">${views[view].title}</a></li>#}#</ul>#}#</div>'),me=P.template('<div class="k-floatwrap k-header k-scheduler-toolbar"><ul class="k-reset k-header k-scheduler-navigation"><li class="k-state-default k-nav-today"><a role="button" href="\\#" class="k-link">${messages.today}</a></li></ul>#if(viewsCount === 1){#<a role="button" data-#=ns#name="#=view#" href="\\#" class="k-link k-scheduler-refresh"><span class="k-icon k-i-refresh"></span></a>#}else{#<ul class="k-reset k-header k-scheduler-views">#for(var view in views){#<li class="k-state-default k-view-#= view.toLowerCase() #" data-#=ns#name="#=view#"><a role="button" href="\\#" class="k-link">${views[view].title}</a></li>#}#</ul>#}#</div><div class="k-floatwrap k-header k-scheduler-toolbar"><ul class="k-reset k-header k-scheduler-navigation"><li class="k-state-default k-nav-prev"><a role="button" href="\\#" class="k-link"><span class="k-icon k-i-arrow-w"></span></a></li><li class="k-state-default k-nav-current"><span class="k-sm-date-format" data-#=ns#bind="text: formattedShortDate"></span><span class="k-lg-date-format" data-#=ns#bind="text: formattedDate"></span></li><li class="k-state-default k-nav-next"><a role="button" href="\\#" class="k-link"><span class="k-icon k-i-arrow-e"></span></a></li></ul></div>'),ve=function(t,n){var r={name:n.field},a=R.date?"":P.attr("role")+'="datepicker" ',s=P.attr("role")+'="datetimepicker" ',l=n.model.isAllDay,c=P.attr("validate")+"='"+!l+"'",u=P.attr("validate")+"='"+l+"'";i(r,n),o(r,n),e('<input type="datetime-local" required '+P.attr("type")+'="date" '+s+P.attr("bind")+'="value:'+n.field+',invisible:isAllDay" '+c+"/>").attr(r).appendTo(t),e('<input type="date" required '+P.attr("type")+'="date" '+a+P.attr("bind")+'="value:'+n.field+',visible:isAllDay" '+u+"/>").attr(r).appendTo(t),e("<span "+P.attr("for")+'="'+n.field+'" class="k-invalid-msg"/>').hide().appendTo(t)},_e=function(t,n){var r={name:n.field},a=n.model.isAllDay,s=P.attr("validate")+"='"+!a+"' ",l=P.attr("validate")+"='"+a+"' ";i(r,n),o(r,n),e('<input type="text" required '+P.attr("type")+'="date" '+P.attr("role")+'="datetimepicker" '+P.attr("bind")+'="value:'+n.field+',invisible:isAllDay" '+s+"/>").attr(r).appendTo(t),e('<input type="text" required '+P.attr("type")+'="date" '+P.attr("role")+'="datepicker" '+P.attr("bind")+'="value:'+n.field+',visible:isAllDay" '+l+"/>").attr(r).appendTo(t),e("<span "+P.attr("bind")+'="text: '+n.field+'Timezone"></span>').appendTo(t),"end"===n.field&&e("<span "+P.attr("bind")+'="text: startTimezone, invisible: endTimezone"></span>').appendTo(t),e("<span "+P.attr("for")+'="'+n.field+'" class="k-invalid-msg"/>').hide().appendTo(t)},we=function(t,n){e("<div "+P.attr("bind")+'="value:'+n.field+'" />').attr({name:n.field}).appendTo(t).kendoRecurrenceEditor({start:n.model.start,timezone:n.timezone,messages:n.messages})},be=function(t,n){e("<div "+P.attr("bind")+'="value:'+n.field+'" />').attr({name:n.field}).appendTo(t).kendoMobileRecurrenceEditor({start:n.model.start,timezone:n.timezone,messages:n.messages,pane:n.pane,value:n.model[n.field]})},ye=function(t,i){var o=n(i.model,i.messages.noTimezone);e('<a href="#" class="k-button k-timezone-button" data-bind="invisible:isAllDay">'+o+"</a>").click(i.click).appendTo(t)},xe=function(t,n){e('<a href="#" class="k-button" data-bind="invisible:isAllDay">'+n.messages.timezoneEditorButton+"</a>").click(n.click).appendTo(t)},ke=function(t,n){e("<div "+P.attr("bind")+'="value:'+n.field+'" />').attr({name:n.field}).toggle(n.visible).appendTo(t).kendoMobileTimezoneEditor({optionLabel:n.noTimezone})},Ce=function(t,n){e("<div "+P.attr("bind")+'="value:'+n.field+'" />').attr({name:n.field}).toggle(n.visible).appendTo(t).kendoTimezoneEditor({optionLabel:n.noTimezone})},Se=P.Class.extend({init:function(t,n){var i=t.timezone;this.reader=n,n.model&&(this.model=n.model),this.timezone=i,this.data=r(e.proxy(this.data,this),i),this.serialize=a(e.proxy(this.serialize,this),i)},errors:function(e){return this.reader.errors(e)},parse:function(e){return this.reader.parse(e)},data:function(e){return this.reader.data(e)},total:function(e){return this.reader.total(e)},groups:function(e){return this.reader.groups(e)},aggregates:function(e){return this.reader.aggregates(e)},serialize:function(e){return this.reader.serialize(e)}}),Te=P.data.Model.define({init:function(e){var t=this;P.data.Model.fn.init.call(t,e),t._defaultId=t.defaults[t.idField]},_time:function(e){var t=this[e],n="_"+e+"Time";return this[n]?this[n]-P.date.toUtcTime(P.date.getDate(t)):L(t)},_date:function(e){var t="_"+e+"Time";return this[t]?this[t]-this._time(e):P.date.getDate(this[e])},clone:function(t,n){var i=this.uid,o=new this.constructor(e.extend({},this.toJSON(),t));return n||(o.uid=i),o},duration:function(){var e=this.end,t=this.start,n=(e.getTimezoneOffset()-t.getTimezoneOffset())*P.date.MS_PER_MINUTE;return e-t-n},expand:function(e,t,n){return F?F.expand(this,e,t,n):[this]},update:function(e){for(var t in e)this.set(t,e[t]);this._startTime&&this.set("_startTime",P.date.toUtcTime(this.start)),this._endTime&&this.set("_endTime",P.date.toUtcTime(this.end))},isMultiDay:function(){return this.isAllDay||this.duration()>=P.date.MS_PER_DAY},isException:function(){return!this.isNew()&&this.recurrenceId},isOccurrence:function(){return this.isNew()&&this.recurrenceId},isRecurring:function(){return!(!this.recurrenceRule&&!this.recurrenceId)},isRecurrenceHead:function(){return!(!this.id||!this.recurrenceRule)},toOccurrence:function(t){return t=e.extend(t,{recurrenceException:null,recurrenceRule:null,recurrenceId:this.id||this.recurrenceId}),t[this.idField]=this.defaults[this.idField],this.clone(t,!0)},toJSON:function(){var e=P.data.Model.fn.toJSON.call(this);return e.uid=this.uid,delete e._startTime,delete e._endTime,e},shouldSerialize:function(e){return P.data.Model.fn.shouldSerialize.call(this,e)&&"_defaultId"!==e},set:function(e,t){var n,i,o,r=this.isAllDay||!1;P.data.Model.fn.set.call(this,e,t),"isAllDay"==e&&t!=r&&(n=P.date.getDate(this.start),i=new Date(this.end),o=P.date.getMilliseconds(i),0===o&&t&&(o=z),this.set("start",n),t===!0?(P.date.setTime(i,-o),n>i&&(i=n)):P.date.setTime(i,z-o),this.set("end",i))},id:"id",fields:{id:{type:"number"},title:{defaultValue:"",type:"string"},start:{type:"date",validation:{required:!0}},startTimezone:{type:"string"},end:{type:"date",validation:{required:!0,dateCompare:{value:u}}},endTimezone:{type:"string"},recurrenceRule:{defaultValue:"",type:"string"},recurrenceException:{defaultValue:"",type:"string"},isAllDay:{type:"boolean",defaultValue:!1},description:{type:"string"}}}),De=G.extend({init:function(e){G.fn.init.call(this,$(!0,{},{schema:{modelBase:Te,model:Te}},e)),this.reader=new Se(this.options.schema,this.reader)},expand:function(e,t){var n=this.view(),i={};return e&&t&&(t=new Date(t.getTime()+z-1),i={logic:"or",filters:[{logic:"and",filters:[{field:"start",operator:"gte",value:e},{field:"end",operator:"gte",value:e},{field:"start",operator:"lte",value:t}]},{logic:"and",filters:[{field:"start",operator:"lte",value:new Date(e.getTime()+z-1)},{field:"end",operator:"gte",value:e}]}]},n=new P.data.Query(d(n,e,t,this.reader.timezone)).filter(i).toArray()),n},cancelChanges:function(e){e&&e.isOccurrence()&&this._removeExceptionDate(e),G.fn.cancelChanges.call(this,e)},insert:function(e,t){if(t){if(!(t instanceof Te)){var n=t;t=this._createNewModel(),t.accept(n)}return(!this._pushCreated&&t.isRecurrenceHead()||t.recurrenceId)&&(t=t.recurrenceId?t:t.toOccurrence(),this._addExceptionDate(t)),G.fn.insert.call(this,e,t)}},pushCreate:function(e){this._pushCreated=!0,G.fn.pushCreate.call(this,e),this._pushCreated=!1},remove:function(e){return e.isRecurrenceHead()?this._removeExceptions(e):e.isRecurring()&&this._addExceptionDate(e),G.fn.remove.call(this,e)},_removeExceptions:function(e){for(var t=this.data().slice(0),n=t.shift(),i=e.id;n;)n.recurrenceId===i&&G.fn.remove.call(this,n),n=t.shift();e.set(se,"")},_removeExceptionDate:function(e){var t,n;e.recurrenceId&&(t=this.get(e.recurrenceId),t&&(n=e.start,t.set(se,t.recurrenceException.replace(F.toExceptionString(n,this.reader.timezone),""))))},_addExceptionDate:function(e){var t=e.start,n=this.reader.timezone,i=this.get(e.recurrenceId),o=i.recurrenceException||"";F.isException(o,t,n)||i.set(se,o+F.toExceptionString(t,n))}});De.create=function(e){(K(e)||e instanceof P.data.ObservableArray)&&(e={data:e});var t=e||{},n=t.data;if(t.data=n,!(t instanceof De)&&t instanceof P.data.DataSource)throw Error("Incorrect DataSource type. Only SchedulerDataSource instances are supported");return t instanceof De?t:new De(t)},$(!0,P.data,{SchedulerDataSource:De,SchedulerDataReader:Se,SchedulerEvent:Te}),w={update:{text:"Save",className:"k-primary k-scheduler-update"},canceledit:{text:"Cancel",className:"k-scheduler-cancel"},destroy:{text:"Delete",imageClass:"k-delete",className:"k-primary k-scheduler-delete",iconClass:"k-icon"}},b={mobile:{dateRange:ve,timezonePopUp:ye,timezone:ke,recurrence:be,description:g,multipleResources:v,resources:p},desktop:{dateRange:_e,timezonePopUp:xe,timezone:Ce,recurrence:we,description:g,multipleResources:m,resources:p}},y=P.Observable.extend({init:function(e,t){P.Observable.fn.init.call(this),this.element=e,this.options=$(!0,{},this.options,t),this.createButton=this.options.createButton,this.toggleDateValidationHandler=Y(this._toggleDateValidation,this)},_toggleDateValidation:function(t){if("isAllDay"==t.field){var n,i,o,r=this.container,a=this.editable.options.model.isAllDay,s=P.attr("bind");r.find("["+s+"*=end],["+s+"*=start]").each(function(){n=e(this),re.test(n.attr(s))&&(i=n.is("["+P.attr("role")+"=datetimepicker],[type*=datetime]"),o=a!==i,n.attr(P.attr("validate"),o))})}},fields:function(e,t){var n,i,o=this,r=o.options.messages,a=o.options.timezone,s=function(e){e.preventDefault(),o._initTimezoneEditor(t,this)},l=[{field:"title",title:r.editor.title},{field:"start",title:r.editor.start,editor:e.dateRange,timezone:a},{field:"end",title:r.editor.end,editor:e.dateRange,timezone:a},{field:"isAllDay",title:r.editor.allDayEvent}];P.timezone.windows_zones&&(l.push({field:"timezone",title:r.editor.timezone,editor:e.timezonePopUp,click:s,messages:r.editor,model:t}),l.push({field:"startTimezone",title:r.editor.startTimezone,editor:e.timezone,noTimezone:r.editor.noTimezone}),l.push({field:"endTimezone",title:r.editor.endTimezone,editor:e.timezone,noTimezone:r.editor.noTimezone})),t.recurrenceId||l.push({field:"recurrenceRule",title:r.editor.repeat,editor:e.recurrence,timezone:a,messages:r.recurrenceEditor,pane:this.pane}),"description"in t&&l.push({field:"description",title:r.editor.description,editor:e.description({model:t,field:"description"})});for(n=0;this.options.resources.length>n;n++)i=this.options.resources[n],l.push({field:i.field,title:i.title,editor:i.multiple?e.multipleResources(i,t):e.resources(i,t)});return l},end:function(){return this.editable.end()},_buildEditTemplate:function(e,t,n){var i,o,r,a,s=this.options.messages,l=$({},P.Template,this.options.templateSettings),c=l.paramName,u=this.options.editable.template,d="";if(u)typeof u===U&&(u=window.unescape(u)),d+=P.template(u,l)(e);else for(i=0,o=t.length;o>i;i++)r=t[i],"startTimezone"===r.field&&(d+='<div class="k-popup-edit-form k-scheduler-edit-form k-scheduler-timezones" style="display:none">',d+='<div class="k-edit-form-container">',d+='<div class="k-edit-label"></div>',d+='<div class="k-edit-field"><label class="k-check"><input class="k-timezone-toggle" type="checkbox" />'+s.editor.separateTimezones+"</label></div>"),d+='<div class="k-edit-label"><label for="'+r.field+'">'+(r.title||r.field||"")+"</label></div>",!e.editable||e.editable(r.field)?(n.push(r),d+="<div "+P.attr("container-for")+'="'+r.field+'" class="k-edit-field"></div>'):(a="#:",r.field?(r=P.expr(r.field,c),a+=r+"==null?'':"+r):a+="''",a+="#",a=P.template(a,l),d+='<div class="k-edit-field">'+a(e)+"</div>"),"endTimezone"===r.field&&(d+=this._createEndTimezoneButton());return d},_createEndTimezoneButton:function(){return"</div></div>"},_revertTimezones:function(e){e.set("startTimezone",this._startTimezone),e.set("endTimezone",this._endTimezone),delete this._startTimezone,delete this._endTimezone}}),x=y.extend({init:function(){y.fn.init.apply(this,arguments),this.pane=P.mobile.ui.Pane.wrap(this.element),this.pane.element.parent().css("height",this.options.height),this.view=this.pane.view(),this._actionSheetButtonTemplate=P.template('<li><a #=attr# class="k-button #=className#" href="\\#">#:text#</a></li>'),this._actionSheetPopupOptions=e(document.documentElement).hasClass("km-root")?{modal:!1}:{align:"bottom center",position:"bottom center",effect:"slideIn:up"}},options:{animations:{left:"slide",right:"slide:right"}},destroy:function(){this.close(),this.unbind(),this.pane.destroy()},_initTimezoneEditor:function(t){var i,o=this,r=o.pane,a=o.options.messages,s=o.timezoneView,l=o.container.find(".k-scheduler-timezones"),c=l.find(".k-timezone-toggle"),u=l.find(".k-edit-label:last").add(l.find(".k-edit-field:last")),d=function(e){if("startTimezone"===e.field){var n=t.startTimezone;c.prop("disabled",!n),n||(u.hide(),t.set("endTimezone",""),c.prop("checked",!1))}};o._startTimezone=t.startTimezone||"",o._endTimezone=t.endTimezone||"",s||(i='<div data-role="view" class="k-popup-edit-form k-scheduler-edit-form k-mobile-list"><div data-role="header" class="k-header"><a href="#" class="k-button k-scheduler-cancel">'+a.cancel+"</a>"+a.editor.timezoneTitle+'<a href="#" class="k-button k-scheduler-update">'+a.save+"</a></div></div>",this.timezoneView=s=r.append(i),s.contentElement().append(l.show()),s.element.on(Z+X,".k-scheduler-cancel, .k-scheduler-update",function(i){var s,l;i.preventDefault(),i.stopPropagation(),e(this).hasClass("k-scheduler-cancel")&&o._revertTimezones(t),t.unbind("change",d),s=r.element.find("#edit").data("kendoMobileView"),l=n(t,a.editor.noTimezone),s.contentElement().find(".k-timezone-button").text(l),r.navigate(s,o.options.animations.right)}),c.click(function(){u.toggle(c.prop("checked")),t.set("endTimezone","")}),t.bind("change",d)),c.prop("checked",t.endTimezone).prop("disabled",!t.startTimezone),t.endTimezone?u.show():u.hide(),r.navigate(s,o.options.animations.left)},_createActionSheetButton:function(e){return e.template=this._actionSheetButtonTemplate,this.createButton(e)},showDialog:function(t){var n,i,o="",r='<ul><li class="km-actionsheet-title">'+t.title+"</li>",a=this.element.find(".k-event["+P.attr("uid")+"='"+t.model.uid+"']");for(this.container&&(a=this.container.find(".k-scheduler-delete"),a[0]&&(o="phone")),n=0;t.buttons.length>n;n++)r+=this._createActionSheetButton(t.buttons[n]);r+="</ul>",i=e(r).appendTo(this.pane.view().element).kendoMobileActionSheet({type:o,cancel:this.options.messages.cancel,cancelTemplate:'<li class="km-actionsheet-cancel"><a class="k-button" href="\\#">#:cancel#</a></li>',close:function(){this.destroy()},command:function(n){var o=i.element.find("li:not(.km-actionsheet-cancel) > .k-button").index(e(n.currentTarget));o>-1&&(i.close(),t.buttons[o].click())},popup:this._actionSheetPopupOptions}).data("kendoMobileActionSheet"),i.open(a)},editEvent:function(t){var n,i,o,r,a,s=this.pane,l="",c=this.options.messages,u=c.save,d=c.destroy,h=c.cancel,f=c.editor.editorTitle;return l+='<div data-role="view" class="k-popup-edit-form k-scheduler-edit-form k-mobile-list" id="edit" '+P.attr("uid")+'="'+t.uid+'"><div data-role="header" class="k-header"><a href="#" class="k-button k-scheduler-cancel">'+h+"</a>"+f+'<a href="#" class="k-button k-scheduler-update">'+u+"</a></div>",n=this.fields(b.mobile,t),i=this,o=[],l+=this._buildEditTemplate(t,n,o),!t.isNew()&&this.options.editable&&this.options.editable.destroy!==!1&&(l+='<div class="k-edit-buttons"><a href="#" class="k-scheduler-delete k-button">'+d+"</a></div>"),l+="</div>",r=s.append(l),a=this.container=r.element,this.editable=a.kendoEditable({fields:o,model:t,clearContainer:!1,target:i.options.target,validateOnBlur:!0}).data("kendoEditable"),a.find("input[type=checkbox],input[type=radio]").parent(".k-edit-field").addClass("k-check").prev(".k-edit-label").addClass("k-check").click(function(){e(this).next().children("input").click()}),this.trigger("edit",{container:a,model:t})?this.trigger("cancel",{container:a,model:t}):(a.on(Z+X,"a.k-scheduler-edit, a.k-scheduler-cancel, a.k-scheduler-update, a.k-scheduler-delete",function(n){var o,r;n.preventDefault(),n.stopPropagation(),o=e(this),o.hasClass("k-scheduler-edit")?s.navigate("#edit",i.options.animations.right):(r="cancel",o.hasClass("k-scheduler-update")?r="save":o.hasClass("k-scheduler-delete")&&(r="remove"),i.trigger(r,{container:a,model:t}))}),s.navigate(r,i.options.animations.left),t.bind("change",i.toggleDateValidationHandler)),this.editable},_views:function(){return this.pane.element.find(P.roleSelector("view")).not(this.view.element)},close:function(){var e,t,n,i;if(this.container){for(this.pane.navigate("",this.options.animations.right),e=this._views(),n=0,i=e.length;i>n;n++)t=e.eq(n).data("kendoMobileView"),t&&t.purge();e.remove(),this.container=null,this.editable&&(this.editable.options.model.unbind("change",this.toggleDateValidationHandler),this.editable.destroy(),this.editable=null),this.timezoneView=null}}}),k=y.extend({destroy:function(){this.close(),this.unbind()},editEvent:function(t){var n,i,o,r=this,a=r.options.editable,s="<div "+P.attr("uid")+'="'+t.uid+'" class="k-popup-edit-form k-scheduler-edit-form"><div class="k-edit-form-container">',l=r.options.messages,c=l.save,u=l.cancel,d=l.destroy,h=this.fields(b.desktop,t),f=[];return s+=this._buildEditTemplate(t,h,f),i=q(a)?a.window:{},s+='<div class="k-edit-buttons k-state-default">',s+=this.createButton({name:"update",text:c,attr:n})+this.createButton({name:"canceledit",text:u,attr:n}),t.isNew()||a.destroy===!1||(s+=this.createButton({name:"delete",text:d,attr:n})),s+="</div></div></div>",o=this.container=e(s).appendTo(r.element).eq(0).kendoWindow($({modal:!0,resizable:!1,draggable:!0,title:l.editor.editorTitle,visible:!1,close:function(e){e.userTriggered&&r.trigger(ee,{container:o,model:t})&&e.preventDefault()}},i)),r.editable=o.kendoEditable({fields:f,model:t,clearContainer:!1,validateOnBlur:!0,target:r.options.target}).data("kendoEditable"),r.trigger(oe,{container:o,model:t})?r.trigger(ee,{container:o,model:t}):(o.data("kendoWindow").center().open(),o.on(Z+X,"a.k-scheduler-cancel",function(e){e.preventDefault(),e.stopPropagation(),r.trigger(ee,{container:o,model:t})}),o.on(Z+X,"a.k-scheduler-update",function(e){e.preventDefault(),e.stopPropagation(),r.trigger("save",{container:o,model:t})}),o.on(Z+X,"a.k-scheduler-delete",function(e){e.preventDefault(),e.stopPropagation(),r.trigger(te,{container:o,model:t})}),P.cycleForm(o),t.bind("change",r.toggleDateValidationHandler)),r.editable},close:function(){var e=this,t=function(){e.editable&&(e.editable.options.model.unbind("change",e.toggleDateValidationHandler),e.editable.destroy(),e.editable=null,e.container=null),e.popup&&(e.popup.destroy(),e.popup=null)};e.editable?(e._timezonePopup&&e._timezonePopup.data("kendoWindow")&&(e._timezonePopup.data("kendoWindow").destroy(),e._timezonePopup=null),e.container.is(":visible")?e.container.data("kendoWindow").bind("deactivate",t).close():t()):t()},_createEndTimezoneButton:function(){var e=this.options.messages,t="";return t+='<div class="k-edit-buttons k-state-default">',t+=this.createButton({name:"savetimezone",text:e.save})+this.createButton({name:"canceltimezone",text:e.cancel}),t+="</div></div></div>"},showDialog:function(t){var n,i,o,r=P.format("<div class='k-popup-edit-form'><div class='k-edit-form-container'><p class='k-popup-message'>{0}</p>",t.text);for(r+='<div class="k-edit-buttons k-state-default">',n=0;t.buttons.length>n;n++)r+=this.createButton(t.buttons[n]);r+="</div></div></div>",i=this.element,this.popup&&this.popup.destroy(),o=this.popup=e(r).appendTo(i).eq(0).on("click",".k-button",function(n){n.preventDefault(),o.close();var i=e(n.currentTarget).index();t.buttons[i].click()}).kendoWindow({modal:!0,resizable:!1,draggable:!1,title:t.title,visible:!1,close:function(){this.destroy(),i.focus()}}).getKendoWindow(),o.center().open()},_initTimezoneEditor:function(e,t){var n,i=this,o=i.container.find(".k-scheduler-timezones"),r=o.find(".k-timezone-toggle"),a=o.find(".k-edit-label:last").add(o.find(".k-edit-field:last")),s=o.find(".k-scheduler-savetimezone"),l=o.find(".k-scheduler-canceltimezone"),c=i._timezonePopup,u=function(t){if("startTimezone"===t.field){var n=e.startTimezone;r.prop("disabled",!n),n||(a.hide(),e.set("endTimezone",""),r.prop("checked",!1))}};i._startTimezone=e.startTimezone,i._endTimezone=e.endTimezone,c||(i._timezonePopup=c=o.kendoWindow({modal:!0,resizable:!1,draggable:!0,title:i.options.messages.editor.timezoneEditorTitle,visible:!1,close:function(n){e.unbind("change",u),n.userTriggered&&i._revertTimezones(e),t&&t.focus()}}),r.click(function(){a.toggle(r.prop("checked")),e.set("endTimezone","")}),s.click(function(e){e.preventDefault(),n.close()}),l.click(function(t){t.preventDefault(),i._revertTimezones(e),n.close()}),e.bind("change",u)),r.prop("checked",e.endTimezone).prop("disabled",!e.startTimezone),e.endTimezone?a.show():a.hide(),n=c.data("kendoWindow"),n.center().open()}}),C=V.extend({init:function(t,n){var i=this;H.fn.init.call(i,t,n),i.options.views&&i.options.views.length||(i.options.views=["day","week"]),i.resources=[],i._initModel(),i._wrapper(),i._views(),i._toolbar(),i._dataSource(),i._resources(),i._resizeHandler=function(){i.resize()},i.wrapper.on("mousedown"+X+" selectstart"+X,function(t){e(t.target).is(":kendoFocusable")||t.preventDefault()}),i.options.editable&&i.options.editable.resize!==!1&&i._resizable(),i._movable(),i._bindResize(),i.options.messages&&i.options.messages.recurrence&&(F.options=i.options.messages.recurrence),i._selectable(),i._ariaId=P.guid(),i._createEditor()},_bindResize:function(){e(window).on("resize"+X,this._resizeHandler)},_unbindResize:function(){e(window).off("resize"+X,this._resizeHandler)},dataItems:function(){var n,i,o,r,a,s=this,l=s.items(),c=s._data,u=e.map(l,function(t){return e(t).attr("data-uid")}),d={},h=u.length;for(n=0;h>n;n++)d[u[n]]=null;for(o=c.length,n=0;o>n;n++)r=c[n],d[r.uid]!==t&&(d[r.uid]=r);a=[];for(i in d)a.push(d[i]);return a},_isMobile:function(){var e=this.options;return e.mobile===!0&&P.support.mobileOS||"phone"===e.mobile||"tablet"===e.mobile},_isMobilePhoneView:function(){var e=this.options;return e.mobile===!0&&P.support.mobileOS&&!P.support.mobileOS.tablet||"phone"===e.mobile},_groupsByResource:function(e,t,n,i,o){var r,a,s,l,c,u,d;if(n||(n=[]),r=e[0]){for(s=r.dataSource.view(),l=0,c=0;s.length>c;c++)u=P.getter(r.dataValueField)(s[c]),d=t+l+c,a=this._groupsByResource(e.slice(1),d,n,u,r.field),a[r.field]=u,l=a.groupIndex,o&&i&&(a[o]=i),1===e.length&&(a.groupIndex=t+c,n.push(a));return a}return{}},data:function(){return this._data},select:function(n){var i,o,r,a,s,l,c,u,d,h,f=this,p=f.view(),g=f._selection,m=p.groups;if(n===t)return r=p._selectedSlots,g?(g&&g.events&&(o=f._selectedEvents()),{start:g.start,end:g.end,events:o,slots:r,resources:p._resourceBySlot(g)}):[];if(!n)return f._selection=null,p.clearSelection(),t;if(e.isArray(n)&&(n={events:n.splice(0)}),n.resources){s=[],l=[],p.groupedResources&&f._groupsByResource(p.groupedResources,0,l);for(a in n.resources)s.push({field:a,operator:"eq",value:n.resources[a]});i=new P.data.Query(l).filter(s).toArray()}return n.events&&n.events.length?(f._selectEvents(n.events,i),f._select(),t):(m&&n.start&&n.end&&(c=B(p._startDate),u=P.date.addDays(B(p._endDate),1),u>n.start&&n.end>=c&&(d=i&&i.length?m[i[0].groupIndex]:m[0],h=d.ranges(n.start,n.end,n.isAllDay,!1),h.length&&(f._selection={start:P.timezone.toLocalDate(h[0].start.start),end:P.timezone.toLocalDate(h[h.length-1].end.end),groupIndex:h[0].start.groupIndex,index:h[0].start.index,isAllDay:h[0].start.isDaySlot,events:[]},f._select()))),t)},_selectEvents:function(e,t){var n,i,o,r,a,s,l,c,u=this,d=u.view(),h=d.groups,f=e.length,p=t&&t.length;for(n=0;f>n;n++)if(h&&p){for(i=h[t[0].groupIndex],o=[],r=i.timeSlotCollectionCount(),a=i.daySlotCollectionCount(),s=0;r>s;s++)o=o.concat(i.getTimeSlotCollection(s).events());for(l=0;a>l;l++)o=o.concat(i.getDaySlotCollection(l).events());o=new P.data.Query(o).filter({field:"element[0].getAttribute('data-uid')",operator:"eq",value:e[n]}).toArray(),o[0]&&u._createSelection(o[0].element)}else c=d.element.find(P.format(".k-event[data-uid={0}], .k-task[data-uid={0}]",e[n])),c.length&&u._createSelection(c[0])},_selectable:function(){var t,n=this,i=n.wrapper,o=P.support.mobileOS?"touchend":"mousedown";n.options.selectable&&(n._tabindex(),i.on(o+X,".k-scheduler-header-all-day td, .k-scheduler-content td, .k-event",function(e){var t=e.which,o=e.button,r=P.support.browser,a=t&&3===t||o&&2==o;P.support.mobileOS&&e.isDefaultPrevented()||(a||n._createSelection(e.currentTarget),
|
|
i.focus(),r.msie&&9>r.version&&setTimeout(function(){i.focus()}))}),t=e.proxy(n._mouseMove,n),i.on("mousedown"+X,".k-scheduler-header-all-day td, .k-scheduler-content td",function(e){var n=e.which,o=e.button,r=n&&3===n||o&&2==o;r||i.on("mousemove"+X,".k-scheduler-header-all-day td, .k-scheduler-content td",t)}),i.on("mouseup"+X+" mouseleave"+X,function(){i.off("mousemove"+X,".k-scheduler-header-all-day td, .k-scheduler-content td",t)}),i.on("focus"+X,function(){n._selection||n._createSelection(n.wrapper.find(".k-scheduler-content").find("td:first")),n._select()}),i.on("focusout"+X,function(){n.view().clearSelection(),n._ctrlKey=n._shiftKey=!1}),i.on("keydown"+X,Y(n._keydown,n)),i.on("keyup"+X,function(e){n._ctrlKey=e.ctrlKey,n._shiftKey=e.shiftKey}))},_select:function(){var t,n,i,o,r,a=this,s=a.view(),l=a.wrapper,c=s.current(),u=a._selection;if(c&&(c.removeAttribute("id"),c.removeAttribute("aria-label"),l.removeAttr("aria-activedescendant")),s.select(u),c=s.current(),c&&a._old!==c){if(t=e(c).data("uid"),a._old&&t&&t===e(a._old).data("uid"))return;i=u,o=a._selectedEvents(),r=s._selectedSlots,o[0]?(i=o[0]||u,n=P.format(a.options.messages.ariaEventLabel,i.title,i.start,i.start)):n=P.format(a.options.messages.ariaSlotLabel,i.start,i.end),c.setAttribute("id",a._ariaId),c.setAttribute("aria-label",n),l.attr("aria-activedescendant",a._ariaId),a._old=c,a.trigger("change",{start:u.start,end:u.end,events:o,slots:r,resources:s._resourceBySlot(u)})}},_selectedEvents:function(){for(var e,t=this._selection.events,n=t.length,i=0,o=[];n>i;i++)e=this.occurrenceByUid(t[i]),e&&o.push(e);return o},_mouseMove:function(t){var n=this;clearTimeout(n._moveTimer),n._moveTimer=setTimeout(function(){var i,o,r,a=n.view(),s=n._selection;s&&(i=a.selectionByElement(e(t.currentTarget)),i&&s.groupIndex===i.groupIndex&&(o=i.startDate(),r=i.endDate(),o>=s.end?s.backward=!1:s.start>=r&&(s.backward=!0),s.backward?s.start=o:s.end=r,n._select()))},5)},_viewByIndex:function(e){var t,n=this.views;for(t in n){if(!e)return t;e--}},_keydown:function(t){var n=this,i=t.keyCode,o=n.view(),r=o.options.editable,a=n._selection,s=t.shiftKey;n._ctrlKey=t.ctrlKey,n._shiftKey=t.shiftKey,i===O.TAB?o.moveToEvent(a,s)&&(n._select(),t.preventDefault()):r&&i===O.ENTER?a.events.length?r.update!==!1&&n.editEvent(a.events[0]):r.create!==!1&&(a.isAllDay&&(a=e.extend({},a,{end:P.date.addDays(a.end,-1)})),n.addEvent($({},a,o._resourceBySlot(a)))):i===O.DELETE&&r!==!1&&r.destroy!==!1?n.removeEvent(a.events[0]):i>=49&&57>=i?n.view(n._viewByIndex(i-49)):o.move(a,i,s)&&(o.inRange(a)?n._select():n.date(a.start),t.preventDefault()),n._adjustSelectedDate()},_createSelection:function(t){var n,i,o;this._selection&&(this._ctrlKey||this._shiftKey)||(this._selection={events:[],groupIndex:0}),t=e(t),o=this._selection,t.is(".k-event")&&(n=t.attr(P.attr("uid"))),i=this.view().selectionByElement(t),i&&(o.groupIndex=i.groupIndex||0),n&&(i=l(this._data,n)),i&&i.uid&&(n=[i.uid]),this._updateSelection(i,n),this._adjustSelectedDate()},_updateSelection:function(e,t){var n,i,o=this._selection;e&&o&&(n=this.view(),e.uid&&(e=n._updateEventForSelection(e)),this._shiftKey&&o.start&&o.end?(i=o.end>e.end,o.end=e.endDate?e.endDate():e.end,i&&n._timeSlotInterval&&P.date.setTime(o.end,-n._timeSlotInterval())):(o.start=e.startDate?e.startDate():e.start,o.end=e.endDate?e.endDate():e.end),o.isAllDay="isDaySlot"in e?e.isDaySlot:e.isAllDay,o.index=e.index,o.events=this._ctrlKey?o.events.concat(t||[]):t||[])},options:{name:"Scheduler",date:ae,editable:!0,autoBind:!0,snap:!0,mobile:!1,timezone:"",allDaySlot:!0,min:new Date(1900,0,1),max:new Date(2099,11,31),toolbar:null,messages:{today:"Today",pdf:"Export to PDF",save:"Save",cancel:"Cancel",destroy:"Delete",deleteWindowTitle:"Delete event",ariaSlotLabel:"Selected from {0:t} to {1:t}",ariaEventLabel:"{0} on {1:D} at {2:t}",views:{day:"Day",week:"Week",workWeek:"Work Week",agenda:"Agenda",month:"Month",timeline:"Timeline",timelineWeek:"Timeline Week",timelineWorkWeek:"Timeline Work Week",timelineMonth:"Timeline Month"},recurrenceMessages:{deleteWindowTitle:"Delete Recurring Item",deleteWindowOccurrence:"Delete current occurrence",deleteWindowSeries:"Delete the series",editWindowTitle:"Edit Recurring Item",editWindowOccurrence:"Edit current occurrence",editWindowSeries:"Edit the series"},editable:{confirmation:le},editor:{title:"Title",start:"Start",end:"End",allDayEvent:"All day event",description:"Description",repeat:"Repeat",timezone:" ",startTimezone:"Start timezone",endTimezone:"End timezone",separateTimezones:"Use separate start and end time zones",timezoneEditorTitle:"Timezones",timezoneEditorButton:"Time zone",timezoneTitle:"Time zones",noTimezone:"No timezone",editorTitle:"Event"}},height:null,width:null,resources:[],group:{resources:[],direction:"horizontal"},views:[],selectable:!1},events:[te,oe,ee,ne,"add","dataBinding","dataBound","moveStart","move","moveEnd","resizeStart","resize","resizeEnd","navigate","change"],destroy:function(){var t,n=this;H.fn.destroy.call(n),n.dataSource&&(n.dataSource.unbind(J,n._refreshHandler),n.dataSource.unbind("progress",n._progressHandler),n.dataSource.unbind("error",n._errorHandler)),n.calendar&&(n.calendar.destroy(),n.popup.destroy()),n.view()&&n.view().destroy(),n._editor&&n._editor.destroy(),this._moveDraggable&&this._moveDraggable.destroy(),this._resizeDraggable&&this._resizeDraggable.destroy(),t=n.element.add(n.wrapper).add(n.toolbar).add(n.popup),t.off(X),clearTimeout(n._moveTimer),n._model=null,n.toolbar=null,n.element=null,e(window).off("resize"+X,n._resizeHandler),P.destroy(n.wrapper)},setDataSource:function(e){this.options.dataSource=e,this._dataSource(),this.options.autoBind&&e.fetch()},items:function(){return this.wrapper.find(".k-scheduler-content").children(".k-event, .k-task")},_movable:function(){var n,i,o,r,a,s,l,c=this,u=0,d=c._isMobile(),h=c.options.editable&&c.options.editable.move!==!1,f=c.options.editable&&c.options.editable.resize!==!1;(h||f&&d)&&(d&&P.support.mobileOS.android&&(u=5),c._moveDraggable=new P.ui.Draggable(c.element,{distance:u,filter:".k-event",ignore:".k-resize-handle",holdToDrag:d}),h&&c._moveDraggable.bind("dragstart",function(e){var r=c.view(),u=e.currentTarget;return r.options.editable&&r.options.editable.move!==!1?d&&!u.hasClass("k-event-active")?(c.element.find(".k-event-active").removeClass("k-event-active"),e.preventDefault(),t):(a=c.occurrenceByUid(u.attr(P.attr("uid"))),s=a.clone(),s.update(r._eventOptionsForMove(s)),n=r._slotByPosition(e.x.startLocation,e.y.startLocation),o=n.startOffset(e.x.startLocation,e.y.startLocation,c.options.snap),i=n,l=n,(!n||c.trigger("moveStart",{event:a}))&&e.preventDefault(),t):(e.preventDefault(),t)}).bind("drag",function(e){var t,l,u=c.view(),d=u._slotByPosition(e.x.location,e.y.location);d&&(r=d.startOffset(e.x.location,e.y.location,c.options.snap),d.isDaySlot!==n.isDaySlot?(n=u._slotByPosition(e.x.location,e.y.location),o=n.startOffset(e.x.location,e.y.location,c.options.snap),t=r-o,s.isAllDay=d.isDaySlot,s.start=P.timezone.toLocalDate(o),s.end=P.timezone.toLocalDate(r),u._updateMoveHint(s,d.groupIndex,t),l={start:s.start,end:s.end}):(t=r-o,u._updateMoveHint(s,d.groupIndex,t),l=_(s,t)),c.trigger("move",{event:a,slot:{element:d.element,start:d.startDate(),end:d.endDate(),isDaySlot:d.isDaySlot},resources:u._resourceBySlot(d),start:l.start,end:l.end})?u._updateMoveHint(s,d.groupIndex,t):i=d)}).bind("dragend",function(t){var u,d,h,f,p,g,m,v,w;c.view()._removeMoveHint(),u=r-o,d=_(s,u),h=d.start,f=d.end,p=c.view()._resourceBySlot(i),g=c.view()._resourceBySlot(n),m=c.trigger("moveEnd",{event:a,slot:{element:i.element,start:i.startDate(),end:i.endDate()},start:h,end:f,resources:p}),m||a.start.getTime()===h.getTime()&&a.end.getTime()===f.getTime()&&l.isDaySlot===i.isDaySlot&&P.stringify(p)===P.stringify(g)||(v=c.view()._eventOptionsForMove(a),w=l.isDaySlot!==i.isDaySlot?i.isDaySlot?e.extend({start:i.startDate(),end:i.startDate(),isAllDay:i.isDaySlot},v,p):e.extend({isAllDay:i.isDaySlot,start:h,end:f},v,p):e.extend({isAllDay:a.isAllDay,start:h,end:f},v,p),c._updateEvent(null,a,w)),t.currentTarget.removeClass("k-event-active"),this.cancelHold()}).bind("dragcancel",function(){c.view()._removeMoveHint(),this.cancelHold()}),d&&(c._moveDraggable.bind("hold",function(e){c.element.find(".k-scheduler-monthview").length&&e.preventDefault(),c.element.find(".k-event-active").removeClass("k-event-active"),e.currentTarget.addClass("k-event-active")}),c._moveDraggable.userEvents.bind("press",function(e){e.preventDefault()})))},_resizable:function(){function t(e){var t,n={"k-resize-e":"east","k-resize-w":"west","k-resize-n":"north","k-resize-s":"south"};for(t in n)if(e.hasClass(t))return n[t]}var n,i,o,r,a,s=this,l=0;s._isMobile()&&P.support.mobileOS.android&&(l=5),s._resizeDraggable=new P.ui.Draggable(s.element,{distance:l,filter:".k-resize-handle",dragstart:function(t){var l=e(t.currentTarget),c=l.closest(".k-event"),u=c.attr(P.attr("uid")),d=s.view();o=s.occurrenceByUid(u),r=o.clone(),d._updateEventForResize(r),a=d._slotByPosition(t.x.startLocation,t.y.startLocation),s.trigger("resizeStart",{event:o})&&t.preventDefault(),n=P.date.toUtcTime(r.start),i=P.date.toUtcTime(r.end)},drag:function(l){var c,u,d,h,f,p;a&&(c=e(l.currentTarget),u=t(c),d=s.view(),h=d._slotByPosition(l.x.location,l.y.location),h&&a.groupIndex==h.groupIndex&&(a=h,f=n,p=i,"south"==u?!a.isDaySlot&&a.end-P.date.toUtcTime(r.start)>=d._timeSlotInterval()&&(i=r.isAllDay?a.startOffset(l.x.location,l.y.location,s.options.snap):a.endOffset(l.x.location,l.y.location,s.options.snap)):"north"==u?!a.isDaySlot&&P.date.toUtcTime(r.end)-a.start>=d._timeSlotInterval()&&(n=a.startOffset(l.x.location,l.y.location,s.options.snap)):"east"==u?a.isDaySlot&&P.date.toUtcTime(P.date.getDate(a.endDate()))>=P.date.toUtcTime(P.date.getDate(r.start))?i=r.isAllDay?a.startOffset(l.x.location,l.y.location,s.options.snap):a.endOffset(l.x.location,l.y.location,s.options.snap):!a.isDaySlot&&a.end-P.date.toUtcTime(r.start)>=d._timeSlotInterval()&&(i=a.endOffset(l.x.location,l.y.location,s.options.snap)):"west"==u&&(a.isDaySlot&&P.date.toUtcTime(P.date.getDate(r.end))>=P.date.toUtcTime(P.date.getDate(a.startDate()))?n=a.startOffset(l.x.location,l.y.location,s.options.snap):!a.isDaySlot&&P.date.toUtcTime(r.end)-a.start>=d._timeSlotInterval()&&(n=a.startOffset(l.x.location,l.y.location,s.options.snap))),s.trigger("resize",{event:o,slot:{element:a.element,start:a.startDate(),end:a.endDate()},start:P.timezone.toLocalDate(n),end:P.timezone.toLocalDate(i),resources:d._resourceBySlot(a)})?(n=f,i=p):d._updateResizeHint(r,a.groupIndex,n,i)))},dragend:function(l){var c,u=e(l.currentTarget),d=new Date(r.start.getTime()),h=new Date(r.end.getTime()),f=t(u);s.view()._removeResizeHint(),"south"==f?h=P.timezone.toLocalDate(i):"north"==f?d=P.timezone.toLocalDate(n):"east"==f?h=a.isDaySlot?P.date.getDate(P.timezone.toLocalDate(i)):P.timezone.toLocalDate(i):"west"==f&&(a.isDaySlot?(d=new Date(P.timezone.toLocalDate(n)),d.setHours(0),d.setMinutes(0)):d=P.timezone.toLocalDate(n)),c=s.trigger("resizeEnd",{event:o,slot:{element:a.element,start:a.startDate(),end:a.endDate()},start:d,end:h,resources:s.view()._resourceBySlot(a)}),!c&&h.getTime()>=d.getTime()&&(r.start.getTime()!=d.getTime()||r.end.getTime()!=h.getTime())&&(s.view()._updateEventForResize(o),s._updateEvent(f,o,{start:d,end:h})),a=null,o=null},dragcancel:function(){s.view()._removeResizeHint(),a=null,o=null}})},_updateEvent:function(e,t,n){var i,o=this,r=function(e,t){try{o._preventRefresh=!0,e.update(n),o._convertDates(e)}finally{o._preventRefresh=!1}o.trigger(ne,{event:e})||(t&&t(),o._updateSelection(e),o.dataSource.sync())},a=function(e){return e.recurrenceRule?o.dataSource.getByUid(e.uid):o.dataSource.get(e.recurrenceId)},s=function(){var i,s,l=a(t);("south"==e||"north"==e)&&(n.start&&(i=P.date.getDate(l.start),P.date.setTime(i,L(n.start)),n.start=i),n.end&&(s=P.date.getDate(l.end),P.date.setTime(s,L(n.end)),n.end=s)),o.dataSource._removeExceptions(l),r(l)},l=function(){var e=a(t),n=function(){o._convertDates(e)},i=e.toOccurrence({start:t.start,end:t.end});r(o.dataSource.add(i),n)};t.recurrenceRule||t.isOccurrence()?(i=o.options.messages.recurrenceMessages,o._showRecurringDialog(t,l,s,{title:i.editWindowTitle,text:i.editRecurring?i.editRecurring:ue,occurrenceText:i.editWindowOccurrence,seriesText:i.editWindowSeries})):r(o.dataSource.getByUid(t.uid))},_modelForContainer:function(t){return t=e(t).closest("["+P.attr("uid")+"]"),this.dataSource.getByUid(t.attr(P.attr("uid")))},showDialog:function(e){this._editor.showDialog(e)},focus:function(){this.wrapper.focus()},_confirmation:function(e,t){var n,i,o,r,a,s=this.options.editable;s===!0||s.confirmation!==!1?(n=this.options.messages,i=n.deleteWindowTitle,o=typeof s.confirmation===U?s.confirmation:n.editable.confirmation,this._isEditorOpened()&&t.isRecurring()&&(r=this.options.messages.recurrenceMessages,i=r.deleteWindowTitle,o=t.isException()?r.deleteRecurringConfirmation?r.deleteRecurringConfirmation:de:r.deleteSeriesConfirmation?r.deleteSeriesConfirmation:he),a=[{name:"destroy",text:n.destroy,click:function(){e()}}],this._isMobile()&&P.mobile.ui.Pane||a.push({name:"canceledit",text:n.cancel,click:function(){e(!0)}}),this._unbindResize(),this.showDialog({model:t,text:o,title:i,buttons:a}),this._bindResize()):e()},addEvent:function(e){var t,n,i=this._editor.editable,o=this.dataSource;e=e||{},n=this.trigger("add",{event:e}),!n&&(i&&i.end()||!i)&&(this.cancelEvent(),e&&e.toJSON&&(e=e.toJSON()),t=o.add(e),t&&(this.cancelEvent(),this._editEvent(t)))},saveEvent:function(){var e,t,n,i=this._editor;i&&(e=i.editable,t=i.container,n=this._modelForContainer(t),t&&e&&e.end()&&!this.trigger(ne,{container:t,event:n})&&(n.isRecurrenceHead()&&this.dataSource._removeExceptions(n),n.dirty||n.isOccurrence()||this._convertDates(n,"remove"),this.dataSource.sync()))},cancelEvent:function(){var e,t=this._editor,n=t.container;n&&(e=this._modelForContainer(n),e&&e.isOccurrence()&&(this._convertDates(e,"remove"),this._convertDates(this.dataSource.get(e.recurrenceId),"remove")),this.dataSource.cancelChanges(e),t.close())},editEvent:function(e){var t="string"==typeof e?this.occurrenceByUid(e):e;t&&(this.cancelEvent(),t.isRecurring()?this._editRecurringDialog(t):this._editEvent(t))},_editEvent:function(e){this._unbindResize(),this._createPopupEditor(e),this._bindResize()},_editRecurringDialog:function(e){var t=this,n=function(){e.isException()?t._editEvent(e):t.addEvent(e)},i=function(){e.recurrenceId&&(e=t.dataSource.get(e.recurrenceId)),t._editEvent(e)},o=t.options.messages.recurrenceMessages;t._showRecurringDialog(e,n,i,{title:o.editWindowTitle,text:o.editRecurring?o.editRecurring:ue,occurrenceText:o.editWindowOccurrence,seriesText:o.editWindowSeries})},_showRecurringDialog:function(e,t,n,i){var o=this,r=o.options.editable,a=q(r)?r.editRecurringMode:"dialog";"series"===a?n():"occurrence"===a?t():(this._unbindResize(),o.showDialog({model:e,title:i.title,text:i.text,buttons:[{text:i.occurrenceText,click:t},{text:i.seriesText,click:n}]}),this._bindResize())},_createButton:function(e){var t=e.template||fe,n=typeof e===U?e:e.name||e.text,i={className:"k-scheduler-"+(n||"").replace(/\s/g,""),text:n,attr:""};if(!(n||q(e)&&e.template))throw Error("Custom commands should have name specified");return q(e)?(e.className&&(e.className+=" "+i.className),"edit"===n&&q(e.text)&&(e=$(!0,{},e),e.text=e.text.edit),i=$(!0,i,w[n],e)):i=$(!0,i,w[n]),P.template(t)(i)},_convertDates:function(e,t){var n=this.dataSource.reader.timezone,i=e.startTimezone,o=e.endTimezone,r=e.start,a=e.start;t=t||"apply",i=i||o,o=o||i,i&&(n?"apply"===t?(r=P.timezone.convert(e.start,n,i),a=P.timezone.convert(e.end,n,o)):(r=P.timezone.convert(e.start,i,n),a=P.timezone.convert(e.end,o,n)):(r=P.timezone[t](e.start,i),a=P.timezone[t](e.end,o)),e._set("start",r),e._set("end",a))},_createEditor:function(){var e,n=this;e=n._editor=this._isMobile()&&P.mobile.ui.Pane?new x(this.wrapper,$({},this.options,{target:this,timezone:n.dataSource.reader.timezone,resources:n.resources,createButton:Y(this._createButton,this)})):new k(this.wrapper,$({},this.options,{target:this,createButton:Y(this._createButton,this),timezone:n.dataSource.reader.timezone,resources:n.resources})),e.bind("cancel",function(e){return n.trigger("cancel",{container:e.container,event:e.model})?(e.preventDefault(),t):(n.cancelEvent(),n.focus(),t)}),e.bind("edit",function(e){n.trigger(oe,{container:e.container,event:e.model})&&e.preventDefault()}),e.bind("save",function(){n.saveEvent()}),e.bind("remove",function(e){n.removeEvent(e.model)})},_createPopupEditor:function(e){var t=this._editor;(!e.isNew()||e.isOccurrence())&&(e.isOccurrence()&&this._convertDates(e.recurrenceId?this.dataSource.get(e.recurrenceId):e),this._convertDates(e)),this.editable=t.editEvent(e)},removeEvent:function(e){var t=this,n="string"==typeof e?t.occurrenceByUid(e):e;n&&(n.isRecurring()?t._deleteRecurringDialog(n):t._confirmation(function(e){e||t._removeEvent(n)},n))},occurrenceByUid:function(e){var t=this.dataSource.getByUid(e);return t||(t=l(this._data,e)),t},occurrencesInRange:function(e,t){return new P.data.Query(this._data).filter({logic:"or",filters:[{logic:"and",filters:[{field:"start",operator:"gte",value:e},{field:"end",operator:"gte",value:e},{field:"start",operator:"lt",value:t}]},{logic:"and",filters:[{field:"start",operator:"lte",value:e},{field:"end",operator:"gt",value:e}]}]}).toArray()},_removeEvent:function(e){this.trigger(te,{event:e})||this.dataSource.remove(e)&&this.dataSource.sync()},_deleteRecurringDialog:function(e){var t,n,i,o,r,a=this,s=e,l=a.options.editable,c=q(l)?l.editRecurringMode:"dialog",u=function(){var e=s.recurrenceId?s:s.toOccurrence(),t=a.dataSource.get(e.recurrenceId);a._convertDates(t),a._removeEvent(e)},d=function(){s.recurrenceId&&(s=a.dataSource.get(s.recurrenceId)),a._removeEvent(s)};("dialog"!=c||a._isEditorOpened())&&(t=function(){a._confirmation(function(e){e||u()},s)},n=function(){a._confirmation(function(e){e||d()},s)}),i=n||d,o=t||u,a._isEditorOpened()?e.isException()?o():i():(r=a.options.messages.recurrenceMessages,a._showRecurringDialog(e,o,i,{title:r.deleteWindowTitle,text:r.deleteRecurring?r.deleteRecurring:ce,occurrenceText:r.deleteWindowOccurrence,seriesText:r.deleteWindowSeries}))},_isEditorOpened:function(){return!!this._editor.container},_unbindView:function(e){var t=this;t.angular("cleanup",function(){return{elements:t.items()}}),e.destroy()},_bindView:function(e){var t=this;t.options.editable&&(t._viewRemoveHandler&&e.unbind(te,t._viewRemoveHandler),t._viewRemoveHandler=function(e){t.removeEvent(e.uid)},e.bind(te,t._viewRemoveHandler),t._viewAddHandler&&e.unbind(ie,t._viewAddHandler),t._viewAddHandler=function(e){t.addEvent(e.eventInfo)},e.bind(ie,this._viewAddHandler),t._viewEditHandler&&e.unbind(oe,t._viewEditHandler),t._viewEditHandler=function(e){t.editEvent(e.uid)},e.bind(oe,this._viewEditHandler)),t._viewNavigateHandler&&e.unbind("navigate",t._viewNavigateHandler),t._viewNavigateHandler=function(e){var n,i;e.view&&(n="isWorkDay"in e,i=n?"changeWorkDay":"changeView",t.trigger("navigate",{view:e.view,isWorkDay:e.isWorkDay,action:i,date:e.date})||(n&&(t._workDayMode=e.isWorkDay),t._selectView(e.view),t.date(e.date)))},e.bind("navigate",t._viewNavigateHandler),t._viewActivateHandler&&e.unbind("activate",t._viewActivateHandler),t._viewActivateHandler=function(){var e=this;t._selection&&(e.constrainSelection(t._selection),t._select(),t._adjustSelectedDate())},e.bind("activate",t._viewActivateHandler)},_selectView:function(e){var t,n,i,o=this;e&&o.views[e]&&(o._selectedView&&o._unbindView(o._selectedView),o._selectedView=o._renderView(e),o._selectedViewName=e,o._viewsCount>1&&(t=pe({views:o.views,view:e,ns:P.ns}),n=o.toolbar.find(".k-scheduler-views li:first-child"),n.is(".k-current-view")?n.replaceWith(t):o.toolbar.find(".k-scheduler-views").prepend(t),i=o.toolbar.find(".k-scheduler-views li").removeClass("k-state-selected"),i.end().find(".k-view-"+e.replace(/\./g,"\\.").toLowerCase()).addClass("k-state-selected")))},view:function(e){var n=this;return e?(n._selectView(e),n.rebind(),t):n._selectedView},viewName:function(){return this.view().name},_renderView:function(e){var t=this._initializeView(e);return this._bindView(t),this._model.set("formattedDate",t.dateForTitle()),this._model.set("formattedShortDate",t.shortDateForTitle()),t},resize:function(e){var t=this.getSize(),n=this._size,i=this.view();i&&i.groups&&(e||!n||t.width!==n.width||t.height!==n.height)&&(this.refresh({action:"resize"}),this._size=t)},_adjustSelectedDate:function(){var e=this._model.selectedDate,t=this._selection,n=t.start;n&&!P.date.isInDateRange(e,B(n),B(t.end))&&e.setFullYear(n.getFullYear(),n.getMonth(),n.getDate())},_initializeView:function(e){var t,n,i=this.views[e];if(i){if(t=q(i),n=i.type,typeof n===U&&(n=P.getter(i.type)(window)),!n)throw Error("There is no such view");i=new n(this.wrapper,h($(!0,{},this.options,t?i:{},{resources:this.resources,date:this.date(),showWorkHours:this._workDayMode})))}return i},_views:function(){var e,t,n,i,o,r,a,s,l,c=this.options.views;for(this.views={},this._viewsCount=0,a=0,s=c.length;s>a;a++)l=!1,e=c[a],i=q(e),i?(r=o=e.type?e.type:e,typeof r!==U&&(o=e.title,l=!0)):r=o=e,t=S[o],t&&!l&&(e.type=t.type,t.title=this.options.messages.views[o],"day"===t.type?t.messages={allDay:this.options.messages.allDay}:"agenda"===t.type&&(t.messages={event:this.options.messages.event,date:this.options.messages.date,time:this.options.messages.time})),e=$({title:o},t,i?e:{}),o&&(this.views[o]=e,this._viewsCount++,(!n||e.selected)&&(n=o));n&&(this._selectedViewName=n)},rebind:function(){this.dataSource.fetch()},_dataSource:function(){var e=this,t=e.options,n=t.dataSource;n=K(n)?{data:n}:n,!t.timezone||n instanceof De?n instanceof De&&(t.timezone=n.options.schema?n.options.schema.timezone:""):n=$(!0,n,{schema:{timezone:t.timezone}}),e.dataSource&&e._refreshHandler?e.dataSource.unbind(J,e._refreshHandler).unbind("progress",e._progressHandler).unbind("error",e._errorHandler):(e._refreshHandler=Y(e.refresh,e),e._progressHandler=Y(e._requestStart,e),e._errorHandler=Y(e._error,e)),e.dataSource=P.data.SchedulerDataSource.create(n).bind(J,e._refreshHandler).bind("progress",e._progressHandler).bind("error",e._errorHandler),e.options.dataSource=e.dataSource},_error:function(){this._progress(!1)},_requestStart:function(){this._progress(!0)},_progress:function(e){var t=this.element.find(".k-scheduler-content");P.ui.progress(t,e)},_resources:function(){var t,n,i,o,r,a=this,s=a.options.resources;for(t=0;s.length>t;t++){if(n=s[t],i=n.field,o=n.dataSource,!i||!o)throw Error('The "field" and "dataSource" options of the scheduler resource are mandatory.');a.resources.push({field:i,name:n.name||i,title:n.title||i,dataTextField:n.dataTextField||"text",dataValueField:n.dataValueField||"value",dataColorField:n.dataColorField||"color",valuePrimitive:null!=n.valuePrimitive?n.valuePrimitive:!0,multiple:n.multiple||!1,dataSource:P.data.DataSource.create(o)})}r=e.map(a.resources,function(e){return e.dataSource.fetch()}),e.when.apply(null,r).then(function(){a.options.autoBind?a.view(a._selectedViewName):a._selectView(a._selectedViewName)})},_initModel:function(){var e=this;e._model=P.observable({selectedDate:new Date(this.options.date),formattedDate:"",formattedShortDate:""}),e._model.bind("change",function(t){"selectedDate"===t.field&&e.view(e._selectedViewName)})},_wrapper:function(){var e=this,t=e.options,n=t.height,i=t.width;e.wrapper=e.element.addClass("k-widget k-scheduler k-floatwrap").attr("role","grid").attr("aria-multiselectable",!0),e._isMobile()&&e.wrapper.addClass("k-scheduler-mobile"),e._isMobilePhoneView()&&e.wrapper.addClass("k-scheduler-phone"),n&&e.wrapper.height(n),i&&e.wrapper.width(i)},date:function(e){return null!=e&&B(e)>=B(this.options.min)&&B(e)<=B(this.options.max)&&this._model.set("selectedDate",e),B(this._model.get("selectedDate"))},_toolbar:function(){var n,i,o=this,r=o.options,a=[];r.toolbar&&(a=e.isArray(r.toolbar)?r.toolbar:[r.toolbar]),n=this._isMobilePhoneView()?me:ge,i=e(n({messages:r.messages,pdf:e.grep(a,function(e){return"pdf"==e||"pdf"==e.name}).length>0,ns:P.ns,views:o.views,viewsCount:o._viewsCount})),o.wrapper.append(i),o.toolbar=i,P.bind(o.toolbar,o._model),i.on(Z+X,".k-pdf",function(e){e.preventDefault(),o.saveAsPDF()}),i.on(Z+X,".k-scheduler-navigation li",function(n){var i=e(this),r=new Date(o.date()),a="";if(n.preventDefault(),i.hasClass("k-nav-today"))a="today",r=new Date;else if(i.hasClass("k-nav-next"))a="next",r=o.view().nextDate();else if(i.hasClass("k-nav-prev"))a="previous",r=o.view().previousDate();else if(i.hasClass("k-nav-current")&&!o._isMobilePhoneView())return o._showCalendar(),t;o.trigger("navigate",{view:o._selectedViewName,action:a,date:r})||o.date(r)}),i.on(Z+X,".k-scheduler-views li, .k-scheduler-refresh",function(t){t.preventDefault();var n=e(this).attr(P.attr("name"));o.trigger("navigate",{view:n,action:"changeView",date:o.date()})||(o.view(n),o.element.find(".k-state-expanded").removeClass("k-state-expanded"))}),i.on(Z+X,".k-scheduler-views li.k-current-view",function(){o.element.find(".k-scheduler-views").toggleClass("k-state-expanded")}),i.find("li").hover(function(){e(this).addClass("k-state-hover")},function(){e(this).removeClass("k-state-hover")})},_showCalendar:function(){var t=this,n=t.toolbar.find(".k-nav-current"),i=e('<div class="k-calendar-container"><div class="k-scheduler-calendar"/></div>');t.popup||(t.popup=new W(i,{anchor:n,activate:function(){t.calendar||(t.calendar=new j(this.element.find(".k-scheduler-calendar"),{change:function(){var e=this.value();t.trigger("navigate",{view:t._selectedViewName,action:"changeDate",date:e})||(t.date(e),t.popup.close())},min:t.options.min,max:t.options.max})),t.calendar.value(t.date())},copyAnchorStyles:!1})),t.popup.open()},refresh:function(e){var t=this,n=this.view();this._progress(!1),this.angular("cleanup",function(){return{elements:t.items()}}),e=e||{},n&&(e&&"itemchange"===e.action&&(this._editor.editable||this._preventRefresh)||this.trigger("dataBinding",{action:e.action||"rebind",index:e.index,items:e.items})||(e&&"resize"===e.action||!this._editor||this._editor.close(),this._data=this.dataSource.expand(n.startDate(),n.endDate()),n.render(this._data),this.trigger("dataBound")))},slotByPosition:function(e,t){var n,i=this.view();return i._slotByPosition?(n=i._slotByPosition(e,t),n?{startDate:n.startDate(),endDate:n.endDate(),groupIndex:n.groupIndex,element:n.element,isDaySlot:n.isDaySlot}:null):null},slotByElement:function(t){var n=e(t).offset();return this.slotByPosition(n.left,n.top)},resourcesBySlot:function(e){return this.view()._resourceBySlot(e)}}),S={day:{type:"kendo.ui.DayView"},week:{type:"kendo.ui.WeekView"},workWeek:{type:"kendo.ui.WorkWeekView"},agenda:{type:"kendo.ui.AgendaView"},month:{type:"kendo.ui.MonthView"},timeline:{type:"kendo.ui.TimelineView"},timelineWeek:{type:"kendo.ui.TimelineWeekView"},timelineWorkWeek:{type:"kendo.ui.TimelineWorkWeekView"},timelineMonth:{type:"kendo.ui.TimelineMonthView"}},N.plugin(C),P.PDFMixin&&(P.PDFMixin.extend(C.prototype),T="k-scheduler-pdf-export",C.fn._drawPDF=function(t){var n,i,o=this.wrapper,r=o[0].style.cssText;return o.css({width:o.width(),height:o.height()}),o.addClass(T),this.resize(!0),n=this,i=new e.Deferred,this._drawPDFShadow({},{avoidLinks:this.options.pdf.avoidLinks}).done(function(e){var n={page:e,pageNumber:1,progress:1,totalPages:1};t.notify(n),i.resolve(n.page)}).fail(function(e){i.reject(e)}).always(function(){o[0].style.cssText=r,o.removeClass(T),n.resize(!0)}),i}),D=H.extend({init:function(e,t){var n=this,i=P.timezone.windows_zones;if(!i||!P.timezone.zones_titles)throw Error("kendo.timezones.min.js is not included.");H.fn.init.call(n,e,t),n.wrapper=n.element,n._zonesQuery=new P.data.Query(i),n._zoneTitleId=P.guid(),n._zoneTitlePicker(),n._zonePicker(),n._zoneTitle.bind("cascade",function(){this.value()||n._zone.wrapper.hide()}),n._zone.bind("cascade",function(){n._value=this.value(),n.trigger("change")}),n.value(n.options.value)},options:{name:"TimezoneEditor",value:"",optionLabel:"No timezone"},events:["change"],_zoneTitlePicker:function(){var t=this,n=e('<input id="'+t._zoneTitleId+'"/>').appendTo(t.wrapper);t._zoneTitle=new P.ui.DropDownList(n,{dataSource:P.timezone.zones_titles,dataValueField:"other_zone",dataTextField:"name",optionLabel:t.options.optionLabel})},_zonePicker:function(){var t=this,n=e("<input />").appendTo(this.wrapper);t._zone=new P.ui.DropDownList(n,{dataValueField:"zone",dataTextField:"territory",dataSource:t._zonesQuery.data,cascadeFrom:t._zoneTitleId,dataBound:function(){t._value=this.value(),this.wrapper.toggle(this.dataSource.view().length>1)}}),t._zone.wrapper.hide()},destroy:function(){H.fn.destroy.call(this),P.destroy(this.wrapper)},value:function(e){var n,i=this;return e===t?i._value:(n=i._zonesQuery.filter({field:"zone",operator:"eq",value:e}).data[0],n?(i._zoneTitle.value(n.other_zone),i._zone.value(n.zone)):i._zoneTitle.select(0),t)}}),N.plugin(D),A=P.template('<option value="#=other_zone#">#=name#</option>'),E=P.template('<option value="#=zone#">#=territory#</option>'),M=H.extend({init:function(e,t){var n=this,i=P.timezone.windows_zones;if(!i||!P.timezone.zones_titles)throw Error("kendo.timezones.min.js is not included.");H.fn.init.call(n,e,t),n.wrapper=n.element,n._zonesQuery=new P.data.Query(i),n._zoneTitlePicker(),n._zonePicker(),n.value(n.options.value)},options:{name:"MobileTimezoneEditor",optionLabel:"No timezone",value:""},events:["change"],_bindZones:function(e){var t=e?this._filter(e):[];this._zone.html(this._options(t,E))},_filter:function(e){return this._zonesQuery.filter({field:"other_zone",operator:"eq",value:e}).data},_options:function(e,t,n){var i=0,o="",r=e.length;for(n&&(o+=t({other_zone:"",name:n}));r>i;i++)o+=t(e[i]);return o},_zoneTitlePicker:function(){var t=this,n=t._options(P.timezone.zones_titles,A,t.options.optionLabel);t._zoneTitle=e("<select>"+n+"</select>").appendTo(t.wrapper).change(function(){var e=this.value,n=t._zone;t._bindZones(e),e&&n[0].children.length>1?n.show():n.hide(),t._value=n[0].value,t.trigger("change")})},_zonePicker:function(){var t=this;t._zone=e('<select style="display:none"></select>').appendTo(this.wrapper).change(function(){t._value=this.value,t.trigger("change")}),t._bindZones(t._zoneTitle.val()),t._value=t._zone[0].value},destroy:function(){H.fn.destroy.call(this),P.destroy(this.wrapper)},value:function(e){var n,i=this,o=i._zone,r="",a="";return e===t?i._value:(n=i._zonesQuery.filter({field:"zone",operator:"eq",value:e}).data[0],n&&(a=n.zone,r=n.other_zone),i._zoneTitle.val(r),i._bindZones(r),o.val(a),a=o[0].value,a&&o[0].children.length>1?o.show():o.hide(),i._value=a,t)}}),N.plugin(M)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(e,t){t()}); |