/*! * Angular Datepicker v0.2.10 * * Released by 720kb.net under the MIT license * www.opensource.org/licenses/MIT * * 2015-09-02 */ !function(a){"use strict";a.module("720kb.datepicker",[]).directive("datepicker",["$window","$compile","$locale","$filter","$interpolate",function(b,c,d,e,f){var g=864e5;return{restrict:"AEC",scope:{dateSet:"@",dateMinLimit:"@",dateMaxLimit:"@",dateMonthTitle:"@",dateYearTitle:"@",buttonNextTitle:"@",buttonPrevTitle:"@",dateDisabledDates:"@",dateSetHidden:"@"},link:function(h,i,j){h.dateMonthTitle=h.dateMonthTitle||"Select month",h.dateYearTitle=h.dateYearTitle||"Select year",h.buttonNextTitle=h.buttonNextTitle||"Next",h.buttonPrevTitle=h.buttonPrevTitle||"Prev";var k,l,m,n,o=j.selector,p=a.element(o?i[0].querySelector("."+o):i[0].children[0]),q='',r='',s=j.buttonPrev||q,t=j.buttonNext||r,u=j.dateFormat,v=h.$eval(j.dateDisabledDates),w=new Date,x=(e("date")(w,"d"),e("date")(w,"M")),y=(e("date")(w,"yyyy"),!1),z=!1,A=d.DATETIME_FORMATS,B='
{{d}}
{{px}}{{item}}{{nx}}
';B=B.replace(/{{/g,f.startSymbol()).replace(/}}/g,f.endSymbol()),h.$watch("dateSet",function(a){a&&(w=new Date(a),h.month=e("date")(w,"MMMM"),h.monthNumber=Number(e("date")(w,"MM")),h.day=Number(e("date")(w,"dd")),h.year=Number(e("date")(w,"yyyy")),h.setDaysInMonth(h.monthNumber,h.year),"true"!==h.dateSetHidden&&h.setInputValue())}),h.$watch("dateMinLimit",function(a){a&&(l=a)}),h.$watch("dateMaxLimit",function(a){a&&(m=a)}),h.month=e("date")(w,"MMMM"),h.monthNumber=Number(e("date")(w,"MM")),h.day=Number(e("date")(w,"dd")),h.dateMaxLimit?h.year=Number(e("date")(new Date(h.dateMaxLimit),"yyyy")):h.year=Number(e("date")(w,"yyyy")),h.months=A.MONTH,h.daysInString=["0","1","2","3","4","5","6"].map(function(a){return e("date")(new Date(new Date("06/08/2014").valueOf()+g*a),"EEE")}),p.after(c(a.element(B))(h)),k=i[0].querySelector("._720kb-datepicker-calendar"),p.bind("focus click",function(){z=!0,h.showCalendar()}),p.bind("focusout blur",function(){z=!1}),a.element(k).bind("mouseenter",function(){y=!0}),a.element(k).bind("mouseleave",function(){y=!1}),a.element(k).bind("focusin",function(){y=!0}),a.element(b).bind("click focus",function(){y||z||!k||h.hideCalendar()}),h.isMobile=function(){return navigator.userAgent&&(navigator.userAgent.match(/Android/i)||navigator.userAgent.match(/webOS/i)||navigator.userAgent.match(/iPhone/i)||navigator.userAgent.match(/iPad/i)||navigator.userAgent.match(/iPod/i)||navigator.userAgent.match(/BlackBerry/i)||navigator.userAgent.match(/Windows Phone/i))?!0:void 0},h.resetToMinDate=function(){h.month=e("date")(new Date(l),"MMMM"),h.monthNumber=Number(e("date")(new Date(l),"MM")),h.day=Number(e("date")(new Date(l),"dd")),h.year=Number(e("date")(new Date(l),"yyyy"))},h.resetToMaxDate=function(){h.month=e("date")(new Date(m),"MMMM"),h.monthNumber=Number(e("date")(new Date(m),"MM")),h.day=Number(e("date")(new Date(m),"dd")),h.year=Number(e("date")(new Date(m),"yyyy"))},h.nextMonth=function(){12===h.monthNumber?(h.monthNumber=1,h.nextYear()):h.monthNumber+=1,h.month=e("date")(new Date(h.year,h.monthNumber-1),"MMMM"),h.setDaysInMonth(h.monthNumber,h.year),m&&x>h.monthNumber&&(h.isSelectableMaxDate(h.year+"/"+h.monthNumber+"/"+h.day)||h.resetToMaxDate()),h.day=void 0},h.selectedMonthHandle=function(a){h.monthNumber=Number(e("date")(new Date("01 "+a+" 2000"),"MM")),h.setDaysInMonth(h.monthNumber,h.year),h.setInputValue()},h.prevMonth=function(){1===h.monthNumber?(h.monthNumber=12,h.prevYear()):h.monthNumber-=1,h.month=e("date")(new Date(h.year,h.monthNumber-1),"MMMM"),h.setDaysInMonth(h.monthNumber,h.year),l&&(h.isSelectableMinDate(h.year+"/"+h.monthNumber+"/"+h.day)||h.resetToMinDate()),h.day=void 0},h.setNewYear=function(a){if(h.day=void 0,m&&h.yearNumber(a)&&!h.isSelectableMinYear(a))return;h.year=Number(a),h.setDaysInMonth(h.monthNumber,h.year),h.paginateYears(a)},h.nextYear=function(){h.year=Number(h.year)+1},h.prevYear=function(){h.year=Number(h.year)-1},h.setInputValue=function(){if(!h.isSelectableMinDate(h.year+"/"+h.monthNumber+"/"+h.day)||!h.isSelectableMaxDate(h.year+"/"+h.monthNumber+"/"+h.day))return!1;var a=new Date(h.year+"/"+h.monthNumber+"/"+h.day);j.dateFormat?p.val(e("date")(a,u)):p.val(a),p.triggerHandler("input"),p.triggerHandler("change")},h.classHelper={add:function(a,b){if(!(a.className.indexOf(b)>-1)){var c=a.className.split(" ");c.push(b),a.className=c.join(" ")}},remove:function(a,b){var c,d;if(-1!==a.className.indexOf(b)){for(d=a.className.split(" "),c=0;c=c;c+=1)h.days.push(c);if(0!==i){for(e=i,f=1===Number(a)?12:a-1,c=1;c<=new Date(b,f,0).getDate();c+=1)k.push(c);h.prevMonthDays=k.slice(-e)}else h.prevMonthDays=[];if(6>j){for(d=6-j,c=1;d>=c;c+=1)l.push(c);h.nextMonthDays=l}else h.nextMonthDays=[]},h.setDatepickerDay=function(a){h.isSelectableDate(h.monthNumber,h.year,a)&&h.isSelectableMaxDate(h.year+"/"+h.monthNumber+"/"+a)&&h.isSelectableMinDate(h.year+"/"+h.monthNumber+"/"+a)&&(h.day=Number(a),h.setInputValue(),h.hideCalendar())},h.paginateYears=function(a){h.paginationYears=[];var b,c=[],d=10,e=10;for(h.isMobile()&&(d=50,e=50,h.dateMinLimit&&h.dateMaxLimit&&(a=new Date(h.dateMaxLimit).getFullYear(),d=a-new Date(h.dateMinLimit).getFullYear(),e=1)),b=d;b>0;b-=1)c.push(Number(a)-b);for(b=0;e>b;b+=1)c.push(Number(a)+b);m&&c&&c.length&&!h.isSelectableMaxYear(Number(c[c.length-1])+1)?h.paginationYearsNextDisabled=!0:h.paginationYearsNextDisabled=!1,l&&c&&c.length&&!h.isSelectableMinYear(Number(c[0])-1)?h.paginationYearsPrevDisabled=!0:h.paginationYearsPrevDisabled=!1,h.paginationYears=c},h.isSelectableDate=function(a,b,c){if(v&&v.length>0){var d=0;for(d;d<=v.length;d+=1)if(new Date(v[d]).getTime()===new Date(a+"/"+c+"/"+b).getTime())return!1}return!0},h.isSelectableMinDate=function(a){return l&&new Date(l)&&new Date(a).getTime()new Date(m).getTime()?!1:!0},h.isSelectableMaxYear=function(a){return m&&a>new Date(m).getFullYear()?!1:!0},h.isSelectableMinYear=function(a){return l&&a