1(function(a){if(typeof define==="function"&&define.amd){define(["jquery","moment"],a)}else{if(typeof exports==="object"){a(require("jquery"),require("moment"))}else{a(jQuery,moment)}}}(function(c,e){var b="clndr";var a="<div class='clndr-controls'><div class='clndr-control-button'><span class='clndr-previous-button'>previous</span></div><div class='month'><%= month %> <%= year %></div><div class='clndr-control-button rightalign'><span class='clndr-next-button'>next</span></div></div><table class='clndr-table' border='0' cellspacing='0' cellpadding='0'><thead><tr class='header-days'><% for(var i = 0; i < daysOfTheWeek.length; i++) { %><td class='header-day'><%= daysOfTheWeek[i] %></td><% } %></tr></thead><tbody><% for(var i = 0; i < numberOfRows; i++){ %><tr><% for(var j = 0; j < 7; j++){ %><% var d = j + i * 7; %><td class='<%= days[d].classes %>'><div class='day-contents'><%= days[d].day %></div></td><% } %></tr><% } %></tbody></table>";var d={events:[],ready:null,extras:null,render:null,moment:null,weekOffset:0,constraints:null,forceSixRows:null,selectedDate:null,doneRendering:null,daysOfTheWeek:null,multiDayEvents:null,startWithMonth:null,dateParameter:"date",template:a,showAdjacentMonths:true,trackSelectedDate:false,adjacentDaysChangeMonth:false,ignoreInactiveDaysInSelection:null,lengthOfTime:{days:null,interval:1,months:null},clickEvents:{click:null,today:null,nextYear:null,nextMonth:null,nextInterval:null,previousYear:null,onYearChange:null,previousMonth:null,onMonthChange:null,previousInterval:null,onIntervalChange:null},targets:{day:"day",empty:"empty",nextButton:"clndr-next-button",todayButton:"clndr-today-button",previousButton:"clndr-previous-button",nextYearButton:"clndr-next-year-button",previousYearButton:"clndr-previous-year-button"},classes:{past:"past",today:"today",event:"event",inactive:"inactive",selected:"selected",lastMonth:"last-month",nextMonth:"next-month",adjacentMonth:"adjacent-month"},};function f(i,g){var j;var h;var k;this.element=i;this.options=c.extend(true,{},d,g);if(this.options.moment){e=this.options.moment}this.constraints={next:true,today:true,previous:true,nextYear:true,previousYear:true};if(this.options.events.length){if(this.options.multiDayEvents){this.options.events=this.addMultiDayMomentObjectsToEvents(this.options.events)}else{this.options.events=this.addMomentObjectToEvents(this.options.events)}}if(this.options.lengthOfTime.months||this.options.lengthOfTime.days){if(this.options.lengthOfTime.months){this.options.lengthOfTime.days=null;if(this.options.lengthOfTime.startDate){this.intervalStart=e(this.options.lengthOfTime.startDate).startOf("month")}else{if(this.options.startWithMonth){this.intervalStart=e(this.options.startWithMonth).startOf("month")}else{this.intervalStart=e().startOf("month")}}this.intervalEnd=e(this.intervalStart).add(this.options.lengthOfTime.months,"months").subtract(1,"days");this.month=this.intervalStart.clone()}else{if(this.options.lengthOfTime.days){if(this.options.lengthOfTime.startDate){this.intervalStart=e(this.options.lengthOfTime.startDate).startOf("day")}else{this.intervalStart=e().weekday(0).startOf("day")}this.intervalEnd=e(this.intervalStart).add(this.options.lengthOfTime.days-1,"days").endOf("day");this.month=this.intervalStart.clone()}}}else{this.month=e().startOf("month");this.intervalStart=e(this.month);this.intervalEnd=e(this.month).endOf("month")}if(this.options.startWithMonth){this.month=e(this.options.startWithMonth).startOf("month");this.intervalStart=e(this.month);this.intervalEnd=(this.options.lengthOfTime.days)?e(this.month).add(this.options.lengthOfTime.days-1,"days").endOf("day"):e(this.month).endOf("month")}if(this.options.constraints){if(this.options.constraints.startDate){k=e(this.options.constraints.startDate);if(this.options.lengthOfTime.days){if(this.intervalStart.isBefore(k,"week")){this.intervalStart=k.startOf("week")}j=this.intervalStart.diff(this.intervalEnd,"days");if(j<this.options.lengthOfTime.days||this.intervalEnd.isBefore(this.intervalStart)){this.intervalEnd=e(this.intervalStart).add(this.options.lengthOfTime.days-1,"days").endOf("day");this.month=this.intervalStart.clone()}}else{if(this.intervalStart.isBefore(k,"month")){this.intervalStart.set("month",k.month()).set("year",k.year());this.month.set("month",k.month()).set("year",k.year())}if(this.intervalEnd.isBefore(k,"month")){this.intervalEnd.set("month",k.month()).set("year",k.year())}}}if(this.options.constraints.endDate){h=e(this.options.constraints.endDate);if(this.options.lengthOfTime.days){if(this.intervalStart.isAfter(h,"week")){this.intervalStart=e(h).endOf("week").subtract(this.options.lengthOfTime.days-1,"days").startOf("day");this.intervalEnd=e(h).endOf("week");this.month=this.intervalStart.clone()}}else{if(this.intervalEnd.isAfter(h,"month")){this.intervalEnd.set("month",h.month()).set("year",h.year());this.month.set("month",h.month()).set("year",h.year())}if(this.intervalStart.isAfter(h,"month")){this.intervalStart.set("month",h.month()).set("year",h.year())}}}}this._defaults=d;this._name=b;this.init()}f.prototype.init=function(){this.daysOfTheWeek=this.options.daysOfTheWeek||[];if(!this.options.daysOfTheWeek){this.daysOfTheWeek=[];for(var g=0;g<7;g++){this.daysOfTheWeek.push(e().weekday(g).format("dd").charAt(0))}}if(this.options.weekOffset){this.daysOfTheWeek=this.shiftWeekdayLabels(this.options.weekOffset)}if(!c.isFunction(this.options.render)){this.options.render=null;if(typeof _==="undefined"){throw new Error("Underscore was not found. Please include underscore.js OR provide a custom render function.")}else{this.compiledClndrTemplate=_.template(this.options.template)}}c(this.element).html("<div class='clndr'></div>");this.calendarContainer=c(".clndr",this.element);this.bindEvents();this.render();if(this.options.ready){this.options.ready.apply(this,[])}};f.prototype.shiftWeekdayLabels=function(h){var j=this.daysOfTheWeek;for(var g=0;g<h;g++){j.push(j.shift())}return j};f.prototype.createDaysObject=function(j,p){var k=[],m=j.clone(),n=p.diff(j,"days"),q,h,l,g,t,r;this._currentIntervalStart=j.clone();this.eventsLastMonth=[];this.eventsNextMonth=[];this.eventsThisInterval=[];if(this.options.events.length){this.eventsThisInterval=c(this.options.events).filter(function(){var i=this._clndrStartDateObject.isAfter(p),u=this._clndrEndDateObject.isBefore(j);if(u||i){return false}else{return true}}).toArray();if(this.options.showAdjacentMonths){q=j.clone().subtract(1,"months").startOf("month");h=q.clone().endOf("month");l=p.clone().add(1,"months").startOf("month");g=l.clone().endOf("month");this.eventsLastMonth=c(this.options.events).filter(function(){var u=this._clndrEndDateObject.isBefore(q);var i=this._clndrStartDateObject.isAfter(h);if(u||i){return false}else{return true}}).toArray();this.eventsNextMonth=c(this.options.events).filter(function(){var u=this._clndrEndDateObject.isBefore(l);var i=this._clndrStartDateObject.isAfter(g);if(u||i){return false}else{return true}}).toArray()}}if(!this.options.lengthOfTime.days){t=m.weekday()-this.options.weekOffset;if(t<0){t+=7}if(this.options.showAdjacentMonths){for(var o=1;o<=t;o++){var s=e([j.year(),j.month(),o]).subtract(t,"days");k.push(this.createDayObject(s,this.eventsLastMonth))}}else{for(var o=0;o<t;o++){k.push(this.calendarDay({classes:this.options.targets.empty+" "+this.options.classes.lastMonth}))}}}r=j.clone();while(r.isBefore(p)||r.isSame(p,"day")){k.push(this.createDayObject(r.clone(),this.eventsThisInterval));r.add(1,"days")}if(!this.options.lengthOfTime.days){while(k.length%7!==0){if(this.options.showAdjacentMonths){k.push(this.createDayObject(r.clone(),this.eventsNextMonth))}else{k.push(this.calendarDay({classes:this.options.targets.empty+" "+this.options.classes.nextMonth}))}r.add(1,"days")}}if(this.options.forceSixRows&&k.length!==42){while(k.length<42){if(this.options.showAdjacentMonths){k.push(this.createDayObject(r.clone(),this.eventsNextMonth));r.add(1,"days")}else{k.push(this.calendarDay({classes:this.options.targets.empty+" "+this.options.classes.nextMonth}))}}}return k};f.prototype.createDayObject=function(r,o){var n=0,t=this,h=e(),q=[],m="",p={isToday:false,isInactive:false,isAdjacentMonth:false},i,k,s;if(!r.isValid()&&r.hasOwnProperty("_d")&&r._d!=undefined){r=e(r._d)}for(n;n<o.length;n++){var g=o[n]._clndrStartDateObject,l=o[n]._clndrEndDateObject;if((r.isSame(g,"day")||r.isAfter(g,"day"))&&(r.isSame(l,"day")||r.isBefore(l,"day"))){q.push(o[n])}}if(h.format("YYYY-MM-DD")==r.format("YYYY-MM-DD")){m+=(" "+this.options.classes.today);p.isToday=true}if(r.isBefore(h,"day")){m+=(" "+this.options.classes.past)}if(q.length){m+=(" "+this.options.classes.event)}if(!this.options.lengthOfTime.days){if(this._currentIntervalStart.month()>r.month()){m+=(" "+this.options.classes.adjacentMonth);p.isAdjacentMonth=true;this._currentIntervalStart.year()===r.year()?m+=(" "+this.options.classes.lastMonth):m+=(" "+this.options.classes.nextMonth)}else{if(this._currentIntervalStart.month()<r.month()){m+=(" "+this.options.classes.adjacentMonth);p.isAdjacentMonth=true;this._currentIntervalStart.year()===r.year()?m+=(" "+this.options.classes.nextMonth):m+=(" "+this.options.classes.lastMonth)}}}if(this.options.constraints){k=e(this.options.constraints.endDate);i=e(this.options.constraints.startDate);if(this.options.constraints.startDate&&r.isBefore(i)){m+=(" "+this.options.classes.inactive);p.isInactive=true}if(this.options.constraints.endDate&&r.isAfter(k)){m+=(" "+this.options.classes.inactive);p.isInactive=true}}if(!r.isValid()&&r.hasOwnProperty("_d")&&r._d!=undefined){r=e(r._d)}s=e(this.options.selectedDate);if(this.options.selectedDate&&r.isSame(s,"day")){m+=(" "+this.options.classes.selected)}
1m+=" calendar-day-"+r.format("YYYY-MM-DD");m+=" calendar-dow-"+r.weekday();return this.calendarDay({date:r,day:r.date(),events:q,properties:p,classes:this.options.targets.day+m})};f.prototype.render=function(){var o={},m=null,h=null,g=this.intervalEnd.clone().add(1,"years"),r=this.intervalStart.clone().subtract(1,"years"),u,j,s,p,l;this.calendarContainer.empty();if(this.options.lengthOfTime.days){u=this.createDaysObject(this.intervalStart.clone(),this.intervalEnd.clone());o={days:u,months:[],year:null,month:null,eventsLastMonth:[],eventsNextMonth:[],eventsThisMonth:[],extras:this.options.extras,daysOfTheWeek:this.daysOfTheWeek,intervalEnd:this.intervalEnd.clone(),numberOfRows:Math.ceil(u.length/7),intervalStart:this.intervalStart.clone(),eventsThisInterval:this.eventsThisInterval}}else{if(this.options.lengthOfTime.months){j=[];l=0;p=[];for(n=0;n<this.options.lengthOfTime.months;n++){var k=this.intervalStart.clone().add(n,"months");var t=k.clone().endOf("month");var u=this.createDaysObject(k,t);p.push(this.eventsThisInterval);j.push({days:u,month:k})}for(n=0;n<j.length;n++){l+=Math.ceil(j[n].days.length/7)}o={days:[],year:null,month:null,months:j,eventsThisMonth:[],numberOfRows:l,extras:this.options.extras,intervalEnd:this.intervalEnd,intervalStart:this.intervalStart,daysOfTheWeek:this.daysOfTheWeek,eventsLastMonth:this.eventsLastMonth,eventsNextMonth:this.eventsNextMonth,eventsThisInterval:p,}}else{u=this.createDaysObject(this.month.clone().startOf("month"),this.month.clone().endOf("month"));s=this.month;o={days:u,months:[],intervalEnd:null,intervalStart:null,year:this.month.year(),eventsThisInterval:null,extras:this.options.extras,month:this.month.format("MMMM"),daysOfTheWeek:this.daysOfTheWeek,eventsLastMonth:this.eventsLastMonth,eventsNextMonth:this.eventsNextMonth,numberOfRows:Math.ceil(u.length/7),eventsThisMonth:this.eventsThisInterval}}}if(!this.options.render){this.calendarContainer.html(this.compiledClndrTemplate(o))}else{this.calendarContainer.html(this.options.render.apply(this,[o]))}if(this.options.constraints){for(var q in this.options.targets){if(q!=this.options.targets.day){this.element.find("."+this.options.targets[q]).toggleClass(this.options.classes.inactive,false)}}for(var n in this.constraints){this.constraints[n]=true}if(this.options.constraints.startDate){h=e(this.options.constraints.startDate)}if(this.options.constraints.endDate){m=e(this.options.constraints.endDate)}if(h&&(h.isAfter(this.intervalStart)||h.isSame(this.intervalStart,"day"))){this.element.find("."+this.options.targets.previousButton).toggleClass(this.options.classes.inactive,true);this.constraints.previous=!this.constraints.previous}if(m&&(m.isBefore(this.intervalEnd)||m.isSame(this.intervalEnd,"day"))){this.element.find("."+this.options.targets.nextButton).toggleClass(this.options.classes.inactive,true);this.constraints.next=!this.constraints.next}if(h&&h.isAfter(r)){this.element.find("."+this.options.targets.previousYearButton).toggleClass(this.options.classes.inactive,true);this.constraints.previousYear=!this.constraints.previousYear}if(m&&m.isBefore(g)){this.element.find("."+this.options.targets.nextYearButton).toggleClass(this.options.classes.inactive,true);this.constraints.nextYear=!this.constraints.nextYear}if((h&&h.isAfter(e(),"month"))||(m&&m.isBefore(e(),"month"))){this.element.find("."+this.options.targets.today).toggleClass(this.options.classes.inactive,true);this.constraints.today=!this.constraints.today}}if(this.options.doneRendering){this.options.doneRendering.apply(this,[])}};f.prototype.bindEvents=function(){var l={},i=this,m=c(this.element),g=this.options.targets,k=i.options.classes,j=(this.options.useTouchEvents===true)?"touchstart":"click",h=j+".clndr";m.off(h,"."+g.day).off(h,"."+g.empty).off(h,"."+g.nextButton).off(h,"."+g.todayButton).off(h,"."+g.previousButton).off(h,"."+g.nextYearButton).off(h,"."+g.previousYearButton);m.on(h,"."+g.day,function(o){var p,n=c(o.currentTarget);if(i.options.clickEvents.click){p=i.buildTargetObject(o.currentTarget,true);i.options.clickEvents.click.apply(i,[p])}
1if(i.options.adjacentDaysChangeMonth){if(n.is("."+k.lastMonth)){i.backActionWithContext(i)}else{if(n.is("."+k.nextMonth)){i.forwardActionWithContext(i)}}}if(i.options.trackSelectedDate){if(i.options.ignoreInactiveDaysInSelection&&n.hasClass(k.inactive)){return}i.options.selectedDate=i.getTargetDateString(o.currentTarget);m.find("."+k.selected).removeClass(k.selected);n.addClass(k.selected)}});m.on(h,"."+g.empty,function(o){var p,n=c(o.currentTarget);if(i.options.clickEvents.click){p=i.buildTargetObject(o.currentTarget,false);i.options.clickEvents.click.apply(i,[p])}if(i.options.adjacentDaysChangeMonth){if(n.is("."+k.lastMonth)){i.backActionWithContext(i)}else{if(n.is("."+k.nextMonth)){i.forwardActionWithContext(i)}}}});l={context:this};m.on(h,"."+g.todayButton,l,this.todayAction).on(h,"."+g.nextButton,l,this.forwardAction).on(h,"."+g.previousButton,l,this.backAction).on(h,"."+g.nextYearButton,l,this.nextYearAction).on(h,"."+g.previousYearButton,l,this.previousYearAction)};f.prototype.buildTargetObject=function(k,j){var i={date:null,events:[],element:k};var g,h;if(j){g=this.getTargetDateString(k);i.date=(g)?e(g):null;if(this.options.events){if(this.options.multiDayEvents){h=function(){var l=i.date.isSame(this._clndrStartDateObject,"day");var o=i.date.isAfter(this._clndrStartDateObject,"day");var n=i.date.isSame(this._clndrEndDateObject,"day");var m=i.date.isBefore(this._clndrEndDateObject,"day");return(l||o)&&(n||m)}}else{h=function(){var l=this._clndrStartDateObject.format("YYYY-MM-DD");return l==g}}i.events=c.makeArray(c(this.options.events).filter(h))}}return i};f.prototype.getTargetDateString=function(h){var g=h.className.indexOf("calendar-day-");if(g!==-1){return h.className.substring(g+13,g+23)}return null};f.prototype.triggerEvents=function(v,u){var q=v.options.lengthOfTime,j=v.options.clickEvents,n={end:v.intervalEnd,start:v.intervalStart},k=[e(v.intervalStart),e(v.intervalEnd)],g=[e(v.month)],s,p,m,o,l,h,i,t,r;o=n.start.isAfter(u.start)&&(Math.abs(n.start.month()-u.start.month())==1||u.start.month()===11&&n.start.month()===0);l=n.start.isBefore(u.start)&&(Math.abs(u.start.month()-n.start.month())==1||u.start.month()===0&&n.start.month()===11);h=n.start.month()!==u.start.month()||n.start.year()!==u.start.year();s=n.start.year()-u.start.year()===1||n.end.year()-u.end.year()===1;p=u.start.year()-n.start.year()===1||u.end.year()-n.end.year()===1;m=n.start.year()!==u.start.year();if(q.days||q.months){i=n.start.isAfter(u.start);t=n.start.isBefore(u.start);r=i||t;if(i&&j.nextInterval){j.nextInterval.apply(v,k)}if(t&&j.previousInterval){j.previousInterval.apply(v,k)}if(r&&j.onIntervalChange){j.onIntervalChange.apply(v,k)}}else{if(o&&j.nextMonth){j.nextMonth.apply(v,g)}if(l&&j.previousMonth){j.previousMonth.apply(v,g)}if(h&&j.onMonthChange){j.onMonthChange.apply(v,g)}if(s&&j.nextYear){j.nextYear.apply(v,g)}if(p&&j.previousYear){j.previousYear.apply(v,g)}if(m&&j.onYearChange){j.onYearChange.apply(v,g)}}};f.prototype.back=function(h){var k=null,g=(arguments.length>1)?arguments[1]:this,i=g.options.lengthOfTime,j={withCallbacks:false},l={end:g.intervalEnd.clone(),start:g.intervalStart.clone()};h=c.extend(true,{},j,h);if(!g.constraints.previous){return g}if(!i.days){g.intervalStart.subtract(i.interval,"months").startOf("month");g.intervalEnd=g.intervalStart.clone().add(i.months||i.interval,"months").subtract(1,"days").endOf("month");g.month=g.intervalStart.clone()}else{g.intervalStart.subtract(i.interval,"days").startOf("day");g.intervalEnd=g.intervalStart.clone().add(i.days-1,"days").endOf("day");g.month=g.intervalStart.clone()}g.render();if(h.withCallbacks){g.triggerEvents(g,l)}return g};f.prototype.backAction=function(h){var g=h.data.context;g.backActionWithContext(g)};f.prototype.backActionWithContext=function(g){g.back({withCallbacks:true},g)};f.prototype.previous=function(g){return this.back(g)};f.prototype.forward=function(h){var g=(arguments.length>1)?arguments[1]:this,i=g.options.lengthOfTime,j={withCallbacks:false},k={end:g.intervalEnd.clone(),start:g.intervalStart.clone()};h=c.extend(true,{},j,h);if(!g.constraints.next){return g}if(g.options.lengthOfTime.days){g.intervalStart.add(i.interval,"days").startOf("day");g.intervalEnd=g.intervalStart.clone().add(i.days-1,"days").endOf("day");g.month=g.intervalStart.clone()}else{g.intervalStart.add(i.interval,"months").startOf("month");g.intervalEnd=g.intervalStart.clone().add(i.months||i.interval,"months").subtract(1,"days").endOf("month");g.month=g.intervalStart.clone()}g.render();if(h.withCallbacks){g.triggerEvents(g,k)}return g};f.prototype.forwardAction=function(h){var g=h.data.context;g.forwardActionWithContext(g)};f.prototype.forwardActionWithContext=function(g){g.forward({withCallbacks:true},g)};f.prototype.next=function(g){return this.forward(g)};f.prototype.previousYear=function(h){var g=(arguments.length>1)?arguments[1]:this,i={withCallbacks:false},j={end:g.intervalEnd.clone(),start:g.intervalStart.clone()};h=c.extend(true,{},i,h);if(!g.constraints.previousYear){return g}g.month.subtract(1,"year");g.intervalStart.subtract(1,"year");g.intervalEnd.subtract(1,"year");g.render();if(h.withCallbacks){g.triggerEvents(g,j)}return g};f.prototype.previousYearAction=function(h){var g=h.data.context;g.previousYear({withCallbacks:true},g)};f.prototype.nextYear=function(h){var g=(arguments.length>1)?arguments[1]:this,i={withCallbacks:false},j={end:g.intervalEnd.clone(),start:g.intervalStart.clone()};h=c.extend(true,{},i,h);if(!g.constraints.nextYear){return g}g.month.add(1,"year");g.intervalStart.add(1,"year");g.intervalEnd.add(1,"year");g.render();if(h.withCallbacks){g.triggerEvents(g,j)}return g};f.prototype.nextYearAction=function(h){var g=h.data.context;g.nextYear({withCallbacks:true},g)};f.prototype.today=function(h){var g=(arguments.length>1)?arguments[1]:this,i=g.options.lengthOfTime,j={withCallbacks:false},k={end:g.intervalEnd.clone(),start:g.intervalStart.clone()};h=c.extend(true,{},j,h);g.month=e().startOf("month");if(i.days){if(i.startDate){g.intervalStart=e().weekday(i.startDate.weekday()).startOf("day")}else{g.intervalStart=e().weekday(0).startOf("day")}g.intervalEnd=g.intervalStart.clone().add(i.days-1,"days").endOf("day")}else{g.intervalStart=e().startOf("month");g.intervalEnd=g.intervalStart.clone().add(i.months||i.interval,"months").subtract(1,"days").endOf("month")}if(!g.intervalStart.isSame(k.start)||!g.intervalEnd.isSame(k.end)){g.render()}if(h.withCallbacks){if(g.options.clickEvents.today){g.options.clickEvents.today.apply(g,[e(g.month)])}g.triggerEvents(g,k)}};f.prototype.todayAction=function(h){var g=h.data.context;g.today({withCallbacks:true},g)};f.prototype.setMonth=function(i,g){var h=this.options.lengthOfTime,j={end:this.intervalEnd.clone(),start:this.intervalStart.clone()};if(h.days||h.months){console.log("You are using a custom date interval. Use Clndr.setIntervalStart(startDate) instead.");return this}this.month.month(i);this.intervalStart=this.month.clone().startOf("month");this.intervalEnd=this.intervalStart.clone().endOf("month");this.render();if(g&&g.withCallbacks){this.triggerEvents(this,j)}return this};f.prototype.setYear=function(h,g){var i={end:this.intervalEnd.clone(),start:this.intervalStart.clone()};this.month.year(h);this.intervalEnd.year(h);this.intervalStart.year(h);this.render();if(g&&g.withCallbacks){this.triggerEvents(this,i)}return this};f.prototype.setIntervalStart=function(g,h){var i=this.options.lengthOfTime,j={end:this.intervalEnd.clone(),start:this.intervalStart.clone()};if(!i.days&&!i.months){console.log("You are using a custom date interval. Use Clndr.setIntervalStart(startDate) instead.");return this}if(i.days){this.intervalStart=e(g).startOf("day");this.intervalEnd=this.intervalStart.clone().add(i-1,"days").endOf("day")}else{this.intervalStart=e(g).startOf("month");this.intervalEnd=this.intervalStart.clone().add(i.months||i.interval,"months").subtract(1,"days").endOf("month")}this.month=this.intervalStart.clone();this.render();if(h&&h.withCallbacks){this.triggerEvents(this,j)}return this};f.prototype.setExtras=function(g){this.options.extras=g;this.render();return this};f.prototype.setEvents=function(g){if(this.options.multiDayEvents){this.options.events=this.addMultiDayMomentObjectsToEvents(g)}else{this.options.events=this.addMomentObjectToEvents(g)}this.render();return this};f.prototype.addEvents=function(h){var g=(arguments.length>1)?arguments[1]:true;if(this.options.multiDayEvents){this.options.events=c.merge(this.options.events,this.addMultiDayMomentObjectsToEvents(h))}else{this.options.events=c.merge(this.options.events,this.addMomentObjectToEvents(h))}if(g){this.render()}return this};f.prototype.removeEvents=function(h){for(var g=this.options.events.length-1;g>=0;g--){if(h(this.options.events[g])==true){this.options.events.splice(g,1)}}this.render();return this};f.prototype.addMomentObjectToEvents=function(j){var h=0,g=this;for(h;h<j.length;h++){j[h]._clndrStartDateObject=e(j[h][g.options.dateParameter]);j[h]._clndrEndDateObject=e(j[h][g.options.dateParameter])}return j};f.prototype.addMultiDayMomentObjectsToEvents=function(l){var k=0,j=this,h=j.options.multiDayEvents;for(k;k<l.length;k++){var g=l[k][h.endDate],m=l[k][h.startDate];if(!g&&!m){l[k]._clndrEndDateObject=e(l[k][h.singleDay]);l[k]._clndrStartDateObject=e(l[k][h.singleDay])}else{l[k]._clndrEndDateObject=e(g||m);l[k]._clndrStartDateObject=e(m||g)}}return l};f.prototype.calendarDay=function(g){var h={day:"",date:null,events:[],classes:this.options.targets.empty};return c.extend({},h,g)};f.prototype.destroy=function(){var g=c(this.calendarContainer);g.parent().data("plugin_clndr",null);this.options=d;g.empty().remove();this.element=null};c.fn.clndr=function(g){var h;if(this.length>1){throw new Error("CLNDR does not support multiple elements yet. Make sure your clndr selector returns only one element.")}if(!this.length){throw new Error("CLNDR cannot be instantiated on an empty selector.")}if(!this.data("plugin_clndr")){h=new f(this,g);this.data("plugin_clndr",h);return h}return this.data("plugin_clndr")}}));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.