wishthis/semantic/dist/components/calendar.min.js
2022-07-15 09:58:48 +02:00

11 lines
No EOL
26 KiB
JavaScript

/*
* # Fomantic UI - 2.9.0-beta.298+8d87844
* https://github.com/fomantic/Fomantic-UI
* http://fomantic-ui.com/
*
* Copyright 2022 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
!function(re,T,k,oe){"use strict";re.isFunction=re.isFunction||function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},T=void 0!==T&&T.Math==Math?T:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),re.fn.calendar=function(g){var D,e=re(this),y=e.selector||"",v=(new Date).getTime(),b=[],C=g,w="string"==typeof C,M=[].slice.call(arguments,1),x={5:{row:4,column:3},10:{row:3,column:2},15:{row:2,column:2},20:{row:3,column:1},30:{row:2,column:1}},ne=["","one","two","three","four","five","six","seven","eight"];return e.each(function(){var c,e,$=re.isPlainObject(g)?re.extend(!0,{},re.fn.calendar.settings,g):re.extend({},re.fn.calendar.settings),Q=$.className,t=$.namespace,n=$.selector,Z=$.formatter,a=$.parser,X=$.metadata,_=x[$.minTimeGap],s=$.error,r="."+t,o="module-"+t,i=re(this),l=i.find(n.input),ee=i.find(n.popup),d=i.find(n.activator),u=this,p=i.data(o),f=!1,te=i.hasClass(Q.inverted),m=!1,h=!1,ae={initialize:function(){ae.debug("Initializing calendar for",u,i),c=ae.get.isTouch(),ae.setup.config(),ae.setup.popup(),ae.setup.inline(),ae.setup.input(),ae.setup.date(),ae.create.calendar(),ae.bind.events(),ae.observeChanges(),ae.instantiate()},instantiate:function(){ae.verbose("Storing instance of calendar"),p=ae,i.data(o,p)},destroy:function(){ae.verbose("Destroying previous calendar for",u),i.removeData(o),ae.unbind.events(),ae.disconnect.classObserver()},setup:{config:function(){null!==ae.get.minDate()&&ae.set.minDate(i.data(X.minDate)),null!==ae.get.maxDate()&&ae.set.maxDate(i.data(X.maxDate)),ae.setting("type",ae.get.type()),ae.setting("on",$.on||(l.length?"focus":"click"))},popup:function(){var e,t,a;$.inline||(d.length||(d=i.children().first()).length)&&(re.fn.popup===oe?ae.error(s.popup):(ee.length||(e=0!==(t=d.parent()).closest(n.append).length?"appendTo":"prependTo",ee=re("<div/>").addClass(Q.popup)[e](t)),ee.addClass(Q.calendar),te&&ee.addClass(Q.inverted),e=function(){return ae.refreshTooltips(),$.onVisible.apply(ee,arguments)},t=$.onHidden,l.length||(ee.attr("tabindex","0"),e=function(){return ae.refreshTooltips(),ae.focus(),$.onVisible.apply(ee,arguments)},t=function(){return ae.blur(),$.onHidden.apply(ee,arguments)}),a=ae.setting("on"),a=re.extend({},$.popupOptions,{popup:ee,on:a,hoverable:"hover"===a,closable:"click"===a,onShow:function(){return ae.set.focusDate(ae.get.date()),ae.set.mode(ae.get.validatedMode($.startMode)),$.onShow.apply(ee,arguments)},onVisible:e,onHide:$.onHide,onHidden:t}),ae.popup(a)))},inline:function(){d.length&&!$.inline||($.inline=!0,ee=re("<div/>").addClass(Q.calendar).appendTo(i),l.length||ee.attr("tabindex","0"))},input:function(){$.touchReadonly&&l.length&&c&&l.prop("readonly",!0),ae.check.disabled()},date:function(){var e;$.initialDate?e=a.date($.initialDate,$):i.data(X.date)!==oe?e=a.date(i.data(X.date),$):l.length&&(e=a.date(l.val(),$)),ae.set.date(e,$.formatInput,!1),ae.set.mode(ae.get.mode(),!1)}},trigger:{change:function(){var e,t=l[0];t&&(e=k.createEvent("HTMLEvents"),ae.verbose("Triggering native change event"),e.initEvent("change",!0,!1),t.dispatchEvent(e))}},create:{calendar:function(){var e,t,S,a=ae.get.mode(),n=new Date,q=ae.get.date(),r=ae.get.focusDate(),o=ae.helper.dateInRange(r||q||$.initialDate||n),i=(r||ae.set.focusDate(r=o,!1,!1),"year"===a),s="month"===a,l="day"===a,d="hour"===a,u="minute"===a,W="time"===$.type,R=Math.max($.multiMonth,1),V=l?ae.get.monthOffset():0,c=o.getMinutes(),p=o.getHours(),f=o.getDate(),G=o.getMonth()+V,m=o.getFullYear(),h=l?$.showWeekNumbers?8:7:d?4:_.column,P=l||d?6:_.row,g=l?R:1,B=(D=ee).hasClass("left")?"right center":"left center";for(D.empty(),1<g&&(S=re("<div/>").addClass(Q.grid).appendTo(D)),t=0;t<g;t++){1<g&&(D=re("<div/>").addClass(Q.column).appendTo(S));var D,y=G+t,K=(new Date(m,y,1).getDay()-$.firstDayOfWeek%7+7)%7,v=(!$.constantHeight&&l&&(v=new Date(m,y+1,0).getDate()+K,P=Math.ceil(v/7)),i?10:s?1:0),b=l?1:0,C=d||u?1:0,w=d||u?f:1,M=new Date(m-v,y-b,w-C,p),b=new Date(m+v,y+b,w+C,p),w=i?new Date(10*Math.ceil(m/10)-9,0,0):s?new Date(m,0,0):l?new Date(m,y,0):new Date(m,y,f,-1),C=i?new Date(10*Math.ceil(m/10)+1,0,1):s?new Date(m+1,0,1):l?new Date(m,y+1,1):new Date(m,y,f+1),x=a,x=(l&&$.showWeekNumbers&&(x+=" andweek"),re("<table/>").addClass(Q.table).addClass(x).addClass(ne[h]+" column").appendTo(D)),T=(te&&x.addClass(Q.inverted),h);if(!W){var U=re("<thead/>").appendTo(x),k=re("<tr/>").appendTo(U),O=re("<th/>").attr("colspan",""+h).appendTo(k),F=i||s?new Date(m,0,1):l?new Date(m,y,1):new Date(m,y,f,p,c),N=re("<span/>").addClass(Q.link).appendTo(O),F=(N.text(Z.header(F,a,$)),s?$.disableYear?"day":"year":l?$.disableMonth?"year":"month":"day");if(N.data(X.mode,F),0===t&&((N=re("<span/>").addClass(Q.prev).appendTo(O)).data(X.focusDate,M),N.toggleClass(Q.disabledCell,!ae.helper.isDateInRange(w,a)),re("<i/>").addClass(Q.prevIcon).appendTo(N)),t===g-1&&((F=re("<span/>").addClass(Q.next).appendTo(O)).data(X.focusDate,b),F.toggleClass(Q.disabledCell,!ae.helper.isDateInRange(C,a)),re("<i/>").addClass(Q.nextIcon).appendTo(F)),l)for(k=re("<tr/>").appendTo(U),$.showWeekNumbers&&((O=re("<th/>").appendTo(k)).text($.text.weekNo),O.addClass(Q.weekCell),T--),A=0;A<T;A++)(O=re("<th/>").appendTo(k)).text(Z.dayColumnHeader((A+$.firstDayOfWeek)%7,$))}for(var J=re("<tbody/>").appendTo(x),A=i?10*Math.ceil(m/10)-9:l?1-K:0,z=0;z<P;z++)for(k=re("<tr/>").appendTo(J),l&&$.showWeekNumbers&&((O=re("<th/>").appendTo(k)).text(ae.get.weekOfYear(m,y,A+1-$.firstDayOfWeek)),O.addClass(Q.weekCell)),e=0;e<T;e++,A++){var E,H=i?new Date(A,y,1,p,c):s?new Date(m,A,1,p,c):l?new Date(m,y,A,p,c):d?new Date(m,y,f,A):new Date(m,y,f,p,A*$.minTimeGap),Y=i?A:s?$.text.monthsShort[A]:l?H.getDate():Z.time(H,$,!0),Y=((O=re("<td/>").addClass(Q.cell).appendTo(k)).text(Y),O.data(X.date,H),l&&H.getMonth()!==(y+12)%12),I=!$.selectAdjacentDays&&Y||!ae.helper.isDateInRange(H,a)||$.isDisabled(H,a)||ae.helper.isDisabled(H,a)||!ae.helper.isEnabled(H,a),j=(I?null!==(j=ae.helper.findDayAsObject(H,a,$.disabledDates))&&j[X.message]&&(O.attr("data-tooltip",j[X.message]),O.attr("data-position",j[X.position]||B),(j[X.inverted]||te&&j[X.inverted]===oe)&&O.attr("data-inverted",""),j[X.variation]&&O.attr("data-variation",j[X.variation])):null!==(E=ae.helper.findDayAsObject(H,a,$.eventDates))&&(O.addClass(E[X.class]||$.eventClass),E[X.message]&&(O.attr("data-tooltip",E[X.message]),O.attr("data-position",E[X.position]||B),(E[X.inverted]||te&&E[X.inverted]===oe)&&O.attr("data-inverted",""),E[X.variation]&&O.attr("data-variation",E[X.variation]))),ae.helper.dateEqual(H,q,a)),L=ae.helper.dateEqual(H,n,a),Y=(O.toggleClass(Q.adjacentCell,Y&&!E),O.toggleClass(Q.disabledCell,I),O.toggleClass(Q.activeCell,j&&!(Y&&I)),d||u||O.toggleClass(Q.todayCell,!Y&&L),{mode:a,adjacent:Y,disabled:I,active:j,today:L});Z.cell(O,H,Y),ae.helper.dateEqual(H,r,a)&&ae.set.focusDate(H,!1,!1)}$.today&&(M=re("<tr/>").appendTo(J),(w=re("<td/>").attr("colspan",""+h).addClass(Q.today).appendTo(M)).text(Z.today($)),w.data(X.date,n)),ae.update.focus(!1,x),$.inline&&ae.refreshTooltips()}}},update:{focus:function(e,t){t=t||ee;var i=ae.get.mode(),a=ae.get.date(),s=ae.get.focusDate(),l=ae.get.startDate(),d=ae.get.endDate(),u=(e?s:null)||a||(c?null:s);t.find("td").each(function(){var e,t,a,n,r=re(this),o=r.data(X.date);o&&(e=r.hasClass(Q.disabledCell),t=r.hasClass(Q.activeCell),a=r.hasClass(Q.adjacentCell),n=ae.helper.dateEqual(o,s,i),o=!!u&&(!!l&&ae.helper.isDateInRange(o,i,l,u)||!!d&&ae.helper.isDateInRange(o,i,u,d)),r.toggleClass(Q.focusCell,n&&(!c||f)&&(!a||$.selectAdjacentDays&&a)&&!e),ae.helper.isTodayButton(r)||r.toggleClass(Q.rangeCell,o&&!t&&!e))})}},refresh:function(){ae.create.calendar()},refreshTooltips:function(){var n=re(T).width();ee.find("td[data-position]").each(function(){var e=re(this),t=T.getComputedStyle(e[0],":after").width.replace(/[^0-9\.]/g,""),a=e.attr("data-position"),t=n-e.width()-(parseInt(t,10)||250)>e.offset().left?"right":"left";-1===a.indexOf(t)&&e.attr("data-position",a.replace(/(left|right)/,t))})},bind:{events:function(){ae.debug("Binding events"),ee.on("mousedown"+r,ae.event.mousedown),ee.on("touchstart"+r,ae.event.mousedown),ee.on("mouseup"+r,ae.event.mouseup),ee.on("touchend"+r,ae.event.mouseup),ee.on("mouseover"+r,ae.event.mouseover),l.length?(l.on("input"+r,ae.event.inputChange),l.on("focus"+r,ae.event.inputFocus),l.on("blur"+r,ae.event.inputBlur),l.on("keydown"+r,ae.event.keydown)):ee.on("keydown"+r,ae.event.keydown)}},unbind:{events:function(){ae.debug("Unbinding events"),ee.off(r),l.length&&l.off(r)}},event:{mouseover:function(e){var t=re(e.target).data(X.date),e=1===e.buttons;t&&ae.set.focusDate(t,!1,!0,e)},mousedown:function(e){l.length&&e.preventDefault(),f=0<=e.type.indexOf("touch");e=re(e.target).data(X.date);e&&ae.set.focusDate(e,!1,!0,!0)},mouseup:function(e){ae.focus(),e.preventDefault(),e.stopPropagation(),f=!1;var t,a,n,e=re(e.target);e.hasClass("disabled")||(t=(e=(t=e.parent()).data(X.date)||t.data(X.focusDate)||t.data(X.mode)?t:e).data(X.date),a=e.data(X.focusDate),n=e.data(X.mode),t&&!1!==$.onSelect.call(u,t,ae.get.mode())?(e=e.hasClass(Q.today),ae.selectDate(t,e)):a?ae.set.focusDate(a):n&&ae.set.mode(n))},keydown:function(e){var t,a,n,r,o,i,s,l=e.which;27!==l&&9!==l||ae.popup("hide"),ae.popup("is visible")&&(37===l||38===l||39===l||40===l?(r="day"===(i=ae.get.mode())?7:"hour"===i?4:"minute"===i?_.column:3,r=37===l?-1:38===l?-r:39==l?1:r,r*="minute"===i?$.minTimeGap:1,o=(t=ae.get.focusDate()||ae.get.date()||new Date).getFullYear()+("year"===i?r:0),s=t.getMonth()+("month"===i?r:0),a=t.getDate()+("day"===i?r:0),n=t.getHours()+("hour"===i?r:0),r=t.getMinutes()+("minute"===i?r:0),o=new Date(o,s,a,n,r),"time"===$.type&&(o=ae.helper.mergeDateTime(t,o)),ae.helper.isDateInRange(o,i)&&ae.set.focusDate(o)):13===l&&(i=ae.get.mode(),(s=ae.get.focusDate())&&!$.isDisabled(s,i)&&!ae.helper.isDisabled(s,i)&&ae.helper.isEnabled(s,i)&&ae.selectDate(s),e.preventDefault(),e.stopPropagation())),38!==l&&40!==l||(e.preventDefault(),ae.popup("show"))},inputChange:function(){var e=l.val(),e=a.date(e,$);ae.set.date(e,!1)},inputFocus:function(){ee.addClass(Q.active)},inputBlur:function(){var e;ee.removeClass(Q.active),$.formatInput&&(e=ae.get.date(),e=Z.datetime(e,$),l.val(e)),h&&(ae.trigger.change(),h=!1)},class:{mutation:function(e){e.forEach(function(e){"class"===e.attributeName&&ae.check.disabled()})}}},observeChanges:function(){"MutationObserver"in T&&(e=new MutationObserver(ae.event.class.mutation),ae.debug("Setting up mutation observer",e),ae.observe.class())},disconnect:{classObserver:function(){l.length&&e&&e.disconnect()}},observe:{class:function(){l.length&&e&&e.observe(i[0],{attributes:!0})}},is:{disabled:function(){return i.hasClass(Q.disabled)}},check:{disabled:function(){l.attr("tabindex",ae.is.disabled()?-1:0)}},get:{weekOfYear:function(e,t,a){return e=Date.UTC(e,t,a+3)/864e5,e=Math.floor(e/7),t=new Date(6048e5*e).getUTCFullYear(),e-Math.floor(Date.UTC(t,0,7)/6048e5)+1},date:function(){return ae.helper.sanitiseDate(i.data(X.date))||null},inputDate:function(){return l.val()},focusDate:function(){return i.data(X.focusDate)||null},startDate:function(){var e=ae.get.calendarModule($.startCalendar);return(e?e.get.date():i.data(X.startDate))||null},endDate:function(){var e=ae.get.calendarModule($.endCalendar);return(e?e.get.date():i.data(X.endDate))||null},minDate:function(){return i.data(X.minDate)||null},maxDate:function(){return i.data(X.maxDate)||null},monthOffset:function(){return i.data(X.monthOffset)||0},mode:function(){var e=i.data(X.mode)||$.startMode;return ae.get.validatedMode(e)},validatedMode:function(e){var t=ae.get.validModes();return 0<=re.inArray(e,t)?e:"time"===$.type?"hour":"month"===$.type?"month":"year"===$.type?"year":"day"},type:function(){return i.data(X.type)||$.type},validModes:function(){var e=[];return"time"!==$.type&&($.disableYear&&"year"!==$.type||e.push("year"),($.disableMonth||"year"===$.type)&&"month"!==$.type||e.push("month"),0<=$.type.indexOf("date")&&e.push("day")),0<=$.type.indexOf("time")&&(e.push("hour"),$.disableMinute||e.push("minute")),e},isTouch:function(){try{return k.createEvent("TouchEvent"),!0}catch(e){return!1}},calendarModule:function(e){return e?(e=e instanceof re?e:re(e).first()).data(o):null}},set:{date:function(e,t,a){t=!1!==t,a=!1!==a,e=ae.helper.sanitiseDate(e),e=ae.helper.dateInRange(e);var n=ae.get.mode(),r=Z.datetime(e,$);if(a&&!1===$.onBeforeChange.call(u,e,r,n))return!1;if(ae.set.focusDate(e),$.isDisabled(e,n))return!1;var o=ae.get.endDate();o&&e&&o<e&&ae.set.endDate(oe),ae.set.dataKeyValue(X.date,e),t&&l.length&&l.val(r),a&&$.onChange.call(u,e,r,n)},startDate:function(e,t){e=ae.helper.sanitiseDate(e);var a=ae.get.calendarModule($.startCalendar);a&&a.set.date(e),ae.set.dataKeyValue(X.startDate,e,t)},endDate:function(e,t){e=ae.helper.sanitiseDate(e);var a=ae.get.calendarModule($.endCalendar);a&&a.set.date(e),ae.set.dataKeyValue(X.endDate,e,t)},focusDate:function(e,t,a,n){e=ae.helper.sanitiseDate(e),e=ae.helper.dateInRange(e);var r="day"===ae.get.mode(),o=ae.get.focusDate(),r=(r&&e&&o&&((r=12*(e.getFullYear()-o.getFullYear())+e.getMonth()-o.getMonth())&&(o=ae.get.monthOffset()-r,ae.set.monthOffset(o,!1))),ae.set.dataKeyValue(X.focusDate,e,!!e&&t));a=!1!==a&&r&&!1===t||m!=n,m=n,a&&ae.update.focus(n)},minDate:function(e){e=ae.helper.sanitiseDate(e),null!==$.maxDate&&$.maxDate<=e?ae.verbose("Unable to set minDate variable bigger that maxDate variable",e,$.maxDate):(ae.setting("minDate",e),ae.set.dataKeyValue(X.minDate,e))},maxDate:function(e){e=ae.helper.sanitiseDate(e),null!==$.minDate&&$.minDate>=e?ae.verbose("Unable to set maxDate variable lower that minDate variable",e,$.minDate):(ae.setting("maxDate",e),ae.set.dataKeyValue(X.maxDate,e))},monthOffset:function(e,t){var a=Math.max($.multiMonth,1);e=Math.max(1-a,Math.min(0,e)),ae.set.dataKeyValue(X.monthOffset,e,t)},mode:function(e,t){ae.set.dataKeyValue(X.mode,e,t)},dataKeyValue:function(e,t,a){var n=i.data(e),n=n===t||n<=t&&t<=n;return t?i.data(e,t):i.removeData(e),(a=!1!==a&&!n)&&ae.refresh(),!n}},selectDate:function(e,t){ae.verbose("New date selection",e);var a=ae.get.mode();t||"minute"===a||$.disableMinute&&"hour"===a||"date"===$.type&&"day"===a||"month"===$.type&&"month"===a||"year"===$.type&&"year"===a?!1!==ae.set.date(e)&&(h=!0,$.closable&&(ae.popup("hide"),(t=ae.get.calendarModule($.endCalendar))&&("focus"!==t.setting("on")&&t.popup("show"),t.focus()))):(t="year"===a?$.disableMonth?"day":"month":"month"===a?"day":"day"===a?"hour":"minute",ae.set.mode(t),"hour"===a||"day"===a&&ae.get.date()?ae.set.date(e,!0,!1):ae.set.focusDate(e))},changeDate:function(e){ae.set.date(e)},clear:function(){ae.set.date(oe)},popup:function(){return d.popup.apply(d,arguments)},focus:function(){(l.length?l:ee).focus()},blur:function(){(l.length?l:ee).blur()},helper:{isDisabled:function(a,n){return("day"===n||"month"===n||"year"===n)&&("day"===n&&-1!==$.disabledDaysOfWeek.indexOf(a.getDay())||$.disabledDates.some(function(e){return(e="string"==typeof e?ae.helper.sanitiseDate(e):e)instanceof Date?ae.helper.dateEqual(a,e,n):null!==e&&"object"==typeof e?e[X.year]?"number"==typeof e[X.year]?a.getFullYear()==e[X.year]:Array.isArray(e[X.year])?-1<e[X.year].indexOf(a.getFullYear()):void 0:e[X.month]?"number"==typeof e[X.month]?a.getMonth()==e[X.month]:Array.isArray(e[X.month])?-1<e[X.month].indexOf(a.getMonth()):e[X.month]instanceof Date?(t=ae.helper.sanitiseDate(e[X.month]),a.getMonth()==t.getMonth()&&a.getFullYear()==t.getFullYear()):void 0:e[X.date]&&"day"===n?e[X.date]instanceof Date?ae.helper.dateEqual(a,ae.helper.sanitiseDate(e[X.date]),n):Array.isArray(e[X.date])?e[X.date].some(function(e){return ae.helper.dateEqual(a,e,n)}):void 0:void 0:void 0;var t}))},isEnabled:function(t,a){return"day"!==a||(0===$.enabledDates.length||$.enabledDates.some(function(e){return(e="string"==typeof e?ae.helper.sanitiseDate(e):e)instanceof Date?ae.helper.dateEqual(t,e,a):null!==e&&"object"==typeof e&&e[X.date]?ae.helper.dateEqual(t,ae.helper.sanitiseDate(e[X.date]),a):void 0}))},findDayAsObject:function(t,a,e){if("day"===a||"month"===a||"year"===a)for(var n,r=0;r<e.length;r++){if((n="string"==typeof(n=e[r])?ae.helper.sanitiseDate(n):n)instanceof Date&&ae.helper.dateEqual(t,n,a))return(o={})[X.date]=n,o;if(null!==n&&"object"==typeof n)if(n[X.year]){if("number"==typeof n[X.year]&&t.getFullYear()==n[X.year])return n;if(Array.isArray(n[X.year])&&-1<n[X.year].indexOf(t.getFullYear()))return n}else if(n[X.month]){if("number"==typeof n[X.month]&&t.getMonth()==n[X.month])return n;if(Array.isArray(n[X.month])){if(-1<n[X.month].indexOf(t.getMonth()))return n}else if(n[X.month]instanceof Date){var o=ae.helper.sanitiseDate(n[X.month]);if(t.getMonth()==o.getMonth()&&t.getFullYear()==o.getFullYear())return n}}else if(n[X.date]&&"day"===a){if(n[X.date]instanceof Date&&ae.helper.dateEqual(t,ae.helper.sanitiseDate(n[X.date]),a))return n;if(Array.isArray(n[X.date])&&n[X.date].some(function(e){return ae.helper.dateEqual(t,e,a)}))return n}}return null},sanitiseDate:function(e){return!(e=e instanceof Date?e:a.date(""+e,$))||isNaN(e.getTime())?null:e},dateDiff:function(e,t,a){var n="time"===$.type,r="year"===(a=a||"day"),o=r||"month"===a,i="minute"===a,a=i||"hour"===a;return e=new Date(n?2e3:e.getFullYear(),n||r?0:e.getMonth(),n||o?1:e.getDate(),a?e.getHours():0,i?$.minTimeGap*Math.floor(e.getMinutes()/$.minTimeGap):0),(t=new Date(n?2e3:t.getFullYear(),n||r?0:t.getMonth(),n||o?1:t.getDate(),a?t.getHours():0,i?$.minTimeGap*Math.floor(t.getMinutes()/$.minTimeGap):0)).getTime()-e.getTime()},dateEqual:function(e,t,a){return!!e&&!!t&&0===ae.helper.dateDiff(e,t,a)},isDateInRange:function(e,t,a,n){var r;return a||n||(a=(r=ae.get.startDate())&&$.minDate?new Date(Math.max(r,$.minDate)):r||$.minDate,n=$.maxDate),a=a&&new Date(a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),$.minTimeGap*Math.ceil(a.getMinutes()/$.minTimeGap)),!(!e||a&&0<ae.helper.dateDiff(e,a,t)||n&&0<ae.helper.dateDiff(n,e,t))},dateInRange:function(e,t,a){t||a||(t=(n=ae.get.startDate())&&$.minDate?new Date(Math.max(n,$.minDate)):n||$.minDate,a=$.maxDate),t=t&&new Date(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),$.minTimeGap*Math.ceil(t.getMinutes()/$.minTimeGap));var n="time"===$.type;return e&&(t&&0<ae.helper.dateDiff(e,t,"minute")?n?ae.helper.mergeDateTime(e,t):t:a&&0<ae.helper.dateDiff(a,e,"minute")?n?ae.helper.mergeDateTime(e,a):a:e)},mergeDateTime:function(e,t){return e&&t?new Date(e.getFullYear(),e.getMonth(),e.getDate(),t.getHours(),t.getMinutes()):t},isTodayButton:function(e){return e.text()===$.text.today}},setting:function(e,t){if(ae.debug("Changing setting",e,t),re.isPlainObject(e))re.extend(!0,$,e);else{if(t===oe)return $[e];re.isPlainObject($[e])?re.extend(!0,$[e],t):$[e]=t}},internal:function(e,t){if(re.isPlainObject(e))re.extend(!0,ae,e);else{if(t===oe)return ae[e];ae[e]=t}},debug:function(){!$.silent&&$.debug&&($.performance?ae.performance.log(arguments):(ae.debug=Function.prototype.bind.call(console.info,console,$.name+":"),ae.debug.apply(console,arguments)))},verbose:function(){!$.silent&&$.verbose&&$.debug&&($.performance?ae.performance.log(arguments):(ae.verbose=Function.prototype.bind.call(console.info,console,$.name+":"),ae.verbose.apply(console,arguments)))},error:function(){$.silent||(ae.error=Function.prototype.bind.call(console.error,console,$.name+":"),ae.error.apply(console,arguments))},performance:{log:function(e){var t,a;$.performance&&(a=(t=(new Date).getTime())-(v||t),v=t,b.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:u,"Execution Time":a})),clearTimeout(ae.performance.timer),ae.performance.timer=setTimeout(ae.performance.display,500)},display:function(){var e=$.name+":",a=0;v=!1,clearTimeout(ae.performance.timer),re.each(b,function(e,t){a+=t["Execution Time"]}),e+=" "+a+"ms",y&&(e+=" '"+y+"'"),(console.group!==oe||console.table!==oe)&&0<b.length&&(console.groupCollapsed(e),console.table?console.table(b):re.each(b,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),b=[]}},invoke:function(n,e,t){var r,o,a,i=p;return e=e||M,t=u||t,"string"==typeof n&&i!==oe&&(n=n.split(/[\. ]/),r=n.length-1,re.each(n,function(e,t){var a=e!=r?t+n[e+1].charAt(0).toUpperCase()+n[e+1].slice(1):n;if(re.isPlainObject(i[a])&&e!=r)i=i[a];else{if(i[a]!==oe)return o=i[a],!1;{if(!re.isPlainObject(i[t])||e==r)return i[t]!==oe?o=i[t]:ae.error(s.method,n),!1;i=i[t]}}})),re.isFunction(o)?a=o.apply(t,e):o!==oe&&(a=o),Array.isArray(D)?D.push(a):D!==oe?D=[D,a]:a!==oe&&(D=a),o}};w?(p===oe&&ae.initialize(),ae.invoke(C)):(p!==oe&&p.invoke("destroy"),ae.initialize())}),D!==oe?D:this},re.fn.calendar.settings={name:"Calendar",namespace:"calendar",silent:!1,debug:!1,verbose:!1,performance:!1,type:"datetime",firstDayOfWeek:0,constantHeight:!0,today:!1,closable:!0,monthFirst:!0,touchReadonly:!0,inline:!1,on:null,initialDate:null,startMode:!1,minDate:null,maxDate:null,ampm:!0,disableYear:!1,disableMonth:!1,disableMinute:!1,formatInput:!0,startCalendar:null,endCalendar:null,multiMonth:1,minTimeGap:5,showWeekNumbers:null,disabledDates:[],disabledDaysOfWeek:[],enabledDates:[],eventDates:[],centuryBreak:60,currentCentury:2e3,selectAdjacentDays:!1,popupOptions:{position:"bottom left",lastResort:"bottom left",prefer:"opposite",hideOnScroll:!1},text:{days:["S","M","T","W","T","F","S"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",now:"Now",am:"AM",pm:"PM",weekNo:"Week"},formatter:{header:function(e,t,a){return"year"===t?a.formatter.yearHeader(e,a):"month"===t?a.formatter.monthHeader(e,a):"day"===t?a.formatter.dayHeader(e,a):"hour"===t?a.formatter.hourHeader(e,a):a.formatter.minuteHeader(e,a)},yearHeader:function(e,t){e=10*Math.ceil(e.getFullYear()/10);return e-9+" - "+(2+e)},monthHeader:function(e,t){return e.getFullYear()},dayHeader:function(e,t){return t.text.months[e.getMonth()]+" "+e.getFullYear()},hourHeader:function(e,t){return t.formatter.date(e,t)},minuteHeader:function(e,t){return t.formatter.date(e,t)},dayColumnHeader:function(e,t){return t.text.days[e]},datetime:function(e,t){if(!e)return"";var a="time"===t.type?"":t.formatter.date(e,t),e=t.type.indexOf("time")<0?"":t.formatter.time(e,t,!1);return a+("datetime"===t.type?" ":"")+e},date:function(e,t){if(!e)return"";var a=e.getDate(),n=t.text.months[e.getMonth()],e=e.getFullYear();return"year"===t.type?e:"month"===t.type?n+" "+e:(t.monthFirst?n+" "+a:a+" "+n)+", "+e},time:function(e,t,a){if(!e)return"";var n=e.getHours(),e=e.getMinutes(),r="";return t.ampm&&(r=" "+(n<12?t.text.am:t.text.pm),n=0===n?12:12<n?n-12:n),n+":"+(e<10?"0":"")+e+r},today:function(e){return"date"===e.type?e.text.today:e.text.now},cell:function(e,t,a){}},parser:{date:function(e,t){if(e instanceof Date)return e;if(!e)return null;if(0===(e=String(e).trim()).length)return null;e.match(/^[0-9]{4}[\/\-\.][0-9]{1,2}[\/\-\.][0-9]{1,2}$/)&&(e=e.replace(/[\/\-\.]/g,"/")+" 00:00:00"),e=t.monthFirst||!e.match(/^[0-9]{1,2}[\/\-\.]/)?e:e.replace(/[\/\-\.]/g,"/").replace(/([0-9]+)\/([0-9]+)/,"$2/$1");var a,n,r,o=new Date(e);if(!(null!==e.match(/^[0-9]+$/))&&!isNaN(o.getDate()))return o;e=e.toLowerCase();var i,s,l,d=-1,u=-1,c=-1,p=-1,f=-1,o=oe,m="time"===t.type,h=t.type.indexOf("time")<0,g=e.split(t.regExp.dateWords),D=e.split(t.regExp.dateNumbers);if(!h)for(o=0<=re.inArray(t.text.am.toLowerCase(),g)||!(0<=re.inArray(t.text.pm.toLowerCase(),g))&&oe,a=0;a<D.length;a++)if(0<=(s=D[a]).indexOf(":")){if(u<0||d<0)for(l=s.split(":"),r=0;r<Math.min(2,l.length);r++)n=parseInt(l[r]),isNaN(n)&&(n=0),0===r?u=n%24:d=n%60;D.splice(a,1)}if(!m){for(a=0;a<g.length;a++)if(!((i=g[a]).length<=0)){for(n=0;n<t.text.months.length;n++)if(t.text.months[n].substring(0,i.length).toLowerCase()===i){p=n+1;break}if(0<=p)break}for(a=0;a<D.length;a++)if(n=parseInt(D[a]),!isNaN(n)&&n>=t.centuryBreak&&a===D.length-1){n<=99&&(n+=t.currentCentury-100),f=n,D.splice(a,1);break}if(p<0)for(a=0;a<D.length;a++)if(r=1<a||t.monthFirst?a:1===a?0:1,n=parseInt(D[r]),!isNaN(n)&&1<=n&&n<=12){p=n,D.splice(r,1);break}for(a=0;a<D.length;a++)if(n=parseInt(D[a]),!isNaN(n)&&1<=n&&n<=31){c=n,D.splice(a,1);break}if(f<0)for(a=D.length-1;0<=a;a--)if(n=parseInt(D[a]),!isNaN(n)){n<=99&&(n+=t.currentCentury),f=n,D.splice(a,1);break}}if(!h){if(u<0)for(a=0;a<D.length;a++)if(n=parseInt(D[a]),!isNaN(n)&&0<=n&&n<=23){u=n,D.splice(a,1);break}if(d<0)for(a=0;a<D.length;a++)if(n=parseInt(D[a]),!isNaN(n)&&0<=n&&n<=59){d=n,D.splice(a,1);break}}if(d<0&&u<0&&c<0&&p<0&&f<0)return null;d<0&&(d=0),u<0&&(u=0),c<0&&(c=1),p<0&&(p=1),f<0&&(f=(new Date).getFullYear()),o!==oe&&(o?12===u&&(u=0):u<12&&(u+=12));e=new Date(f,p-1,c,u,d);return e.getMonth()===p-1&&e.getFullYear()===f||(e=new Date(f,p,0,u,d)),isNaN(e.getTime())?null:e}},onBeforeChange:function(e,t,a){return!0},onChange:function(e,t,a){},onShow:function(){},onVisible:function(){},onHide:function(){},onHidden:function(){},onSelect:function(e,t){},isDisabled:function(e,t){return!1},selector:{popup:".ui.popup",input:"input",activator:"input",append:".inline.field,.inline.fields"},regExp:{dateWords:/[^A-Za-z\u00C0-\u024F]+/g,dateNumbers:/[^\d:]+/g},error:{popup:"UI Popup, a required component is not included in this page",method:"The method you called is not defined."},className:{calendar:"calendar",active:"active",popup:"ui popup",grid:"ui equal width grid",column:"column",table:"ui celled center aligned unstackable table",inverted:"inverted",prev:"prev link",next:"next link",prevIcon:"chevron left icon",nextIcon:"chevron right icon",link:"link",cell:"link",disabledCell:"disabled",weekCell:"disabled",adjacentCell:"adjacent",activeCell:"active",rangeCell:"range",focusCell:"focus",todayCell:"today",today:"today link",disabled:"disabled"},metadata:{date:"date",focusDate:"focusDate",startDate:"startDate",endDate:"endDate",minDate:"minDate",maxDate:"maxDate",mode:"mode",type:"type",monthOffset:"monthOffset",message:"message",class:"class",inverted:"inverted",variation:"variation",position:"position",month:"month",year:"year"},eventClass:"blue"}}(jQuery,window,document);