UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

3 lines (2 loc) 43.8 kB
!function(e){"function"==typeof define&&define.amd?define(["kendo.dropdownlist.min","kendo.datepicker.min","kendo.numerictextbox.min","kendo.buttongroup.min","kendo.icons.min"],e):e()}((function(){!function(e,t){var a=window.kendo,n=a.htmlEncode,r=a.timezone,i=a.Class,l=a.ui,s=l.Widget,o=l.DropDownList,u=l.ButtonGroup,d=a.date,c=d.setTime,f=d.setDayOfWeek,y=d.adjustDST,p=d.firstDayOfMonth,m=d.getMilliseconds,v=[0,31,60,91,121,152,182,213,244,274,305,335,366],k=[0,31,59,90,120,151,181,212,243,273,304,334,365],h=[31,28,31,30,31,30,31,31,30,31,30,31],g={0:"SU",1:"MO",2:"TU",3:"WE",4:"TH",5:"FR",6:"SA"},_={SU:0,MO:1,TU:2,WE:3,TH:4,FR:5,SA:6},w=["yyyy-MM-ddTHH:mm:ss.fffzzz","yyyy-MM-ddTHH:mm:sszzz","yyyy-MM-ddTHH:mm:ss","yyyy-MM-ddTHH:mm","yyyy-MM-ddTHH","yyyy-MM-dd","yyyyMMddTHHmmssfffzzz","yyyyMMddTHHmmsszzz","yyyyMMddTHHmmss","yyyyMMddTHHmm","yyyyMMddTHH","yyyyMMdd"],D=["months","weeks","yearDays","monthDays","weekDays","hours","minutes","seconds"],b=D.length,T={months:function(e,t,a){var n=a.months,r=A(n,e.getMonth()+1),i=!1;return null!==r&&(r.length?e.setMonth(r[0]-1,1):e.setFullYear(e.getFullYear()+1,n[0]-1,1),i=!0),i},monthDays:function(e,t,a){for(var n,r,i,l=!1,s=e.getHours(),o=function(e){return e<0&&(e=n+e+1),e};e<=t;){if(r=e.getMonth(),n=L(e),null===(i=A(a.monthDays,e.getDate(),o)))return l;if(l=!0,i.length){if(e.setMonth(r,i.sort(j)[0]),y(e,s),r===e.getMonth())break}else e.setMonth(r+1,1)}return l},yearDays:function(e,t,a){for(var n,r,i=!1,l=e.getHours(),s=function(e){return e<0&&(e=n+e),e};e<t;){if(n=G(e)?366:365,null===(r=A(a.yearDays,q(e),s)))return i;if(i=!0,n=e.getFullYear(),r.length){e.setFullYear(n,0,r.sort(j)[0]),y(e,l);break}e.setFullYear(n+1,0,1)}return i},weeks:function(e,t,a){for(var n,r,i,l=a.weekStart,s=!1,o=e.getHours(),u=function(e){return e<0&&(e=53+e),e};e<t;){if(null===(r=A(a.weeks,N(e,l),u)))return s;if(s=!0,n=e.getFullYear(),r.length){i=7*r.sort(j)[0]-1,e.setFullYear(n,0,i),f(e,l,-1),y(e,o);break}e.setFullYear(n+1,0,1)}return s},weekDays:function(e,t,a){var n,r,i=new Date(e.getTime()+a.offsets.start),l=i.getDay()-e.getDay(),s=a.weekDays,o=a.weekStart,u=function(e,t,a){for(var n,r,i,l,s=V(t.getDay(),a),o=e.length,u=[],d=0;d<o;d++)if(r=e[d],l=z(t,a),null!==(n=W(t,r,a)))if(l<n)u.push(r);else if(l===n)if(s<(i=V(r.day,a)))u.push(r);else if(s===i)return null;return u}(s,i,o),d=e.getHours();if(null===u)return!1;if((n=u[0])||(("monthly"===a.freq&&!a.positions||a.position>0)&&s.forEach((function(t){var a=new Date(e.getFullYear(),e.getMonth()+1,1),r=V(t.day,o);a.getDay()<=r&&(!n||V(n.day,o)>r)&&(n=t)})),n||(n=s[0]),f(e,o)),r=n.day,r-=l,n.offset)for(;e<=t&&!U(e,n,o);)z(e,o)===P(e,o)?(e.setMonth(e.getMonth()+1,1),y(e,d)):(e.setDate(e.getDate()+7),y(e,d),f(e,o,-1));return e.getDay()!==r&&f(e,r),!0},hours:function(e,t,a){var n=a.hours,r=a._startTime,i=r.getHours(),l=A(n,i),s=!1;return null!==l&&(s=!0,e.setHours(i),y(e,i),l.length?(l=l[0],e.setHours(l)):(l=e.getHours(),e.setDate(e.getDate()+1),y(e,l),l=n[0],e.setHours(l),y(e,l)),a.minutes&&e.setMinutes(0),r.setHours(l,e.getMinutes())),s},minutes:function(e,t,a){var n=a.minutes,r=A(n,e.getMinutes()),i=a._startTime.getHours(),l=!1;return null!==r&&(l=!0,r.length?r=r[0]:(i+=1,r=n[0]),a.seconds&&e.setSeconds(0),e.setHours(i,r),y(e,i%=24),a._startTime.setHours(i,r,e.getSeconds())),l},seconds:function(e,t,a){var n=a.seconds,r=a._startTime.getHours(),i=A(n,e.getSeconds()),l=e.getMinutes(),s=!1;return null!==i&&(s=!0,i.length?e.setSeconds(i[0]):(l+=1,e.setMinutes(l,n[0]),l>59&&(l%=60,r=(r+1)%24)),a._startTime.setHours(r,l,e.getSeconds())),s}},M=i.extend({next:function(e,t){var a,n,r=t._startTime,i=r.getDate();if(t.seconds)n=e.getSeconds()+1,e.setSeconds(n),r.setSeconds(n),r.setDate(i);else{if(!t.minutes)return!1;a=e.getMinutes()+1,e.setMinutes(a),r.setMinutes(a),r.setDate(i)}return!0},normalize:function(e){var t=e.rule;4===e.idx&&t.hours&&(t._startTime.setHours(0),this._hour(e.date,t))},limit:function(e,a,n){for(var r,i,l,s,o,u=n.interval;e<=a;){for(l=i=t,o=e.getDate(),s=0;s<b;s++){if(n[r=D[s]]){if(l=T[r](e,a,n),i!==t&&l)break;i=l}l&&this.normalize({date:e,rule:n,day:o,idx:s})}if((1===u||!this.interval(n,e))&&s===b)break}},interval:function(e,t){var a,n,r=new Date(e._startPeriod),i=new Date(t),l=t.getHours(),s=e.weekStart,o=e.interval,u=e.freq,c=!1,f=0,p=0,m=1;if("hourly"===u)a=i.getTimezoneOffset()-r.getTimezoneOffset(),n=e._startTime.getHours(),i=i.getTime(),l!==n&&(i+=(n-l)*d.MS_PER_HOUR),i-=r,a&&(i-=a*d.MS_PER_MINUTE),0!==(f=B(a=Math.floor(i/d.MS_PER_HOUR),o))&&(this._hour(t,e,f),c=!0);else if("daily"===u)d.setTime(i,-r,!0),0!==(f=B(a=Math.round(i/d.MS_PER_DAY),o))&&(this._date(t,e,f),c=!0);else if("weekly"===u){f=this._getNumberOfWeeksBetweenDates(r,t),V(t.getDay(),s)<V(r.getDay(),s)&&(f+=1),0!==(f=B(f,o))&&(d.setDayOfWeek(t,e.weekStart,-1),t.setDate(t.getDate()+7*f),y(t,l),c=!0)}else"monthly"===u?(a=t.getFullYear()-r.getFullYear(),0!==(f=B(a=t.getMonth()-r.getMonth()+12*a,o))&&(m=e._hasRuleValue?1:t.getDate(),t.setFullYear(t.getFullYear(),t.getMonth()+f,m),y(t,l),c=!0)):"yearly"===u&&(f=B(a=t.getFullYear()-r.getFullYear(),o),e.months||(p=t.getMonth()),e.yearDays||e.monthDays||e.weekDays||(m=t.getDate()),0!==f&&(t.setFullYear(t.getFullYear()+f,p,m),y(t,l),c=!0));return c},_getNumberOfWeeksBetweenDates:function(e,t){var a=(t-e)/6048e5,n=Math.floor(a);return a-n>.99&&(n=Math.round(a)),n},_hour:function(e,t,a){var n=t._startTime,r=n.getHours();a&&(r+=a),e.setHours(r),r%=24,n.setHours(r),y(e,r)},_date:function(e,t,a){var n=e.getHours();e.setDate(e.getDate()+a),y(e,n)||this._hour(e,t)}}),x=M.extend({next:function(e,t){M.fn.next(e,t)||this._hour(e,t,1)},normalize:function(e){var t=e.rule;4===e.idx&&(t._startTime.setHours(0),this._hour(e.date,t))}}),E=M.extend({next:function(e,t){M.fn.next(e,t)||this[t.hours?"_hour":"_date"](e,t,1)}}),O=E.extend({setup:function(e,t){e.weekDays||(e.weekDays=[{day:t.getDay(),offset:0}])}}),H=M.extend({next:function(e,t){var a,n;if(!M.fn.next(e,t))if(t.hours)this._hour(e,t,1);else if(t.monthDays||t.weekDays||t.yearDays||t.weeks)this._date(e,t,1);else{for(a=e.getDate(),n=e.getHours(),e.setMonth(e.getMonth()+1),y(e,n);e.getDate()!==a;)e.setDate(a),y(e,n);this._hour(e,t)}},normalize:function(e){var t=e.rule,a=e.date,n=a.getHours();0!==e.idx||t.monthDays||t.weekDays?M.fn.normalize(e):(a.setDate(e.day),y(a,n))},setup:function(e,t,a){e.monthDays||e.weekDays||a.setDate(t.getDate())}}),Y=H.extend({next:function(e,t){var a,n=e.getHours();if(!M.fn.next(e,t))if(t.hours)this._hour(e,t,1);else if(t.monthDays||t.weekDays||t.yearDays||t.weeks)this._date(e,t,1);else if(t.months){for(a=e.getDate(),e.setMonth(e.getMonth()+1),y(e,n);e.getDate()!==a;)e.setDate(a),y(e,n);this._hour(e,t)}else e.setFullYear(e.getFullYear()+1),y(e,n),this._hour(e,t)},setup:function(){}}),S={hourly:new x,daily:new E,weekly:new O,monthly:new H,yearly:new Y},R="click",F="change";function B(e,t){var a;return 0!==e&&e<t?a=t-e:(a=e%t)&&(a=t-a),a}function q(e){var t=e.getMonth();return(G(e)?v[t]:k[t])+e.getDate()}function N(e,a){var n,r;return e=new Date(e.getFullYear(),e.getMonth(),e.getDate()),y(e,0),n=e.getFullYear(),a!==t?(f(e,a,-1),e.setDate(e.getDate()+4)):e.setDate(e.getDate()+(4-(e.getDay()||7))),y(e,0),r=Math.floor((e.getTime()-new Date(n,0,1,-6))/864e5),1+Math.floor(r/7)}function z(e,t){var a=7-(p(e).getDay()+7-(t||7))||7;return a<0&&(a+=7),Math.ceil((e.getDate()-a)/7)+1}function V(e,t){return e+(e<t?7:0)}function W(e,t,a){var n=t.offset;if(!n)return z(e,a);var r=new Date(e.getFullYear(),e.getMonth()+1,0),i=z(r,a),l=V(t.day,a),s=l<V(new Date(e.getFullYear(),e.getMonth(),1).getDay(),a),o=l>V(r.getDay(),a);return n<0?n=i+(n+1-(o?1:0)):s&&(n+=1),i-=o?1:0,n<(s?1:0)||n>i?null:n}function P(e,t){return z(new Date(e.getFullYear(),e.getMonth()+1,0),t)}function U(e,t,a){return z(e,a)===W(e,t,a)}function A(e,t,a){for(var n,r=0,i=e.length,l=[];r<i;r++){if(n=e[r],a&&(n=a(n)),t===n)return null;t<n&&l.push(n)}return l}function I(e,t){for(var a,n=0,r=e.length;n<r;n++){if(a=parseInt(e[n],10),isNaN(a)||a<t.start||a>t.end||0===a&&t.start<0)return null;e[n]=a}return e.sort(j)}function C(e){for(var a,n,r,i=0,l=e.length;i<l;i++){if(n=(a=e[i]).length,r=a.substring(n-2).toUpperCase(),(r=_[r])===t)return null;e[i]={offset:parseInt(a.substring(0,n-2),10)||0,day:r}}return e}function L(e){var t=e.getMonth();return 1===t?1===new Date(e.getFullYear(),1,29).getMonth()?29:28:h[t]}function G(e){return(e=e.getFullYear())%4==0&&e%100!=0||e%400==0}function j(e,t){return e-t}function Z(e,t){var a,n,r=0,i=[];if(e)for(a=(e=e.split(-1!==e.indexOf(";")?";":",")).length;r<a;r++)(n=te(e[r],t))&&i.push(n);return i}function K(e,t,a){for(var n=Array.isArray(e)?e:Z(e,a),r=t.getTime()-t.getMilliseconds(),i=0,l=n.length;i<l;i++)if(n[i].getTime()===r)return!0;return!1}function Q(e,t){var n,r,i=0,l=[].concat(e);for(n=l.length;i<n;i++)r=l[i],r=a.timezone.convert(r,t||r.getTimezoneOffset(),"Etc/UTC"),l[i]=a.toString(r,"yyyyMMddTHHmmssZ");return l.join(",")}function X(e,t){var a=new Date(e);switch(t.freq){case"yearly":a.setFullYear(a.getFullYear(),11,31);break;case"monthly":a.setFullYear(a.getFullYear(),a.getMonth()+1,0);break;case"weekly":f(a,t.weekStart,-1),a.setDate(a.getDate()+6)}return t.hours&&a.setHours(23),t.minutes&&a.setMinutes(59),t.seconds&&a.setSeconds(59),a}function J(e,t,a,n){for(var r,i,l,s=e.length,o=[],u=0,d=a.length;u<d;u++)(r=a[u])<0?r=s+r:r-=1,i=e[r],l=!n||i.start<n,i&&i.start>=t&&l&&o.push(i);return o}function $(e,t,a){for(var n,r=[],i=0;i<e.length;i++)K(t,(n=e[i]).start,a)||r.push(n);return r}function ee(e,t){return t?a.timezone.offset(e,t):e.getTimezoneOffset()}function te(e,t){return(e=a.parseDate(e,w))&&t&&(e=r.apply(e,t)),e}function ae(e,t){for(var a,n,r,i,l,s,o=e.split(";"),u=0,d=o.length;u<d;u++)if(n=(a=o[u].split(":"))[0],r=a[1],-1!==n.indexOf("TZID")&&(i=n.substring(n.indexOf("TZID")).split("=")[1]),r)for(l=0,s=(r=r.split(",")).length;l<s;l++)r[l]=te(r[l],i||t);if(r)return{value:r,tzid:i}}function ne(e,n,r){var i,l,s,o,u,d,c,f,y={},p=0,m=!1;if(!e)return null;for((d=e.split("\n"))[1]||-1===e.indexOf("DTSTART")&&-1===e.indexOf("DTEND")&&-1===e.indexOf("EXDATE")||(d=e.split(" ")),p=0,s=d.length;p<s;p++)-1!==(u=a.trim(d[p])).indexOf("DTSTART")?y.start=ae(u,n):-1!==u.indexOf("DTEND")?y.end=ae(u,n):-1!==u.indexOf("EXDATE")?y.exdates=ae(u,n):-1!==u.indexOf("RRULE")?o=u.substring(6):a.trim(u)&&(o=u);for(p=0,s=(o=o.split(";")).length;p<s;p++)switch(i=o[p].split("="),l=a.trim(i[1]).split(","),a.trim(i[0]).toUpperCase()){case"FREQ":y.freq=l[0].toLowerCase();break;case"UNTIL":y.until=te(l[0],n);break;case"COUNT":y.count=parseInt(l[0],10);break;case"INTERVAL":y.interval=parseInt(l[0],10);break;case"BYSECOND":y.seconds=I(l,{start:0,end:60}),m=!0;break;case"BYMINUTE":y.minutes=I(l,{start:0,end:59}),m=!0;break;case"BYHOUR":y.hours=I(l,{start:0,end:23}),m=!0;break;case"BYMONTHDAY":y.monthDays=I(l,{start:-31,end:31}),m=!0;break;case"BYYEARDAY":y.yearDays=I(l,{start:-366,end:366}),m=!0;break;case"BYMONTH":y.months=I(l,{start:1,end:12}),m=!0;break;case"BYDAY":y.weekDays=f=C(l),m=!0;break;case"BYWEEKNO":y.weeks=I(l,{start:-53,end:53}),m=!0;break;case"BYSETPOS":y.positions=I(l,{start:-366,end:366});break;case"WKST":y.weekStart=c=_[l[0]]}return y.freq===t||y.count!==t&&y.until?null:(y.interval||(y.interval=1),c===t&&(y.weekStart=c=a.culture().calendar.firstDay),f&&(y.weekDays=f.sort((function(e,t){var a=e.day,n=t.day;return a<c&&(a+=7),n<c&&(n+=7),a-n}))),y.positions&&!m&&(y.positions=null),y._hasRuleValue=m,y.offsets=r,y)}function re(e,t){for(var n,i=e.value,l=e.tzid||"",s=i.length,o=0;o<s;o++)n=i[o],n=r.convert(n,l||t||n.getTimezoneOffset(),"Etc/UTC"),i[o]=a.toString(n,"yyyyMMddTHHmmssZ");return l&&(l=";TZID="+l),l+":"+i.join(",")+" "}function ie(e,n){var i=e.weekStart,l="FREQ="+e.freq.toUpperCase(),s=e.exdates||"",o=e.start||"",u=e.end||"",d=e.until;return i===t&&(i=a.culture().calendar.firstDay),e.interval>1&&(l+=";INTERVAL="+e.interval),e.count&&(l+=";COUNT="+e.count),d&&(d=r.convert(d,n||d.getTimezoneOffset(),"Etc/UTC"),l+=";UNTIL="+a.toString(d,"yyyyMMddTHHmmssZ")),e.months&&(l+=";BYMONTH="+e.months),e.weeks&&(l+=";BYWEEKNO="+e.weeks),e.yearDays&&(l+=";BYYEARDAY="+e.yearDays),e.monthDays&&(l+=";BYMONTHDAY="+e.monthDays),e.weekDays&&(l+=";BYDAY="+function(e){for(var t,a,n=0,r=e.length,i=[];n<r;n++)"string"==typeof(t=e[n])?a=t:(a=""+g[t.day],t.offset&&(a=t.offset+a)),i.push(a);return i.toString()}(e.weekDays)),e.hours&&(l+=";BYHOUR="+e.hours),e.minutes&&(l+=";BYMINUTE="+e.minutes),e.seconds&&(l+=";BYSECOND="+e.seconds),e.positions&&(l+=";BYSETPOS="+e.positions),i!==t&&(l+=";WKST="+g[i]),o&&(o="DTSTART"+re(o,n)),u&&(u="DTEND"+re(u,n)),s&&(s="EXDATE"+re(s,n)),(o||u||s)&&(l=o+u+s+"RRULE:"+l),l}a.recurrence={rule:{parse:ne,serialize:ie},expand:function(e,n,r,i){var l,s,o,u,y,p,v,k,h,g,_,w,D,b,T,M,x,E,O,H,Y,R,F,B,q,N,z=[];if(!(l=ne(e.recurrenceRule,i,{start:(ee(e.start,i)-ee(e.start,e.startTimezone||i))*a.date.MS_PER_MINUTE,end:(ee(e.end,i)-ee(e.end,e.endTimezone||i))*a.date.MS_PER_MINUTE})))return[e];Y=(H=l.positions)?0:1,g=l.start,_=l.end,(g||_)&&(e=e.clone({start:g?new Date(g.value[0]):t,end:_?new Date(_.value[0]):t})),M=(x=e.start).getTime(),T=m(x),!(b=Z(e.recurrenceException,i))[0]&&l.exdates&&(b=l.exdates.value,e.set("recurrenceException",Q(b,i))),h=n=new Date(n),r=new Date(r),D=l.freq,O=S[D],E=l.count,l.until&&l.until<r&&(r=new Date(l.until)),w="yearly"===D||"monthly"===D||"weekly"===D,n<M||E||l.interval>1||w||("daily"===D||"hourly"===D)&&!l.seconds?n=new Date(M):(y=n.getHours(),p=n.getMinutes(),v=n.getSeconds(),l.hours||(y=x.getHours()),l.minutes||(p=x.getMinutes()),l.seconds||(v=x.getSeconds()),n.setHours(y,p,v,x.getMilliseconds())),l._startPeriod=new Date(n),H&&(n=function(e,t){var a=new Date(e);switch(t.freq){case"yearly":a.setFullYear(a.getFullYear(),0,1);break;case"monthly":a.setFullYear(a.getFullYear(),a.getMonth(),1);break;case"weekly":f(a,t.weekStart,-1)}return t.hours&&a.setHours(0),t.minutes&&a.setMinutes(0),t.seconds&&a.setSeconds(0),a}(n,l),r=X(r,l),m(r)-m(n)<0&&(y=n.getHours(),r.setHours(y,n.getMinutes(),n.getSeconds(),n.getMilliseconds()),d.adjustDST(r,y)),l._startPeriod=new Date(n),l._endPeriod=X(n,l)),k=e.duration();var V,W,P,U,A=e.isAllDay?864e5:0;for(l._startTime=s=d.toInvariantTime(n),O.setup&&O.setup(l,x,n),O.limit(n,r,l);n<=r;){u=new Date(n),c(u,k);var I=new Date(n);if(c(I,k+A),(n>=h||I>h)&&!K(b,n,i)||H)if(o=(s=d.toUtcTime(d.getDate(n))+m(l._startTime))+k,M!==n.getTime()||T!==m(l._startTime)){var C=e.startTimezone||e.endTimezone,L=e.endTimezone||e.startTimezone;if(!e.isAllDay&&(i&&C||!i&&!C)){var G=ee(n,i)-ee(e.start,i),j=ee(u,i)-ee(e.end,i),te=ee(n,C)-ee(e.start,C),ae=ee(u,L)-ee(e.end,L);if(G!==te){var re=6e4*(G-te);F=new Date(n.getTime()-re),q=s-re}if(j!==ae){var ie=6e4*(j-ae);B=new Date(u.getTime()-ie),N=o-ie}}z.push(e.toOccurrence({start:F||new Date(n),end:B||u,_startTime:q||s,_endTime:N||o})),F=B=q=N=null}else e._startTime=s,e._endTime=o,z.push(e);if(H){if(O.next(n,l),O.limit(n,r,l),n>l._endPeriod&&(R=$(R=J(z.slice(Y),x,H,l.until),b,i),z=z.slice(0,Y).concat(R),l._endPeriod=X(n,l),Y=z.length),E&&E===Y)break}else{if(E&&E===Y)break;Y+=1;var le=(W=void 0,P=void 0,U=void 0,W=(V=n).getTimezoneOffset(),P=new Date(V.getTime()-36e5),U=P.getTimezoneOffset(),W<U);O.next(n,l),le&&"hourly"!==l.freq&&d.toInvariantTime(e.start).getTime()!==d.toInvariantTime(n).getTime()&&(l._startTime=s=new Date(n.getTime()-36e5)),O.limit(n,r,l)}}return z},dayInYear:q,weekInYear:N,weekInMonth:z,numberOfWeeks:P,isException:K,toExceptionString:Q};var le=a.template((function(e){var t=e.frequency,a=e.messages,r=e.end;return("never"!==t?'<div class="k-form-field"><label id="recur_interval_label" class="k-label k-form-label" for="recur_interval">'+n(a.repeatEvery)+'</label><div class="k-form-field-wrap"><input id="recur_interval" class="k-recur-interval" title="'+n(a.repeatEvery)+" "+n(a.interval)+'" aria-labelledby="recur_interval_label">'+n(a.interval)+"</div></div>":"")+("weekly"===t?'<div class="k-form-field"><label class="k-label k-form-label">'+n(a.repeatOn)+'</label><div class="k-form-field-wrap"><div class="k-button-group-stretched k-recur-weekday-buttons" title="'+n(a.repeatOn)+'"></div></div></div></div>':"")+("monthly"===t?'<div class="k-form-field"><label class="k-label k-form-label">'+n(a.repeatOn)+'</label></div><div class="k-form-field-wrap"><ul class="k-radio-list"><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-month-radio k-radio k-radio-md" type="radio" name="month" value="monthday" title="'+n(a.repeatOn)+'" />'+n(a.date)+':</label><input class="k-recur-monthday" aria-label="'+n(a.date)+'" title="'+n(a.date)+'" /></li><li class="k-radio-item"><input class="k-recur-month-radio k-radio k-radio-md" type="radio" name="month" value="weekday" aria-label="'+n(a.repeatOn)+" "+n(a.day)+'" title="'+n(a.repeatOn)+" "+n(a.day)+'" /><input class="k-recur-weekday-offset" title="'+n(a.repeatOn)+'" style="width:8em;" /><input class="k-recur-weekday" title="'+n(a.day)+'" style="width:8em;" /></li></ul></div></div>':"")+("yearly"===t?'<div class="k-form-field"><label class="k-label k-form-label">'+n(a.repeatOn)+'</label><div class="k-form-field-wrap"><ul class="k-radio-list"><li class="k-radio-item"><input class="k-recur-year-radio k-radio k-radio-md" type="radio" name="year" value="monthday" title="'+n(a.repeatOn)+" "+n(a.month)+'" /><input class="k-recur-month" aria-label="'+n(a.month)+'" title="'+n(a.month)+'" style="width:8em;" /><input class="k-recur-monthday" aria-label="'+n(a.date)+'" title="'+n(a.date)+'" /></li><li class="k-radio-item"><input class="k-recur-year-radio k-radio k-radio-md" type="radio" name="year" value="weekday" title="'+n(a.repeatOn)+" "+n(a.day)+'" /><input class="k-recur-weekday-offset" title="'+n(a.repeatOn)+'" style="width:8em;"/><input class="k-recur-weekday" title="'+n(a.day)+'" style="width:8em;"/>'+n(a.of)+'<input class="k-recur-month" title="'+n(a.of+a.month)+'" style="width:8em;"/></li></ul></div></div>':"")+("never"!==t?'<div class="k-form-field"><label class="k-label k-form-label">'+n(r.label)+'</label><div class="k-form-field-wrap"><ul class="k-radio-list"><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-end-never k-radio k-radio-md" type="radio" name="end" value="never" title="'+n(r.label)+'" />'+n(r.never)+'</label></li><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-end-count k-radio k-radio-md" type="radio" name="end" value="count" title="'+n(r.label)+'" />'+n(r.after)+'</label><input class="k-recur-count" aria-label="'+n(r.occurrence)+'" title="'+n(r.occurrence)+'" />'+n(r.occurrence)+'</li><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-end-until k-radio k-radio-md" type="radio" name="end" value="until" title="'+n(r.label)+'" />'+n(r.on)+'</label><input class="k-recur-until" title="'+n(r.on)+'" aria-label="'+n(r.on)+'" name="recur-until" /></li></ul></div></div>':"")})),se=[{day:0,offset:0},{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0},{day:6,offset:0}],oe=[{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0}],ue=[{day:0,offset:0},{day:6,offset:0}],de=s.extend({init:function(e,t){var n,r=this,i=t&&t.frequencies;s.fn.init.call(r,e,t),r.wrapper=r.element,(t=r.options).start=n=t.start||d.today(),i&&(t.frequencies=i),"string"==typeof n&&(t.start=a.parseDate(n,"yyyyMMddTHHmmss")),null===t.firstWeekDay&&(t.firstWeekDay=a.culture().calendar.firstDay),r._namespace="."+t.name},options:{value:"",start:"",timezone:"",spinners:!0,firstWeekDay:null,frequencies:["never","daily","weekly","monthly","yearly"],mobile:!1,messages:{repeat:"Repeat",recurrenceEditorTitle:"Recurrence editor",frequencies:{never:"Never",hourly:"Hourly",daily:"Daily",weekly:"Weekly",monthly:"Monthly",yearly:"Yearly"},hourly:{repeatEvery:"Repeat every: ",interval:" hour(s)"},daily:{repeatEvery:"Repeat every: ",interval:" day(s)"},weekly:{interval:" week(s)",repeatEvery:"Repeat every: ",repeatOn:"Repeat on: "},monthly:{repeatEvery:"Repeat every: ",repeatOn:"Repeat on: ",interval:" month(s)",day:"Day ",date:"Date"},yearly:{repeatEvery:"Repeat every: ",repeatOn:"Repeat on: ",interval:" year(s)",of:" of ",month:"month",day:"day",date:"Date"},end:{label:"End:",mobileLabel:"Ends",never:"Never",after:"After ",occurrence:" occurrence(s)",on:"On "},offsetPositions:{first:"first",second:"second",third:"third",fourth:"fourth",last:"last"},weekdays:{day:"day",weekday:"weekday",weekend:"weekend day"}}},events:["change"],_initInterval:function(){var e=this,t=e._value;e._container.find(".k-recur-interval").kendoNumericTextBox({spinners:e.options.spinners,value:t.interval||1,decimals:0,format:"#",min:1,change:function(){t.interval=this.value(),e._trigger()}})},_weekDayButtons:function(e){for(var t=this,n=a.culture().calendar.days.names,r=a.culture().calendar.days.namesAbbr,i=t.options.messages.weekly.repeatOn,l=n.length,s=0,o=[],d=[];s<l;s++)o.push(s);for(n=n.slice(e).concat(n.slice(0,e)),r=r.slice(e).concat(r.slice(0,e)),o=o.slice(e).concat(o.slice(0,e)),s=0;s<l;s++)d.push({text:r[s],attributes:{"data-value":o[s],"aria-label":i+" "+n[s]}});t._container.find(".k-recur-weekday-buttons").length>0&&(t._weekDayButtonGroup=new u(t._container.find(".k-recur-weekday-buttons"),{items:d,selection:"multiple",select:function(){var e=t._value,a=t._weekDayButtonGroup.current();e.weekDays=a.map((function(e,t){return{day:Number(t.getAttribute("data-value")),offset:0}})),t.options.mobile||t._trigger()}}))},_weekDayRule:function(e){var t=this,a=(t._weekDay.element||t._weekDay).val(),n=Number((t._weekDayOffset.element||t._weekDayOffset).val()),r=null,i=null;e||("day"===a?(r=se,i=n):"weekday"===a?(r=oe,i=n):"weekend"===a?(r=ue,i=n):r=[{offset:n,day:Number(a)}]),t._value.weekDays=r,t._value.positions=i},_weekDayView:function(){var e,t,a,n,r=this,i=r._value.weekDays,l=r._value.positions,s=r._weekDayOffset;i&&(a=i.length,l&&(7===a?(t="day",e=l):5===a?(t="weekday",e=l):2===a&&(t="weekend",e=l)),t||(t=(i=i[0]).day,e=i.offset||""),s[n=s.value?"value":"val"](e),r._weekDay[n](t))},_initWeekDay:function(){var t,n=this,r=n.options.messages.weekdays,i=n.options.messages.offsetPositions,l=n._container.find(".k-recur-weekday"),s=function(){n._weekDayRule(),n._trigger()};l[0]&&(n._weekDayOffset=new o(n._container.find(".k-recur-weekday-offset"),{autoWidth:!0,change:s,dataTextField:"text",dataValueField:"value",dataSource:[{text:i.first,value:"1"},{text:i.second,value:"2"},{text:i.third,value:"3"},{text:i.fourth,value:"4"},{text:i.last,value:"-1"}]}),t=[{text:r.day,value:"day"},{text:r.weekday,value:"weekday"},{text:r.weekend,value:"weekend"}],n._weekDay=new o(l,{autoWidth:!0,value:n.options.start.getDay(),change:s,dataTextField:"text",dataValueField:"value",dataSource:t.concat(e.map(a.culture().calendar.days.names,(function(e,t){return{text:e,value:t}})))}),n._weekDayView())},_initWeekDays:function(){var e=this._value,t=this._weekDayButtonGroup;if(t&&e.weekDays&&e.weekDays.length){for(var a,n=e.weekDays,r=n.length,i=[],l=0;l<r;l++)i.push("[data-value='"+n[l].day+"']");a=t.element.find(i.join(",")),t.select(a)}},_initMonthDay:function(){var e=this,t=e._value,n=e._container.find(".k-recur-monthday");n[0]&&(e._monthDay=new a.ui.NumericTextBox(n,{spinners:e.options.spinners,min:1,max:31,decimals:0,format:"#",value:t.monthDays?t.monthDays[0]:e.options.start.getDate(),change:function(){var a=this.value();t.monthDays=a?[a]:a,e._trigger()}}))},_initCount:function(){var e=this,t=e._container.find(".k-recur-count"),a=e._value;e._count=t.kendoNumericTextBox({spinners:e.options.spinners,value:a.count||1,decimals:0,format:"#",min:1,change:function(){a.count=this.value(),e._trigger()}}).data("kendoNumericTextBox")},_initUntil:function(){var e=this,t=e._container.find(".k-recur-until"),n=e.options.start,r=e._value,i=r.until,l=i&&i<n?i:n,s=e.wrapper.closest(".k-scheduler-edit-form").find("[name=start]:visible"),o=a.format(a.ui.Validator.prototype.options.messages.date,e.options.messages.end.on),u=a.ui.Validator.prototype.options.messages.dateCompare,d=new Date(n.getFullYear(),n.getMonth(),n.getDate(),23,59,59);t.attr("data-validDate-msg",o),t.attr("data-untilDateCompare-msg",u),0===s.length&&(s=e.wrapper.closest(".k-scheduler-edit-form").find("[name=start]")),s.length>0&&s.val()&&d<(l=a.parseDate(s.val()))&&(d=l),e._until=t.kendoDatePicker({min:l,value:i||d,change:function(){var t=this.value();t&&(r.until=new Date(t.getFullYear(),t.getMonth(),t.getDate(),23,59,59)),e._trigger()}}).data("kendoDatePicker"),s&&s.on("change",(function(){var t=e._until.element,a=Boolean(t.attr("readonly")),n=!Boolean(t.is("[disabled]")||t.parents("fieldset").is(":disabled"));e._until.setOptions({min:s.val(),readonly:a,enable:n})}))},_trigger:function(){this.options.mobile||this.trigger("change")}}),ce=de.extend({init:function(e,t){var a=this;de.fn.init.call(a,e,t),a._initFrequency(),a._initContainer(),a.value(a.options.value)},options:{name:"RecurrenceEditor"},events:["change"],destroy:function(){var e=this;e._frequency.destroy(),this._weekDayButtonGroup&&this._weekDayButtonGroup.destroy(),e._container.find("input[type=radio],input[type=checkbox]").off(R+e._namespace),a.destroy(e._container),de.fn.destroy.call(e)},value:function(e){var a,n,r=this,i=r.options.timezone;if(e===t)return r._value.freq?ie(r._value,i):"";r._value=ne(e,i)||{},(a=r._value.freq)?(n=r._frequency.element.find("[data-value='"+a+"']"),r._frequency.select(n)):r._frequency.select(0),r._initView(r._frequency.current().data("value"))},_initContainer:function(){var t=this.element,a=e('<div class="k-recur-view" />'),n=t.parent(".k-edit-field");n[0]?a.insertAfter(n):t.append(a),this._container=a},_initFrequency:function(){var t,a=this,n=a.options,r=n.frequencies,i=n.messages.frequencies,l=e('<div class="k-button-group-stretched k-flex-1"/>').attr({title:n.messages.recurrenceEditorTitle});r=e.map(r,(function(e){return{text:i[e],attributes:{"data-value":e,"aria-label":n.messages.repeat+i[e]}}})),(t=r[0])&&t.attributes&&"never"===t.attributes["data-value"]&&(t.attributes["data-value"]=""),a.element.append(l),a._frequency=new u(l,{items:r,select:function(){a._value={},a._initView(a._frequency.current().data("value")),a.trigger("change")}})},_initView:function(e){var t=this,n=t._value,r=t.options,i={frequency:e||"never",firstWeekDay:r.firstWeekDay,messages:r.messages[e],end:r.messages.end};t._weekDayButtonGroup&&(t._weekDayButtonGroup.destroy(),t._container.find(".k-recur-weekday-buttons").empty(),t._weekDayButtonGroup=null),a.destroy(t._container),t._container.html(le(i)),e?(n.freq=e,"weekly"!==e||n.weekDays||(n.weekDays=[{day:r.start.getDay(),offset:0}]),t._weekDayButtons(r.firstWeekDay),t._initInterval(),t._initWeekDays(),t._initMonthDay(),t._initWeekDay(),t._initMonth(),t._initCount(),t._initUntil(),t._period(),t._end()):t._value={}},_initMonth:function(){var t,n=this,r=n._value,i=r.months||[n.options.start.getMonth()+1],l=n._container.find(".k-recur-month");l[0]&&(t={autoWidth:!0,change:function(){r.months=[Number(this.value())],n.trigger("change")},dataTextField:"text",dataValueField:"value",dataSource:e.map(a.culture().calendar.months.names,(function(e,t){return{text:e,value:t+1}}))},n._month1=new o(l[0],t),n._month2=new o(l[1],t),i&&(i=i[0],n._month1.value(i),n._month2.value(i)))},_end:function(){var e,t=this,a=t._value,n=t._container,r=t._namespace,i=function(e){t._toggleEnd(e.currentTarget.value),t.trigger("change")};t._buttonNever=n.find(".k-recur-end-never").on(R+r,i),t._buttonCount=n.find(".k-recur-end-count").on(R+r,i),t._buttonUntil=n.find(".k-recur-end-until").on(R+r,i),a.count?e="count":a.until&&(e="until"),t._toggleEnd(e)},_period:function(){var e=this,t=e._value,a="monthly"===t.freq,n=a?e._toggleMonthDay:e._toggleYear,r=".k-recur-"+(a?"month":"year")+"-radio",i=e._container.find(r);(a||"yearly"===t.freq)&&(i.on(R+e._namespace,(function(t){n.call(e,t.currentTarget.value),e.trigger("change")})),e._buttonMonthDay=i.eq(0),e._buttonWeekDay=i.eq(1),n.call(e,t.weekDays?"weekday":"monthday"))},_toggleEnd:function(e){var t,a,n,r,i=this;"count"===e?(i._buttonCount.prop("checked",!0),n=!0,r=!1,t=i._count.value(),a=null):"until"===e?(i._buttonUntil.prop("checked",!0),n=!1,r=!0,t=null,a=i._until.value()):(i._buttonNever.prop("checked",!0),n=r=!1,t=a=null),i._count&&i._count.enable(n),i._until&&i._until.enable(r),i._value.count=t,i._value.until=a},_toggleMonthDay:function(e){var t,a=this,n=!1,r=!0,i=!1;"monthday"===e?(a._buttonMonthDay.prop("checked",!0),t=[a._monthDay.value()],n=!0,r=!1,i=!0):(a._buttonWeekDay.prop("checked",!0),t=null),a._weekDay.enable(r),a._weekDayOffset.enable(r),a._monthDay.enable(n),a._value.monthDays=t,a._weekDayRule(i)},_toggleYear:function(e){var t,a=this,n=!1,r=!0;"monthday"===e?(n=!0,r=!1,t=a._month1.value()):t=a._month2.value(),a._month1.enable(n),a._month2.enable(r),a._value.months=[t],a._toggleMonthDay(e)}});l.plugin(ce);var fe=a.template((function(e){return'<div data-role="content"><ul class="k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+e.headerTitle+'</span><div class="k-recur-pattern k-listgroup-form-field-wrapper"></div></label></li><li class="k-item k-listgroup-item k-recur-view"></li></ul></div>'})),ye=a.template((function(e){var t=e.frequency,a=e.messages;return("never"!==t?'<label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.repeatEvery)+'</span><div class="k-recur-editor-wrap k-listgroup-form-field-wrapper"><input class="k-recur-interval" type="number" pattern="\\d*"/>'+(a.interval.length?'<span class="k-recur-editor-text">'+n(a.interval)+"</span>":"")+"</div></label>":"")+("weekly"===t?'<ul class="k-recur-items-wrap k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item k-no-click"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.repeatOn)+'</span></label></li><div class="k-button-group-stretched k-recur-weekday-buttons" title="'+n(a.repeatOn)+'"></ul>':"")+("monthly"===t?'<ul class="k-recur-items-wrap k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.repeatBy)+'</span><div class="k-repeat-rule k-listgroup-form-field-wrapper"></div></label></li><li class="k-monthday-view k-item k-listgroup-item" style="display:none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.day)+'</span><div class="k-listgroup-form-field-wrapper"><input class="k-recur-monthday" type="number" aria-label="'+n(a.date)+'" title="'+n(a.day)+'" pattern="\\d*"/></div></label></li><li class="k-weekday-view k-item k-listgroup-item" style="display:none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.every)+'</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday-offset" title="'+n(a.every)+'"></select></div></label></li><li class="k-weekday-view k-item k-listgroup-item" style="display:none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.day)+'</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday" title="'+n(a.day)+'"></select></div></label></li></ul>':"")+("yearly"===t?'<ul class="k-recur-items-wrap k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.repeatBy)+'</span><div class="k-repeat-rule k-listgroup-form-field-wrapper"></div></label></li><li class="k-monthday-view k-item k-listgroup-item" style="display:none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.day)+'</span><div class="k-listgroup-form-field-wrapper"><input class="k-recur-monthday" type="number" aria-label="'+n(a.date)+'" title="'+n(a.day)+'" pattern="\\d*"/></div></label></li><li class="k-weekday-view k-item k-listgroup-item" style="display:none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.every)+'</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday-offset" title="'+n(a.every)+'"></select></div></label></li><li class="k-weekday-view k-item k-listgroup-item" style="display:none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.day)+'</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday" title="'+n(a.day)+'"></select></div></label></li><li class="k-item k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.month)+'</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-month" title="'+n(a.month)+'"></select></div></label></li></ul>':"")})),pe=a.template((function(e){var t=e.endPattern,a=e.messages;return"count"===t?'<label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.after)+'</span><div class="k-listgroup-form-field-wrapper"><input class="k-recur-count" aria-label="'+n(a.occurrence)+'" type="number" pattern="\\d*" /></div></label>':"until"===t?'<label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+n(a.on)+'</span><div class="k-listgroup-form-field-wrapper"><input type="date" class="k-recur-until" aria-label="'+n(a.on)+'" name="recur-until"/></div></label>':void 0})),me=a.template((function(e){var t=e.dataSource,a=e.value;return'<select class="k-scheduler-select">'+t.map((function(e){return'<option value="'+e.value+'" '+(a===e.value?"selected":"")+">"+n(e.text)+"</option>"})).join("")+"</select>"})),ve=de.extend({init:function(e,t){var r=this;de.fn.init.call(r,e,t),t=r.options,r._optionTemplate=a.template((function(e){var t=e.value,a=e.text;return'<option value="'+n(t)+'">'+n(a)+"</option>"})),r.value(t.value),r._pane=t.pane||r.wrapper.closest("[data-role=pane]").data("kendoPane"),r._initRepeatButton(),r._initParentRepeatEnd(),r._defaultValue=r._value},options:{name:"MobileRecurrenceEditor",animations:{left:"slide",right:"slide:right"},mobile:!0,messages:{cancel:"Cancel",update:"Save",endTitle:"Repeat ends",repeatTitle:"Repeat pattern",headerTitle:"Repeat event",end:{patterns:{never:"Never",after:"After...",on:"On..."},never:"Never",after:"End repeat after",on:"End repeat on"},daily:{interval:""},hourly:{interval:""},weekly:{interval:""},monthly:{interval:"",repeatBy:"Repeat by: ",dayOfMonth:"Day of the month",dayOfWeek:"Day of the week",repeatEvery:"Repeat every",every:"Every",day:"Day "},yearly:{interval:"",repeatBy:"Repeat by: ",dayOfMonth:"Day of the month",dayOfWeek:"Day of the week",repeatEvery:"Repeat every: ",every:"Every",month:"Month",day:"Day"}}},events:["change"],value:function(e){var a=this,n=a.options.timezone;if(e===t)return a._value.freq?ie(a._value,n):"";a._value=ne(e,n)||{}},destroy:function(){this._destroyView(),a.destroy(this._endFields),this.element.off(R+this._namespace),de.fn.destroy.call(this)},_initInterval:function(){var e=this,t=e._value;e._container.find(".k-recur-interval").val(e._value.interval||1).on(F+e._namespace,(function(a){t.interval=a.target.value,e._trigger()}))},_initRepeatButton:function(){var t=this,n=t.options.messages.frequencies[this._value.freq||"never"];t._chevronButton=e(a.ui.icon("chevron-right")),t._repeatValue=e('<span class="">'+n+"</span>"),t.element.append(t._repeatValue).append(t._chevronButton),t.element.parents("li.k-item").on(R+t._namespace,(function(e){e.preventDefault(),t._createView("repeat"),t._pane.navigate(t._view,t.options.animations.left)}))},_endLiItem:function(){return'<li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">'+this.options.messages.end.mobileLabel+"</span></label></li>"},_initParentRepeatEnd:function(){var t=this,a=e(t._endLiItem()).insertAfter(t.element.parents("li.k-item")),n=e('<div class="k-scheduler-recur-end-wrap k-listgroup-form-field-wrapper"><span class="k-scheduler-recur-end"></span></div>').appendTo(a.find(".k-label"));a.on(R+t._namespace,(function(e){e.preventDefault(),t._navigateToView("repeat")})),t._endParentLabelField=a.toggle(!!t._value.freq),t._endParentEndButton=n.find(".k-scheduler-recur-end").text(t._endText())},_initRepeatEnd:function(){var t=this,n=e(t._endLiItem()).insertAfter(t._container),r=e('<div class="k-scheduler-recur-end-wrap k-listgroup-form-field-wrapper"><span class="k-scheduler-recur-end"></span>'+a.ui.icon("chevron-right")+"</div>").appendTo(n.find(".k-label"));n.on(R+t._namespace,(function(e){e.preventDefault(),t._navigateToView("end")})),t._endLabelField=n.toggleClass("k-disabled",!t._value.freq),t._endButton=r.find(".k-scheduler-recur-end").text(t._endText())},_navigateToView:function(e){var t=this;t._createView(e),t._pane.navigate(t._view,t.options.animations.left)},_endText:function(){var e=this._value,t=this.options.messages.end,n=t.never;return e.count?n=a.format("{0} {1}",t.after,e.count):e.until&&(n=a.format("{0} {1:d}",t.on,e.until)),n},_initFrequency:function(){var t=this,n=t.options.messages.frequencies,r=me({dataSource:e.map(this.options.frequencies,(function(e){return{text:n[e],value:"never"!==e?e:""}})),value:t._value.freq||"",ns:a.ns});t._view.element.find(".k-recur-pattern").append(r),t._view.element.find(".k-scheduler-select").on(F+t._namespace,(function(a){var n=a.target.value;t._value={freq:n},t._defaultValue=e.extend({},t._value),t._initRepeatView(),t._endButton.text(t._endText()),t._endParentEndButton.text(t._endText())}))},_initEndNavigation:function(){var e=this,t=e.options.messages.end.patterns,n=e._value,r="";n.count?r="count":n.until&&(r="until");var i=me({dataSource:[{text:t.never,value:""},{text:t.after,value:"count"},{text:t.on,value:"until"}],value:r,ns:a.ns});e._view.element.find(".k-recur-pattern").append(i),e._view.element.find(".k-scheduler-select").on(F+e._namespace,(function(t){var r=t.target.value,i=null,l=null;e._initEndView(r),e._count.length?(i=e._count.val(),l=null):e._until.length&&(i=null,l=e._until.val?a.parseDate(e._until.val(),"yyyy-MM-dd"):e._until.value()),n.count=i,n.until=l}))},_createView:function(t){var n=this,r=n.options.messages,i=r["repeat"===t?"repeatTitle":"endTitle"],l='<div data-role="view" class="k-popup-edit-form k-scheduler-edit-form" id="recurrence"><div data-role="header" class="k-header"><a href="#" class="k-header-cancel k-scheduler-cancel k-link" title="'+r.cancel+'"aria-label="'+r.cancel+'">'+a.ui.icon("chevron-left")+"</a>"+r.headerTitle+'<a href="#" class="k-header-done k-scheduler-update k-link" title="'+r.update+'" aria-label="'+r.update+'">'+a.ui.icon("check")+"</a></div>",s=n._pane.view().id;n._view=n._pane.append(l+fe({headerTitle:i})),n._view.element.on(R+n._namespace,"a.k-scheduler-cancel, a.k-scheduler-update",(function(t){t.preventDefault(),t.stopPropagation(),e(this).hasClass("k-scheduler-update")?(n.trigger("change"),n._defaultValue=e.extend({},n._value)):n._value=n._defaultValue;var a=n._value.freq;n._endParentEndButton.text(n._endText()),n._endParentLabelField.toggle(!!a&&"never"!==a),n._endButton.text(n._endText()),n._repeatValue.text(r.frequencies[a||"never"]),n._pane.one("viewShow",(function(){n._destroyView()})),n._pane.navigate(s,n.options.animations.right)})),n._container=n._view.element.find(".k-recur-view"),"repeat"===t?(n._initFrequency(),n._initRepeatView(),n._initRepeatEnd()):(n._initEndNavigation(),n._initEndView())},_destroyView:function(){this._view&&(this._view.destroy(),this._view.element.remove(),this._container=null),this._view=null},_initRepeatView:function(){var e=this,t=e._value.freq||"never",n={frequency:t,firstWeekDay:e.options.firstWeekDay,messages:e.options.messages[t]},r=ye(n),i=e._container=e._container||this._pane.view().content.find("li.k-recur-view"),l=e._value;if(e._endLabelField&&e._endLabelField.toggleClass("k-disabled","never"===t),a.destroy(i),i.html(r),!r)return e._value={},void i.hide();i.show(),"weekly"!==t||l.weekDays||(l.weekDays=[{day:e.options.start.getDay(),offset:0}]),e._weekDayButtons(e.options.firstWeekDay),e._initInterval(),e._initMonthDay(),e._initWeekDays(),e._initWeekDay(),e._initMonth(),e._period()},_initMonthDay:function(){var e=this,t=e._value;(e._monthDay=e._container.find(".k-recur-monthday")).attr({min:1,max:31}).val(t.monthDays?t.monthDays[0]:e.options.start.getDate()).on(F+e._namespace,(function(a){t.count=a.target.value,e._trigger()}))},_initCount:function(){var e=this,t=e._count=e._container.find(".k-recur-count"),a=e._value;t.val(a.count||1).on(F+e._namespace,(function(t){a.count=t.target.value,e._trigger()}))},_initEndView:function(e){var n=this,r=n._value;e===t&&(r.count?e="count":r.until&&(e="until"));var i={endPattern:e,messages:n.options.messages.end};a.destroy(n._container),n._container.html(pe(i)),n._initCount(),n._initUntil()},_initWeekDay:function(){var t,n=this,r=n.options.messages.weekdays,i=n.options.messages.offsetPositions,l=n._container.find(".k-recur-weekday"),s=function(){n._weekDayRule(),n.trigger("change")};l[0]&&(n._weekDayOffset=n._container.find(".k-recur-weekday-offset").html(n._options([{text:i.first,value:"1"},{text:i.second,value:"2"},{text:i.third,value:"3"},{text:i.fourth,value:"4"},{text:i.last,value:"-1"}])).on("change",s),t=(t=[{text:r.day,value:"day"},{text:r.weekday,value:"weekday"},{text:r.weekend,value:"weekend"}]).concat(e.map(a.culture().calendar.days.names,(function(e,t){return{text:e,value:t}}))),n._weekDay=l.html(n._options(t)).on("change",s).val(n.options.start.getDay()),n._weekDayView())},_initMonth:function(){var t=this,n=t._value,r=t.options.start,i=n.months||[r.getMonth()+1],l=t._container.find(".k-recur-month"),s=a.culture().calendar.months.names;if(l[0]){var o=e.map(s,(function(e,t){return{text:e,value:t+1}}));l.html(t._options(o)).on("change",(function(){n.months=[Number(this.value)]})),t._monthSelect=l,i&&l.val(i[0])}},_period:function(){var e=this,t=e._value,n=e._container,r=e.options.messages[t.freq],i=n.find(".k-repeat-rule"),l=n.find(".k-weekday-view"),s=n.find(".k-monthday-view");if(i[0]){var o=t.weekDays?"weekday":"monthday",u=me({value:o,dataSource:[{text:r.dayOfMonth,value:"monthday"},{text:r.dayOfWeek,value:"weekday"}],ns:a.ns}),d=function(a){var n=e._weekDay.val(),r=e._weekDayOffset.val(),i=e._monthDay.val(),o=e._monthSelect?e._monthSelect.val():null;"monthday"===a?(t.weekDays=null,t.monthDays=i?[i]:i,t.months=o?[Number(o)]:o,l.hide(),s.show()):(t.monthDays=null,t.months=o?[Number(o)]:o,t.weekDays=[{offset:Number(r),day:Number(n)}],l.show(),s.hide())};i.append(u),i.find(".k-scheduler-select").on(F+e._namespace,(function(e){d(e.target.value)})),d(o)}},_initUntil:function(){var e=this,t=e._container.find(".k-recur-until"),n=e.options.start,r=e._value,i=r.until,l=i&&i<n?i:n,s=a.format(a.ui.Validator.prototype.options.messages.date,e.options.messages.end.on),o=a.ui.Validator.prototype.options.messages.dateCompare;t.attr("data-validDate-msg",s),t.attr("data-untilDateCompare-msg",o),a.support.input.date?e._until=t.attr("min",a.toString(l,"yyyy-MM-dd")).val(a.toString(i||n,"yyyy-MM-dd")).on("change",(function(){var t=a.parseDate(this.value,"yyyy-MM-dd");t&&(r.until=t),e._trigger()})):e._until=t.kendoDatePicker({min:l,value:i||n,change:function(){var t=this.value();t&&(r.until=t),e._trigger()}}).data("kendoDatePicker")},_options:function(e,t){var a=0,n="",r=e.length,i=this._optionTemplate;for(t&&(n+=i({value:"",text:t}));a<r;a++)n+=i(e[a]);return n}});l.plugin(ve)}(window.kendo.jQuery)})); //# sourceMappingURL=kendo.scheduler.recurrence.min.js.map