{"version":3,"sources":["kendo.scheduler.js"],"names":["f","define","$","normalizeText","text","String","replace","REPLACE_REGEX","SPACE","objectKey","object","key","parts","push","sort","join","hashKey","str","i","hash","length","charCodeAt","zeroSize","width","height","baseline","measureText","style","measureBox","TextMetrics","current","measure","LRUCache","DEFAULT_OPTIONS","defaultMeasureBox","window","kendo","util","Class","extend","init","size","this","_size","_length","_map","put","value","map","entry","_head","_tail","newer","older","get","baselineMarkerSize","document","createElement","cssText","options","_cache","styleKey","cacheKey","cachedResult","baselineMarker","textStr","box","_baselineMarker","cloneNode","textContent","appendChild","body","offsetWidth","offsetHeight","offsetTop","parentNode","removeChild","marker","deepExtend","jQuery","amd","a1","a2","a3","undefined","timezoneButtonText","model","message","startTimezone","endTimezone","appendTimezoneAttr","attrs","timezone","attr","appendDateCompareValidator","dateCompareRule","validationRules","fields","field","validation","dateCompare","isPlainObject","wrapDataAccess","originalFunction","data","convertData","wrapDataSerialization","toString","call","ObservableArray","method","removeUid","event","idx","start","convert","end","uid","getOccurrenceByUid","applyZone","date","fromZone","toZone","remove","dateCompareValidator","input","container","startInput","endInput","startPicker","endPicker","editable","filter","closest","find","widgetInstance","ui","parseDate","val","expandAll","events","zone","concat","expand","trimOptions","name","prefix","edit","add","navigate","createValidationAttributes","ruleName","rule","modelField","specialRules","datatype","inArray","isFunction","dropDownResourceEditor","resource","format","title","ns","appendTo","kendoDropDownList","dataTextField","dataValueField","dataSource","valuePrimitive","optionLabel","template","dataColorField","dropDownResourceEditorMobile","view","getter","descriptionEditor","multiSelectResourceEditor","kendoMultiSelect","itemTemplate","tagTemplate","multiSelectResourceEditorMobile","moveEventRange","distance","duration","getTime","Date","setTime","defaultCommands","editors","Editor","MobileEditor","PopupEditor","Scheduler","defaultViews","SCHEDULER_EXPORT","TimezoneEditor","ZONETITLEOPTIONTEMPLATE","ZONEOPTIONTEMPLATE","MobileTimezoneEditor","MS_PER_DAY","getDate","getMilliseconds","recurrence","keys","F10","Widget","DataBoundWidget","STRING","Popup","Calendar","DataSource","proxy","Object","prototype","isArray","NS","CLICK","MOUSEDOWN","TOUCHSTART","support","pointers","TOUCHMOVE","TOUCHEND","MOUSEMOVE","mousemove","CHANGE","CANCEL","REMOVE","RESET","SAVE","ADD","EDIT","FOCUSEDSTATE","EXPANDEDSTATE","VIEWSSELECTOR","INVERSECOLORCLASS","valueStartEndBoundRegex","TODAY","EXCEPTION_SEPARATOR","OLD_EXCEPTION_SEPARATOR_REGEXP","RECURRENCE_EXCEPTION","DELETECONFIRM","DELETERECURRING","EDITRECURRING","DELETERECURRINGCONFIRM","RESETSERIESCONFIRM","DELETESERIESCONFIRM","COMMANDBUTTONTMPL","VIEWBUTTONTEMPLATE","TOOLBARTEMPLATE","MOBILETOOLBARTEMPLATE","MOBILEDATERANGEEDITOR","isAllDay","dateTimeValidate","dateValidate","hide","DATERANGEEDITOR","RECURRENCEEDITOR","kendoRecurrenceEditor","messages","MOBILERECURRENCEEDITOR","kendoMobileRecurrenceEditor","pane","MOBILEISALLDAYEDITOR","MOBILETIMEZONEPOPUP","noTimezone","click","TIMEZONEPOPUP","timezoneEditorButton","MOBILETIMEZONEEDITOR","kendoMobileTimezoneEditor","TIMEZONEEDITOR","visible","toggle","kendoTimezoneEditor","SchedulerDataReader","schema","reader","serialize","errors","parse","total","groups","aggregates","SchedulerEvent","Model","that","fn","_defaultId","defaults","idField","_time","fieldTime","toUtcTime","_date","clone","updateUid","constructor","toJSON","offset","getTimezoneOffset","MS_PER_MINUTE","update","eventInfo","set","_startTime","_endTime","isMultiDay","isException","isNew","recurrenceId","isOccurrence","isRecurring","recurrenceRule","isRecurrenceHead","id","toOccurrence","recurrenceException","obj","shouldSerialize","milliseconds","type","defaultValue","required","description","SchedulerDataSource","modelBase","endOffset","apply","logic","filters","operator","Query","toArray","cancelChanges","_removeExceptionDate","insert","index","_createNewModel","accept","_pushCreated","_addExceptionDate","pushCreate","items","_removeExceptions","slice","item","shift","head","replaceRegExp","RegExp","toExceptionString","test","newException","create","Error","className","canceledit","destroy","imageClass","iconClass","mobile","dateRange","timezonePopUp","multipleResources","resources","desktop","Observable","element","createButton","toggleDateValidationHandler","_toggleDateValidation","e","isDateTimeInput","shouldValidate","bindAttribute","each","is","resourceIndex","preventDefault","_initTimezoneEditor","editor","allDayEvent","windows_zones","repeat","recurrenceEditor","multiple","_buildDesktopEditTemplate","editableFields","tmpl","settings","Template","templateSettings","paramName","html","separateTimezones","expr","_createEndTimezoneButton","_buildMobileEditTemplate","_buildEditTemplate","isMobile","unescape","_revertTimezones","_startTimezone","_endTimezone","arguments","Pane","wrap","viewEngine","viewOptions","renderOnInit","wrapInSections","detachOnHide","detachOnDestroy","parent","css","animations","left","right","close","unbind","timezoneView","content","kSwitch","endTimezoneRow","startTimezoneChange","enable","cancel","timezoneTitle","save","append","contentElement","show","on","editView","stopPropagation","hasClass","_editPane","bind","ev","checked","showDialog","actions","buttons","button","action","primary","kendoDialog","modal","preventScroll","closable","editEvent","resetSeriesBtn","deleteBtn","updateText","removeText","cancelText","titleText","editorTitle","resetSeries","kendoEditable","clearContainer","target","validateOnBlur","trigger","_views","roleSelector","not","views","eq","purge","deleteText","kendoWindow","resizable","draggable","userTriggered","center","open","cycleForm","popup","_timezonePopup","buttonIndex","wrapper","currentTarget","focus","getKendoWindow","activator","wnd","checkbox","saveButton","cancelButton","timezonePopup","prop","timezoneEditorTitle","_initModel","_wrapper","_toolbar","_dataSource","_resources","_resizeHandler","resize","_resizable","_movable","_bindResize","_selectable","_touchHandlers","_ariaId","guid","_createEditor","_unbindResize","off","dataItems","eventsCount","sortedData","_data","eventsUids","dict","eventsUidsLength","_isMobile","mobileOS","_isTouch","originalEvent","pointerType","_isInverseColor","eventElement","_groupsByResource","groupIndex","groupsArray","parentFieldValue","parentField","group","prevIndex","dataIndex","fieldValue","currentGroupIndex","select","selectedGroups","selectedEvents","slots","fieldName","groupsByResource","rangeStart","rangeEnd","ranges","selection","_selection","_selectedSlots","_selectedEvents","_resourceBySlot","_old","clearSelection","splice","groupedResources","_selectEvents","_select","_startDate","addDays","_endDate","toLocalDate","isDaySlot","currentGroup","timeSlotCollectionCount","daySlotCollectionCount","collIdx","dayCollIdx","eventsLength","isGrouped","getTimeSlotCollection","getDaySlotCollection","_createSelection","startX","startY","endX","endY","timeStamp","touchMoveHandler","_touchMove","stop","_touchPosX","_tapPosition","_touchPosY","_userTouched","_scrolling","now","delta","amplitude","_amplitude","_dragging","selectable","Math","abs","_mouseDownSelection","kineticScrollNeeded","animate","scrollTop","mouseMoveHandler","_tabindex","_mouseMove","which","isRight","_selectFirstSlot","_ctrlKey","_shiftKey","toolbar","removeClass","relatedTarget","_keydown","ctrlKey","shiftKey","browser","msie","version","setTimeout","currentUid","labelFormat","oldSelection","oldEventsLength","removeAttribute","removeAttr","ariaEventLabel","ariaSlotLabel","setAttribute","uids","occurrenceByUid","coordinate","changedTouches","verticalScroll","scrollHeight","clientHeight","horizontalScroll","scrollWidth","clientWidth","round","scrollLeft","applyVerticalScroll","applyhorizontalScroll","clearTimeout","_moveTimer","slot","startDate","endDate","selectionByElement","backward","_viewByIndex","selectedIndex","itemToFocus","focusedViewName","viewByIndex","keyCode","prevSelection","isModifier","focusableToolBarSelector","focusableItems","viewsWrapper","shouldNavigate","focusedViewIndex","children","isRtl","direction","addClass","TAB","_focusedView","ENTER","SPACEBAR","activeElement","blur","altKey","DOWN","RIGHT","LEFT","UP","_showCalendar","ESC","moveToEvent","addEvent","DELETE","removeEvent","move","inRange","_selectedViewName","_adjustSelectedDate","indexOf","_updateSelection","dataItem","indexOfEvent","_updateEventForSelection","_timeSlotInterval","autoBind","snap","allDaySlot","min","max","workWeekStart","workWeekEnd","showWorkHours","startTime","endTime","currentTimeMarker","updateInterval","useLocalTimezone","footer","today","pdf","deleteWindowTitle","next","previous","day","week","workWeek","agenda","month","timeline","timelineWeek","timelineWorkWeek","timelineMonth","recurrenceMessages","resetSeriesWindowTitle","deleteWindowOccurrence","deleteWindowSeries","editWindowTitle","editWindowOccurrence","editWindowSeries","confirmation","orientation","_refreshHandler","_progressHandler","_errorHandler","calendar","_editor","_moveDraggable","_resizeDraggable","_model","setDataSource","fetch","_selectedView","siblings","startSlot","endSlot","startResources","clonedEvent","originSlot","originStartTime","clonedEvents","cachedEvents","movable","android","Draggable","ignore","holdToDrag","autoScroll","evtClone","evtCloneElement","isTouch","_eventOptionsForMove","inverseColor","_slotByPosition","x","startLocation","y","startOffset","range","slotIndex","targetSlotElement","location","top","_updateMoveHint","endResources","prevented","evt","updatedEventOptions","eventOptions","_removeMoveHint","stringify","_isMultiDrag","_updateEvent","sync","cancelHold","handle","directions","k-resize-e","k-resize-w","k-resize-n","k-resize-s","dragstart","dragHandle","_updateEventForResize","drag","dir","currentSlot","originalStart","originalEnd","_updateResizeHint","dragend","_removeResizeHint","setHours","setMinutes","dragcancel","updateEvent","callback","_preventRefresh","_convertDates","recurrenceHead","getByUid","updateSeries","updateOccurrence","eventUid","exception","_showRecurringDialog","editRecurring","occurrenceText","seriesText","_modelForContainer","_confirmation","isResetSeries","_isEditorOpened","deleteRecurringConfirmation","deleteSeriesConfirmation","resetSeriesConfirmation","cancelEvent","_editEvent","saveEvent","dirty","_editRecurringDialog","_createPopupEditor","editOccurrence","editSeries","editRecurringMode","_createButton","command","commandName","_set","_deleteRecurringDialog","_removeEvent","occurrence","occurrencesInRange","deleteOccurrenceConfirmation","seriesCallback","occurrenceCallback","currentModel","deleteOccurrence","deleteSeries","deleteRecurring","_unbindView","angular","elements","_bindView","_viewRemoveHandler","_viewAddHandler","_viewEditHandler","_viewNavigateHandler","switchWorkDay","isWorkDay","_workDayMode","_selectView","_viewActivateHandler","constrainSelection","viewButton","firstButton","viewButtons","viewSelect","_renderView","_viewsCount","replaceWith","prepend","toLowerCase","rebind","viewName","_initializeView","mouseAndTouchPresent","dateForTitle","shortDateForTitle","mobileDateForTitle","force","getSize","currentSize","refresh","selectedDate","isInDateRange","setFullYear","getFullYear","getMonth","isSettings","defaultView","selected","hasType","allDay","time","_requestStart","_error","_progress","progress","promises","when","then","observable","formattedDate","formattedShortDate","commands","grep","viewsCount","saveAsPDF","timezoneOffset","li","currentDate","nextDate","previousDate","toggleClass","hover","targetElm","anchor","activate","_toggleResize","change","copyAnchorStyles","visibleEndDate","refreshLayout","render","slotByPosition","slotByElement","resourcesBySlot","plugin","PDFMixin","_drawPDF","scheduler","promise","table","styles","Deferred","_drawPDFShadow","avoidLinks","done","args","page","pageNumber","totalPages","notify","resolve","fail","err","reject","always","zones","zones_titles","_zonesQuery","_zoneTitleId","_zoneTitlePicker","_zonePicker","_zoneTitle","_zone","_value","zoneTitle","DropDownList","cascadeFrom","dataBound","other_zone","_bindZones","_filter","_options","_zonePickerLabel","zoneSelect","after","zonePicker","zone_value"],"mappings":"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","file":"kendo.scheduler.min.js","sourcesContent":["/*!\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n*/\n(function (f, define) {\n define('util/text-metrics', ['kendo.core'], f);\n}(function () {\n (function ($) {\n window.kendo.util = window.kendo.util || {};\n var LRUCache = kendo.Class.extend({\n init: function (size) {\n this._size = size;\n this._length = 0;\n this._map = {};\n },\n put: function (key, value) {\n var map = this._map;\n var entry = {\n key: key,\n value: value\n };\n map[key] = entry;\n if (!this._head) {\n this._head = this._tail = entry;\n } else {\n this._tail.newer = entry;\n entry.older = this._tail;\n this._tail = entry;\n }\n if (this._length >= this._size) {\n map[this._head.key] = null;\n this._head = this._head.newer;\n this._head.older = null;\n } else {\n this._length++;\n }\n },\n get: function (key) {\n var entry = this._map[key];\n if (entry) {\n if (entry === this._head && entry !== this._tail) {\n this._head = entry.newer;\n this._head.older = null;\n }\n if (entry !== this._tail) {\n if (entry.older) {\n entry.older.newer = entry.newer;\n entry.newer.older = entry.older;\n }\n entry.older = this._tail;\n entry.newer = null;\n this._tail.newer = entry;\n this._tail = entry;\n }\n return entry.value;\n }\n }\n });\n var REPLACE_REGEX = /\\r?\\n|\\r|\\t/g;\n var SPACE = ' ';\n function normalizeText(text) {\n return String(text).replace(REPLACE_REGEX, SPACE);\n }\n function objectKey(object) {\n var parts = [];\n for (var key in object) {\n parts.push(key + object[key]);\n }\n return parts.sort().join('');\n }\n function hashKey(str) {\n var hash = 2166136261;\n for (var i = 0; i < str.length; ++i) {\n hash += (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);\n hash ^= str.charCodeAt(i);\n }\n return hash >>> 0;\n }\n function zeroSize() {\n return {\n width: 0,\n height: 0,\n baseline: 0\n };\n }\n var DEFAULT_OPTIONS = { baselineMarkerSize: 1 };\n var defaultMeasureBox;\n if (typeof document !== 'undefined') {\n defaultMeasureBox = document.createElement('div');\n defaultMeasureBox.style.cssText = 'position: absolute !important; top: -4000px !important; width: auto !important; height: auto !important;' + 'padding: 0 !important; margin: 0 !important; border: 0 !important;' + 'line-height: normal !important; visibility: hidden !important; white-space: pre!important;';\n }\n var TextMetrics = kendo.Class.extend({\n init: function (options) {\n this._cache = new LRUCache(1000);\n this.options = $.extend({}, DEFAULT_OPTIONS, options);\n },\n measure: function (text, style, options) {\n if (options === void 0) {\n options = {};\n }\n if (!text) {\n return zeroSize();\n }\n var styleKey = objectKey(style);\n var cacheKey = hashKey(text + styleKey);\n var cachedResult = this._cache.get(cacheKey);\n if (cachedResult) {\n return cachedResult;\n }\n var size = zeroSize();\n var measureBox = options.box || defaultMeasureBox;\n var baselineMarker = this._baselineMarker().cloneNode(false);\n for (var key in style) {\n var value = style[key];\n if (typeof value !== 'undefined') {\n measureBox.style[key] = value;\n }\n }\n var textStr = options.normalizeText !== false ? normalizeText(text) : String(text);\n measureBox.textContent = textStr;\n measureBox.appendChild(baselineMarker);\n document.body.appendChild(measureBox);\n if (textStr.length) {\n size.width = measureBox.offsetWidth - this.options.baselineMarkerSize;\n size.height = measureBox.offsetHeight;\n size.baseline = baselineMarker.offsetTop + this.options.baselineMarkerSize;\n }\n if (size.width > 0 && size.height > 0) {\n this._cache.put(cacheKey, size);\n }\n measureBox.parentNode.removeChild(measureBox);\n return size;\n },\n _baselineMarker: function () {\n var marker = document.createElement('div');\n marker.style.cssText = 'display: inline-block; vertical-align: baseline;width: ' + this.options.baselineMarkerSize + 'px; height: ' + this.options.baselineMarkerSize + 'px;overflow: hidden;';\n return marker;\n }\n });\n TextMetrics.current = new TextMetrics();\n function measureText(text, style, measureBox) {\n return TextMetrics.current.measure(text, style, measureBox);\n }\n kendo.deepExtend(kendo.util, {\n LRUCache: LRUCache,\n TextMetrics: TextMetrics,\n measureText: measureText,\n objectKey: objectKey,\n hashKey: hashKey,\n normalizeText: normalizeText\n });\n }(window.kendo.jQuery));\n}, typeof define == 'function' && define.amd ? define : function (a1, a2, a3) {\n (a3 || a2)();\n}));\n(function (f, define) {\n define('kendo.scheduler', [\n 'kendo.dropdownlist',\n 'kendo.editable',\n 'kendo.multiselect',\n 'kendo.window',\n 'kendo.datetimepicker',\n 'kendo.scheduler.recurrence',\n 'kendo.scheduler.view',\n 'kendo.scheduler.dayview',\n 'kendo.scheduler.agendaview',\n 'kendo.scheduler.monthview',\n 'kendo.scheduler.timelineview',\n 'kendo.dialog',\n 'kendo.pane',\n 'kendo.pdf',\n 'kendo.switch'\n ], f);\n}(function () {\n var __meta__ = {\n id: 'scheduler',\n name: 'Scheduler',\n category: 'web',\n description: 'The Scheduler is an event calendar.',\n depends: [\n 'dropdownlist',\n 'editable',\n 'multiselect',\n 'window',\n 'datepicker',\n 'datetimepicker',\n 'scheduler.recurrence',\n 'scheduler.view'\n ],\n features: [\n {\n id: 'scheduler-dayview',\n name: 'Scheduler Day View',\n description: 'Scheduler Day View',\n depends: ['scheduler.dayview']\n },\n {\n id: 'scheduler-agendaview',\n name: 'Scheduler Agenda View',\n description: 'Scheduler Agenda View',\n depends: ['scheduler.agendaview']\n },\n {\n id: 'scheduler-monthview',\n name: 'Scheduler Month View',\n description: 'Scheduler Month View',\n depends: ['scheduler.monthview']\n },\n {\n id: 'scheduler-timelineview',\n name: 'Scheduler Timeline View',\n description: 'Scheduler Timeline View',\n depends: ['scheduler.timelineview']\n },\n {\n id: 'scheduler-mobile',\n name: 'Scheduler adaptive rendering',\n description: 'Support for adaptive rendering',\n depends: [\n 'dialog',\n 'pane',\n 'switch'\n ]\n },\n {\n id: 'scheduler-pdf-export',\n name: 'PDF export',\n description: 'Export the scheduler events as PDF',\n depends: [\n 'pdf',\n 'drawing'\n ]\n },\n {\n id: 'scheduler-timezones',\n name: 'Timezones',\n description: 'Allow selecting timezones different than Etc/UTC',\n depends: ['timezones']\n }\n ]\n };\n (function ($, undefined) {\n var kendo = window.kendo, date = kendo.date, MS_PER_DAY = date.MS_PER_DAY, getDate = date.getDate, getMilliseconds = kendo.date.getMilliseconds, recurrence = kendo.recurrence, keys = $.extend({ F10: 121 }, kendo.keys), ui = kendo.ui, Widget = ui.Widget, DataBoundWidget = ui.DataBoundWidget, STRING = 'string', Popup = ui.Popup, Calendar = ui.Calendar, DataSource = kendo.data.DataSource, isPlainObject = $.isPlainObject, extend = $.extend, proxy = $.proxy, toString = Object.prototype.toString, isArray = $.isArray, NS = '.kendoScheduler', CLICK = 'click', MOUSEDOWN = 'mousedown', TOUCHSTART = kendo.support.pointers ? 'pointerdown' : 'touchstart', TOUCHMOVE = kendo.support.pointers ? 'pointermove' : 'touchmove', TOUCHEND = kendo.support.pointers ? 'pointerup' : 'touchend', MOUSEMOVE = kendo.support.mousemove, CHANGE = 'change', CANCEL = 'cancel', REMOVE = 'remove', RESET = 'resetSeries', SAVE = 'save', ADD = 'add', EDIT = 'edit', FOCUSEDSTATE = 'k-state-focused', EXPANDEDSTATE = 'k-state-expanded', VIEWSSELECTOR = '.k-scheduler-views', INVERSECOLORCLASS = 'k-event-inverse', valueStartEndBoundRegex = /(?:value:start|value:end)(?:,|$)/, TODAY = getDate(new Date()), EXCEPTION_SEPARATOR = ',', OLD_EXCEPTION_SEPARATOR_REGEXP = /\\;/g, RECURRENCE_EXCEPTION = 'recurrenceException', DELETECONFIRM = 'Are you sure you want to delete this event?', DELETERECURRING = 'Do you want to delete only this event occurrence or the whole series?', EDITRECURRING = 'Do you want to edit only this event occurrence or the whole series?', DELETERECURRINGCONFIRM = 'Are you sure you want to delete this event occurrence?', RESETSERIESCONFIRM = 'Are you sure you want to reset the whole series?', DELETESERIESCONFIRM = 'Are you sure you want to delete the whole series?', COMMANDBUTTONTMPL = '#=text#', VIEWBUTTONTEMPLATE = kendo.template('
  • ${views[view].title}
  • '), TOOLBARTEMPLATE = kendo.template('
    ' + '# if (pdf) { #' + '' + '# } #' + '' + '#if(viewsCount === 1){#' + '' + '' + '' + '#}else{#' + '' + '#}#' + '
    '), MOBILETOOLBARTEMPLATE = kendo.template('
    ' + '' + '#if(viewsCount === 1){#' + '' + '' + '' + '#}else{#' + '' + '#}#' + '
    ' + '
    ' + '' + '
    '), MOBILEDATERANGEEDITOR = function (container, options) {\n var attr = {\n name: options.field,\n title: options.title\n };\n var isAllDay = options.model.isAllDay;\n var dateTimeValidate = kendo.attr('validate') + '=\\'' + !isAllDay + '\\'';\n var dateValidate = kendo.attr('validate') + '=\\'' + isAllDay + '\\'';\n appendTimezoneAttr(attr, options);\n appendDateCompareValidator(attr, options);\n $('').attr(attr).appendTo(container);\n $('').attr(attr).appendTo(container);\n $('').hide().appendTo(container);\n }, DATERANGEEDITOR = function (container, options) {\n var attr = {\n name: options.field,\n title: options.title\n }, isAllDay = options.model.isAllDay, dateTimeValidate = kendo.attr('validate') + '=\\'' + !isAllDay + '\\' ', dateValidate = kendo.attr('validate') + '=\\'' + isAllDay + '\\' ';\n appendTimezoneAttr(attr, options);\n appendDateCompareValidator(attr, options);\n $('').attr(attr).appendTo(container);\n $('').attr(attr).appendTo(container);\n $('').appendTo(container);\n if (options.field === 'end') {\n $('').appendTo(container);\n }\n $('').hide().appendTo(container);\n }, RECURRENCEEDITOR = function (container, options) {\n $('
    ').attr({ name: options.field }).appendTo(container).kendoRecurrenceEditor({\n start: options.model.start,\n timezone: options.timezone,\n messages: options.messages\n });\n }, MOBILERECURRENCEEDITOR = function (container, options) {\n $('
    ').attr({ name: options.field }).appendTo(container).kendoMobileRecurrenceEditor({\n start: options.model.start,\n timezone: options.timezone,\n messages: options.messages,\n pane: options.pane,\n value: options.model[options.field]\n });\n }, MOBILEISALLDAYEDITOR = function (container, options) {\n $('').appendTo(container);\n }, MOBILETIMEZONEPOPUP = function (container, options) {\n var text = timezoneButtonText(options.model, options.messages.noTimezone);\n $('').text(text).appendTo(container);\n $('').appendTo(container);\n container.closest('li.k-item label').click(options.click);\n }, TIMEZONEPOPUP = function (container, options) {\n $('' + options.messages.timezoneEditorButton + '').click(options.click).appendTo(container);\n }, MOBILETIMEZONEEDITOR = function (container, options) {\n $('
    ').attr({ name: options.field }).appendTo(container).kendoMobileTimezoneEditor({ optionLabel: options.noTimezone });\n }, TIMEZONEEDITOR = function (container, options) {\n var visible = options.visible || options.visible === undefined;\n $('
    ').attr({ name: options.field }).toggle(visible).appendTo(container).kendoTimezoneEditor({\n optionLabel: options.noTimezone,\n title: options.title\n });\n };\n function timezoneButtonText(model, message) {\n message = message || '';\n if (model.startTimezone) {\n message = model.startTimezone;\n if (model.endTimezone) {\n message += ' | ' + model.endTimezone;\n }\n }\n return message;\n }\n function appendTimezoneAttr(attrs, options) {\n var timezone = options.timezone;\n if (timezone) {\n attrs[kendo.attr('timezone')] = timezone;\n }\n }\n function appendDateCompareValidator(attrs, options) {\n var validationRules = options.model.fields[options.field].validation;\n if (validationRules) {\n var dateCompareRule = validationRules.dateCompare;\n if (dateCompareRule && isPlainObject(dateCompareRule) && dateCompareRule.message) {\n attrs[kendo.attr('dateCompare-msg')] = dateCompareRule.message;\n }\n }\n }\n function wrapDataAccess(originalFunction, timezone) {\n return function (data) {\n data = originalFunction(data);\n convertData(data, 'apply', timezone);\n return data || [];\n };\n }\n function wrapDataSerialization(originalFunction, timezone) {\n return function (data) {\n if (data) {\n if (toString.call(data) !== '[object Array]' && !(data instanceof kendo.data.ObservableArray)) {\n data = [data];\n }\n }\n convertData(data, 'remove', timezone, true);\n data = originalFunction(data);\n return data || [];\n };\n }\n function convertData(data, method, timezone, removeUid) {\n var event, idx, length;\n data = data || [];\n for (idx = 0, length = data.length; idx < length; idx++) {\n event = data[idx];\n if (removeUid) {\n if (event.startTimezone || event.endTimezone) {\n if (timezone) {\n event.start = kendo.timezone.convert(event.start, event.startTimezone || event.endTimezone, timezone);\n event.end = kendo.timezone.convert(event.end, event.endTimezone || event.startTimezone, timezone);\n event.start = kendo.timezone[method](event.start, timezone);\n event.end = kendo.timezone[method](event.end, timezone);\n } else {\n event.start = kendo.timezone[method](event.start, event.startTimezone || event.endTimezone);\n event.end = kendo.timezone[method](event.end, event.endTimezone || event.startTimezone);\n }\n } else if (timezone) {\n event.start = kendo.timezone[method](event.start, timezone);\n event.end = kendo.timezone[method](event.end, timezone);\n }\n } else {\n if (event.startTimezone || event.endTimezone) {\n event.start = kendo.timezone[method](event.start, event.startTimezone || event.endTimezone);\n event.end = kendo.timezone[method](event.end, event.endTimezone || event.startTimezone);\n if (timezone) {\n event.start = kendo.timezone.convert(event.start, event.startTimezone || event.endTimezone, timezone);\n event.end = kendo.timezone.convert(event.end, event.endTimezone || event.startTimezone, timezone);\n }\n } else if (timezone) {\n event.start = kendo.timezone[method](event.start, timezone);\n event.end = kendo.timezone[method](event.end, timezone);\n }\n }\n if (removeUid) {\n delete event.uid;\n }\n }\n return data;\n }\n function getOccurrenceByUid(data, uid) {\n var length = data.length, idx = 0, event;\n for (; idx < length; idx++) {\n event = data[idx];\n if (event.uid === uid) {\n return event;\n }\n }\n }\n var SchedulerDataReader = kendo.Class.extend({\n init: function (schema, reader) {\n var timezone = schema.timezone;\n this.reader = reader;\n if (reader.model) {\n this.model = reader.model;\n }\n this.timezone = timezone;\n this.data = wrapDataAccess($.proxy(this.data, this), timezone);\n this.serialize = wrapDataSerialization($.proxy(this.serialize, this), timezone);\n },\n errors: function (data) {\n return this.reader.errors(data);\n },\n parse: function (data) {\n return this.reader.parse(data);\n },\n data: function (data) {\n return this.reader.data(data);\n },\n total: function (data) {\n return this.reader.total(data);\n },\n groups: function (data) {\n return this.reader.groups(data);\n },\n aggregates: function (data) {\n return this.reader.aggregates(data);\n },\n serialize: function (data) {\n return this.reader.serialize(data);\n }\n });\n function applyZone(date, fromZone, toZone) {\n if (toZone) {\n date = kendo.timezone.convert(date, fromZone, toZone);\n } else {\n date = kendo.timezone.remove(date, fromZone);\n }\n return date;\n }\n function dateCompareValidator(input) {\n if (input.filter('[name=end]').length) {\n var container = input.closest('.k-scheduler-edit-form');\n var startInput = container.find('[name=start]:visible');\n var endInput = container.find('[name=end]:visible');\n if (endInput[0] && startInput[0]) {\n var start, end;\n var startPicker = kendo.widgetInstance(startInput, kendo.ui);\n var endPicker = kendo.widgetInstance(endInput, kendo.ui);\n var editable = container.data('kendoEditable');\n var model = editable ? editable.options.model : null;\n if (startPicker && endPicker) {\n start = startPicker.value();\n end = endPicker.value();\n } else {\n start = kendo.parseDate(startInput.val());\n end = kendo.parseDate(endInput.val());\n }\n if (start && end) {\n if (model) {\n var timezone = startInput.attr(kendo.attr('timezone'));\n var startTimezone = model.startTimezone;\n var endTimezone = model.endTimezone;\n startTimezone = startTimezone || endTimezone;\n endTimezone = endTimezone || startTimezone;\n if (startTimezone) {\n start = applyZone(start, startTimezone, timezone);\n end = applyZone(end, endTimezone, timezone);\n }\n }\n return start <= end;\n }\n }\n }\n return true;\n }\n var SchedulerEvent = kendo.data.Model.define({\n init: function (value) {\n var that = this;\n kendo.data.Model.fn.init.call(that, value);\n that._defaultId = that.defaults[that.idField];\n },\n _time: function (field) {\n var date = this[field];\n var fieldTime = '_' + field + 'Time';\n if (this[fieldTime]) {\n return this[fieldTime] - kendo.date.toUtcTime(kendo.date.getDate(date));\n }\n return getMilliseconds(date);\n },\n _date: function (field) {\n var fieldTime = '_' + field + 'Time';\n if (this[fieldTime]) {\n return this[fieldTime] - this._time(field);\n }\n return kendo.date.getDate(this[field]);\n },\n clone: function (options, updateUid) {\n var uid = this.uid, event = new this.constructor($.extend({}, this.toJSON(), options));\n if (!updateUid) {\n event.uid = uid;\n }\n return event;\n },\n duration: function () {\n var end = this.end;\n var start = this.start;\n var offset = (end.getTimezoneOffset() - start.getTimezoneOffset()) * kendo.date.MS_PER_MINUTE;\n return end - start - offset;\n },\n expand: function (start, end, zone) {\n return recurrence ? recurrence.expand(this, start, end, zone) : [this];\n },\n update: function (eventInfo) {\n for (var field in eventInfo) {\n this.set(field, eventInfo[field]);\n }\n if (this._startTime) {\n this.set('_startTime', kendo.date.toUtcTime(this.start));\n }\n if (this._endTime) {\n this.set('_endTime', kendo.date.toUtcTime(this.end));\n }\n },\n isMultiDay: function () {\n return this.isAllDay || this.duration() >= kendo.date.MS_PER_DAY;\n },\n isException: function () {\n return !this.isNew() && this.recurrenceId;\n },\n isOccurrence: function () {\n return this.isNew() && this.recurrenceId;\n },\n isRecurring: function () {\n return !!(this.recurrenceRule || this.recurrenceId);\n },\n isRecurrenceHead: function () {\n return !!(this.id && this.recurrenceRule);\n },\n toOccurrence: function (options) {\n options = $.extend(options, {\n recurrenceException: null,\n recurrenceRule: null,\n recurrenceId: this.id || this.recurrenceId\n });\n options[this.idField] = this.defaults[this.idField];\n return this.clone(options, true);\n },\n toJSON: function () {\n var obj = kendo.data.Model.fn.toJSON.call(this);\n obj.uid = this.uid;\n delete obj._startTime;\n delete obj._endTime;\n return obj;\n },\n shouldSerialize: function (field) {\n return kendo.data.Model.fn.shouldSerialize.call(this, field) && field !== '_defaultId';\n },\n set: function (key, value) {\n var isAllDay = this.isAllDay || false;\n kendo.data.Model.fn.set.call(this, key, value);\n if (key == 'isAllDay' && value != isAllDay) {\n var start = kendo.date.getDate(this.start);\n var end = new Date(this.end);\n var milliseconds = kendo.date.getMilliseconds(end);\n if (milliseconds === 0 && value) {\n milliseconds = MS_PER_DAY;\n }\n this.set('start', start);\n if (value === true) {\n kendo.date.setTime(end, -milliseconds);\n if (end < start) {\n end = start;\n }\n } else {\n kendo.date.setTime(end, MS_PER_DAY - milliseconds);\n }\n this.set('end', end);\n }\n },\n id: 'id',\n fields: {\n id: { type: 'number' },\n title: {\n defaultValue: '',\n type: 'string'\n },\n start: {\n type: 'date',\n validation: { required: true }\n },\n startTimezone: { type: 'string' },\n end: {\n type: 'date',\n validation: {\n required: true,\n dateCompare: { value: dateCompareValidator }\n }\n },\n endTimezone: { type: 'string' },\n recurrenceRule: {\n defaultValue: '',\n type: 'string'\n },\n recurrenceException: {\n defaultValue: '',\n type: 'string'\n },\n isAllDay: {\n type: 'boolean',\n defaultValue: false\n },\n description: { type: 'string' }\n }\n });\n var SchedulerDataSource = DataSource.extend({\n init: function (options) {\n DataSource.fn.init.call(this, extend(true, {}, {\n schema: {\n modelBase: SchedulerEvent,\n model: SchedulerEvent\n }\n }, options));\n this.reader = new SchedulerDataReader(this.options.schema, this.reader);\n },\n expand: function (start, end) {\n var data = this.view(), filter = {}, endOffset;\n if (start && end) {\n endOffset = end.getTimezoneOffset();\n end = new Date(end.getTime() + MS_PER_DAY - 1);\n if (end.getTimezoneOffset() !== endOffset) {\n end = kendo.timezone.apply(end, endOffset);\n }\n filter = {\n logic: 'or',\n filters: [\n {\n logic: 'and',\n filters: [\n {\n field: 'start',\n operator: 'gte',\n value: start\n },\n {\n field: 'end',\n operator: 'gte',\n value: start\n },\n {\n field: 'start',\n operator: 'lte',\n value: end\n }\n ]\n },\n {\n logic: 'and',\n filters: [\n {\n field: 'start',\n operator: 'lte',\n value: new Date(start.getTime() + MS_PER_DAY - 1)\n },\n {\n field: 'end',\n operator: 'gte',\n value: start\n }\n ]\n }\n ]\n };\n data = new kendo.data.Query(expandAll(data, start, end, this.reader.timezone)).filter(filter).toArray();\n }\n return data;\n },\n cancelChanges: function (model) {\n if (model && model.isOccurrence()) {\n this._removeExceptionDate(model);\n }\n DataSource.fn.cancelChanges.call(this, model);\n },\n insert: function (index, model) {\n if (!model) {\n return;\n }\n if (!(model instanceof SchedulerEvent)) {\n var eventInfo = model;\n model = this._createNewModel();\n model.accept(eventInfo);\n }\n if (!this._pushCreated && model.isRecurrenceHead() || model.recurrenceId) {\n model = model.recurrenceId ? model : model.toOccurrence();\n this._addExceptionDate(model);\n }\n return DataSource.fn.insert.call(this, index, model);\n },\n pushCreate: function (items) {\n this._pushCreated = true;\n DataSource.fn.pushCreate.call(this, items);\n this._pushCreated = false;\n },\n remove: function (model) {\n if (model.isRecurrenceHead()) {\n this._removeExceptions(model);\n } else if (model.isRecurring()) {\n this._addExceptionDate(model);\n }\n return DataSource.fn.remove.call(this, model);\n },\n _removeExceptions: function (model) {\n var data = this.data().slice(0), item = data.shift(), id = model.id;\n while (item) {\n if (item.recurrenceId === id) {\n DataSource.fn.remove.call(this, item);\n }\n item = data.shift();\n }\n model.set(RECURRENCE_EXCEPTION, '');\n },\n _removeExceptionDate: function (model) {\n if (model.recurrenceId) {\n var head = this.get(model.recurrenceId);\n if (head) {\n var start = model.defaults.start;\n var replaceRegExp = new RegExp('(\\\\' + EXCEPTION_SEPARATOR + '?)' + recurrence.toExceptionString(start, this.reader.timezone));\n var recurrenceException = (head.recurrenceException || '').replace(OLD_EXCEPTION_SEPARATOR_REGEXP, EXCEPTION_SEPARATOR).replace(/\\,$/, '');\n if (replaceRegExp.test(recurrenceException)) {\n head.set(RECURRENCE_EXCEPTION, recurrenceException.replace(replaceRegExp, ''));\n } else {\n start = model.start;\n replaceRegExp = new RegExp('(\\\\' + EXCEPTION_SEPARATOR + '?)' + recurrence.toExceptionString(start, this.reader.timezone));\n head.set(RECURRENCE_EXCEPTION, recurrenceException.replace(replaceRegExp, ''));\n }\n }\n }\n },\n _addExceptionDate: function (model) {\n var start = model.start;\n var zone = this.reader.timezone;\n var head = this.get(model.recurrenceId);\n var recurrenceException = (head.recurrenceException || '').replace(OLD_EXCEPTION_SEPARATOR_REGEXP, EXCEPTION_SEPARATOR).replace(/\\,$/, '');\n if (!recurrence.isException(recurrenceException, start, zone)) {\n var newException = recurrence.toExceptionString(start, zone);\n model.defaults.start = start;\n head.set(RECURRENCE_EXCEPTION, recurrenceException + (recurrenceException && newException ? EXCEPTION_SEPARATOR : '') + newException);\n }\n }\n });\n function expandAll(events, start, end, zone) {\n var length = events.length, data = [], idx = 0;\n for (; idx < length; idx++) {\n data = data.concat(events[idx].expand(start, end, zone));\n }\n return data;\n }\n SchedulerDataSource.create = function (options) {\n if (isArray(options) || options instanceof kendo.data.ObservableArray) {\n options = { data: options };\n }\n var dataSource = options || {}, data = dataSource.data;\n dataSource.data = data;\n if (!(dataSource instanceof SchedulerDataSource) && dataSource instanceof kendo.data.DataSource) {\n throw new Error('Incorrect DataSource type. Only SchedulerDataSource instances are supported');\n }\n return dataSource instanceof SchedulerDataSource ? dataSource : new SchedulerDataSource(dataSource);\n };\n extend(true, kendo.data, {\n SchedulerDataSource: SchedulerDataSource,\n SchedulerDataReader: SchedulerDataReader,\n SchedulerEvent: SchedulerEvent\n });\n var defaultCommands = {\n update: {\n text: 'Save',\n className: 'k-primary k-scheduler-update'\n },\n canceledit: {\n text: 'Cancel',\n className: 'k-scheduler-cancel'\n },\n destroy: {\n text: 'Delete',\n imageClass: 'k-i-close',\n className: 'k-primary k-scheduler-delete',\n iconClass: 'k-icon'\n }\n };\n function trimOptions(options) {\n delete options.name;\n delete options.prefix;\n delete options.remove;\n delete options.edit;\n delete options.add;\n delete options.navigate;\n return options;\n }\n function createValidationAttributes(model, field) {\n var modelField = (model.fields || model)[field];\n var specialRules = [\n 'url',\n 'email',\n 'number',\n 'date',\n 'boolean'\n ];\n var validation = modelField ? modelField.validation : {};\n var datatype = kendo.attr('type');\n var inArray = $.inArray;\n var ruleName;\n var rule;\n var attr = {};\n for (ruleName in validation) {\n rule = validation[ruleName];\n if (inArray(ruleName, specialRules) >= 0) {\n attr[datatype] = ruleName;\n } else if (!kendo.isFunction(rule)) {\n attr[ruleName] = isPlainObject(rule) ? rule.value || ruleName : rule;\n }\n attr[kendo.attr(ruleName + '-msg')] = rule.message;\n }\n return attr;\n }\n function dropDownResourceEditor(resource, model) {\n var attr = createValidationAttributes(model, resource.field);\n return function (container) {\n $(kendo.format('{2}', kendo.ns, resource.field, options, resource.valuePrimitive)).appendTo(container).attr(attr);\n };\n }\n function descriptionEditor(options) {\n var attr = createValidationAttributes(options.model, options.field);\n return function (container, model) {\n $('