/*! calendar - v1.2 - 2014-02-17 2:45:51 PM * Copyright (c) 2014 昂天; Licensed */ KISSY.add("gallery/calendar/1.2/datetools",function(a){var b=/\d+/g;return{parse:function(a){return a=a.match(b),a?new Date(a[0],a[1]-1,a[2]):null},stringify:function(b){return a.isDate(b)?b.getFullYear()+"-"+this.filled(1*b.getMonth()+1)+"-"+this.filled(b.getDate()):null},siblings:function(a,c){return a=a.match(b),this.stringify(new Date(a[0],a[1]-1,1*a[2]+1*c))},siblingsMonth:function(a,b){return new Date(a.getFullYear(),1*a.getMonth()+b)},differ:function(a,b){return parseInt(Math.abs(this.parse(a)-this.parse(b))/24/60/60/1e3)},week:function(a){return"\u661f\u671f"+["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"][this.parse(a).getDay()]},isDate:function(a){var c=/^((19|2[01])\d{2})-(0?[1-9]|1[012])-(0?[1-9]|[12]\d|3[01])$/;return c.test(a)?1*this.parse(a).getMonth()+1==a.match(b)[1]:!1},filled:function(a){return String(a).replace(/^(\d)$/,"0$1")}}}),KISSY.add("gallery/calendar/1.2/holidays",function(a,b){var c={yuandan:{name:"\u5143\u65e6",dates:["2013-01-01","2014-01-01","2015-01-01","2016-01-01","2017-01-01","2018-01-01","2019-01-01","2020-01-01"]},chuxi:{name:"\u9664\u5915",dates:["2013-02-09","2014-01-30","2015-02-18","2016-02-07","2017-01-27","2018-02-15","2019-02-04","2020-01-24"]},chunjie:{name:"\u6625\u8282",dates:["2013-02-10","2014-01-31","2015-02-19","2016-02-08","2017-01-28","2018-02-16","2019-02-05","2020-01-25"]},yuanxiao:{name:"\u5143\u5bb5\u8282",dates:["2013-02-24","2014-02-14","2015-03-05","2016-02-22","2017-02-11","2018-03-02","2019-02-19","2020-02-08"]},qingming:{name:"\u6e05\u660e",dates:["2013-04-04","2014-04-05","2015-04-05","2016-04-04","2017-04-04","2018-04-05","2019-04-05","2020-04-04"]},wuyi:{name:"\u52b3\u52a8\u8282",dates:["2013-05-01","2014-05-01","2015-05-01","2016-05-01","2017-05-01","2018-05-01","2019-05-01","2020-05-01"]},duanwu:{name:"\u7aef\u5348\u8282",dates:["2013-06-12","2014-06-02","2015-06-20","2016-06-09","2017-05-30","2018-06-18","2019-06-07","2020-06-25"]},zhongqiu:{name:"\u4e2d\u79cb\u8282",dates:["2013-09-19","2014-09-08","2015-09-27","2016-09-15","2017-10-04","2018-09-24","2019-09-13"]},guoqing:{name:"\u56fd\u5e86\u8282",dates:["2013-10-01","2014-10-01","2015-10-01","2016-10-01","2017-10-01","2018-10-01","2019-10-01","2020-10-01"]}};return{dates:function(){var d,e={};return a.each(c,function(c){a.each(c.dates,function(a){for(d=0;7>d;d++)!function(a,b,c){e[a]=e[a]?b>2?c:e[a]:c}(b.siblings(a,d-3),d,c.name+(3!=d?(3>d?"\u524d":"\u540e")+Math.abs(d-3)+"\u5929":""))})}),e},getClassName:function(b){for(var d in c)if(a.inArray(b,c[d].dates))return d;return""}}},{requires:["./datetools"]}),KISSY.add("gallery/calendar/1.2/index",function(a,b,c,d,e){function f(){var a=this;f.superclass.constructor.apply(a,arguments),a._initializer()}var g=b.all,h=a.substitute,i=a.one(window),j=a.one(document);return a.extend(f,c,{_initializer:function(){var a=this;a.get("isHoliday")&&(a._dateMap=e.dates()),a._setUniqueTag(),a.renderUI(),a.boundingBox&&(a._minDateCache=a.get("minDate"),a._clickoutside=function(b){var c=g(b.target);c.hasClass(a._triggerNodeClassName)||c.hasClass(a._triggerNodeIcon)||c.parent("#"+a._calendarId)||!a._hide||a.hide()},a.get("container")||(a._hide=!0,a.hide()))},renderUI:function(){var b=this,c=a.one(b.get("container"));(c||g("body")).append(b._initCalendarHTML(b.get("date"))),b.boundingBox=a.one("#"+b._calendarId),b.boundingBox&&(b.boundingBox.css("position",c?"relative":"absolute"),b._dateBox=b.boundingBox.one(".date-box"),b._contentBox=b.boundingBox.one(".content-box"),b._messageBox=b.boundingBox.one(".message-box"),c||(b._inputWrap()._setDefaultValue(),b.boundingBox.css("top","-9999px")),b.set("boundingBox",b.boundingBox),b.bindUI()._fixSelectMask()._setWidth()._setBtnStates()._setDateStyle())},bindUI:function(){var a=this;return a.on("afterMessageChange",a._setMessage),a.boundingBox.delegate("click","."+a._delegateClickClassName,a._DELEGATE.click,a),a.boundingBox.delegate("change","."+a._delegateChangeClassName,a._DELEGATE.change,a),a.get("container")?a:(a.boundingBox.delegate("mouseenter mouseleave","a",a._DELEGATE.mouse,a),j.delegate("focusin","."+a._triggerNodeClassName,a._DELEGATE.focusin,a),j.delegate("keyup","."+a._triggerNodeClassName,a._DELEGATE.keyup,a),j.delegate("keydown","."+a._triggerNodeClassName,a._DELEGATE.keydown,a),j.delegate("click","."+a._triggerNodeIcon,a._DELEGATE.iconClick,a),j.delegate("click","."+a._triggerNodeClassName,a._DELEGATE.triggerNodeClick,a),i.on("resize",a._setPos,a),a)},detachEvent:function(){var a=this;a.detach("afterMessageChange",a._setMessage),a.boundingBox.detach(),j.undelegate("focusin","."+a._triggerNodeClassName,a._DELEGATE.focusin,a),j.undelegate("keyup","."+a._triggerNodeClassName,a._DELEGATE.keyup,a),j.undelegate("keydown","."+a._triggerNodeClassName,a._DELEGATE.keydown,a),j.undelegate("click","."+a._triggerNodeIcon,a._DELEGATE.iconClick,a),j.undelegate("click","."+a._triggerNodeClassName,a._DELEGATE.triggerNodeClick,a),i.detach("resize",a._setPos,a)},destroy:function(){var a=this;a.detachEvent(),a.boundingBox.remove()},syncUI:function(){var a=this;a.get("container")||!a.get("triggerNode")&&!a.get("finalTriggerNode")||a._inputWrap()},render:function(){var a=this;return a._dateBox.html(a._dateHTML()),a._setWidth()._setDateStyle()._setBtnStates(),a.fire("render"),a},nextMonth:function(){var a=this;return a.set("date",f.DATE.siblingsMonth(a.get("date"),1)),a.render(),a.fire("nextmonth"),a},prevMonth:function(){var a=this;return a.set("date",f.DATE.siblingsMonth(a.get("date"),-1)),a.render(),a.fire("prevmonth"),a},show:function(){var b=this;return b.boundingBox.show(),b._setDefaultDate().render(),b.fire("show",{node:b.currentNode}),a.later(function(){j.on("click",b._clickoutside,b)},100,!1),b},hide:function(){var a=this;return j.detach("click",a._clickoutside,a),a.boundingBox.hide(),a.hideMessage(),a.currentNode&&(a.currentNode.getDOMNode()._selected=null),a._cacheNode=null,a._hide=!0,a.fire("hide",{node:a.currentNode}),a},showMessage:function(){var b=this;return b.fire("showmessage"),a.later(function(){b._messageBox.addClass("visible")},5,!1),b},hideMessage:function(){var a=this;return a._messageBox.removeClass("visible"),a.fire("hidemessage"),a},getSelectedDate:function(){var a=this;return a.get("selectedDate")},getCurrentNode:function(){var a=this;return a.currentNode},getDateInfo:function(a){var b=f.DATE.stringify(f.DATE.parse(a)),c=-1,d=f.DATE.stringify(new Date),e=["\u4eca\u5929","\u660e\u5929","\u540e\u5929"];switch(!0){case b==d:c=0;break;case b==f.DATE.siblings(d,1):c=1;break;case b==f.DATE.siblings(d,2):c=2}return this._dateMap&&this._dateMap[b]||e[c]||f.DATE.week(b)},setDateInfo:function(b,c){var d=this;d._setDateInfo(b,a.one(c))},_getDateStatus:function(b){var c=this;return c.get("minDate")&&f.DATE.parse(b)f.DATE.parse(c.get("maxDate"))||a.inArray(b,c.get("disabled"))},_getHolidaysClass:function(a,b){var c=this;switch(!0){case b:case!c.get("isHoliday"):return"";case a==f.DATE.stringify(new Date):return"today";case!0:return e.getClassName(a)}},_setWidth:function(){var b=this,c=b.boundingBox,d=b._contentBox;return c.all(".inner, h4").css("width",c.one("table").outerWidth()),c.css("width",c.one(".inner").outerWidth()*b.get("count")+parseInt(d.css("borderLeftWidth"))+parseInt(d.css("borderRightWidth"))+parseInt(d.css("paddingLeft"))+parseInt(d.css("paddingRight"))),6==a.UA.ie&&c.one("iframe").css({width:c.outerWidth(),height:c.outerHeight()}),b},_setValue:function(b,c){var d=this;if(this.set("selectedDate",b),this.get("container"))return d;switch(d._isInput(d.currentNode)&&!c&&d.currentNode.val(b),!0){case d.boundingBox.hasClass("calendar-bounding-box-style"):d.set("endDate",b);break;case!d.boundingBox.hasClass("calendar-bounding-box-style")&&!!d.get("finalTriggerNode"):var e=a.one(d.get("finalTriggerNode"));d.set("startDate",b),e&&d.get("isAutoSwitch")&&e.getDOMNode().select();break;default:d.set("selectedDate",b)}return d},_setDateInfo:function(a,b){var c=this,b=b||c.currentNode;return!c.get("container")&&c.get("isDateInfo")&&c._isInput(b)&&b.prev().html(f.DATE.isDate(a)?c.getDateInfo(a):""),c},_setDefaultValue:function(){var b=this,c=a.one(b.get("triggerNode")),d=a.one(b.get("finalTriggerNode")),e=c&&c.val(),g=d&&d.val();return b.get("isDateInfo")&&(f.DATE.isDate(e)&&(b.set("startDate",e),b._setDateInfo(e,c)),f.DATE.isDate(g)&&(b.set("endDate",g),b._setDateInfo(g,d))),b},_setDefaultDate:function(){var a=this;if(a.get("container"))return a;var b=a.get("date"),c=a.get("startDate"),d=a.get("endDate"),e=a.boundingBox.hasClass("calendar-bounding-box-style");return a.get("startDate")&&a.set("minDate",e?c:a._minDateCache),e&&f.DATE.parse(c)>f.DATE.parse(d)?(a.set("date",c||b),a):(a.set("date",a.currentNode.val()||b),a)},_setDateStyle:function(){var a=this,b=a.get("startDate"),c=a.get("endDate");return a.boundingBox.all("td").each(function(d){var e=d.attr("data-date");if(d.hasClass("disabled"))return a;d.removeClass("start-date").removeClass("end-date").removeClass("selected-range").removeClass("selected-date"),e==b&&d.addClass("start-date"),e==c&&d.addClass("end-date"),e==a.get("selectedDate")&&d.addClass("selected-date");var g=f.DATE.parse(e),h=f.DATE.parse(b),i=f.DATE.parse(c);return!b||!c||h>i?a:void(g>h&&i>g&&d.addClass("selected-range"))}),a},_setBtnStates:function(){var a=this,b=+f.DATE.siblingsMonth(a.get("date"),0),c=a.get("maxDate"),d=a.get("minDate"),e=a.boundingBox.one(".prev-btn"),g=a.boundingBox.one(".next-btn"),h=a.boundingBox.one(".close-btn");return d&&(d=+f.DATE.parse(d)),c&&(c=+f.DATE.siblingsMonth(f.DATE.parse(c),1-a.get("count"))),e[b<=(d||Number.MIN_VALUE)?"addClass":"removeClass"]("prev-btn-disabled"),g[b>=(c||Number.MAX_VALUE)?"addClass":"removeClass"]("next-btn-disabled"),a.get("container")&&h.hide(),a},_setMessage:function(){var a=this;return a._messageBox.html(a.get("message")),a},_setUniqueTag:function(){var b=this,c=a.guid();return b._calendarId="calendar-"+c,b._delegateClickClassName="delegate-click-"+c,b._delegateChangeClassName="delegate-change-"+c,b._triggerNodeIcon="trigger-icon-"+c,b._triggerNodeClassName="trigger-node-"+c,b},_setPos:function(){var b=this,c=b.currentNode,d=b.boundingBox;return c?(a.later(function(){var b=c.offset().left,e=c.offset().top+c.outerHeight(),f=d.outerWidth(),g=d.outerHeight(),h=c.outerWidth(),i=c.outerHeight(),j=a.DOM.viewportWidth()-f,k=a.DOM.viewportHeight()-g;!function(a,c){e>k&&(e=0>a?e:a),b>j&&(b=0>c?b:c)}(e-g-i,b+h-f),d.css({top:e,left:b})},10,!1),b):b},_inputWrap:function(){var a=this,b=g(a.get("triggerNode")),c=g(a.get("finalTriggerNode")),d=a.get("isDateInfo")||a.get("isDateIcon");return b.each(function(b){if(d&&a._isInput(b)&&!b.parent(".calendar-input-wrap")){var c=g(f.INPUT_WRAP_TEMPLATE);b.after(c),c.append(h(f.START_DATE_TEMPLATE,{delegate_icon:a._triggerNodeIcon})).append(b),a.get("isDateIcon")||b.prev().removeClass("calendar-start-icon")}b.addClass(a._triggerNodeClassName),a._isInput(b)&&b.attr("autocomplete","off")}),c.each(function(b){if(d&&a._isInput(b)&&!b.parent(".calendar-input-wrap")){var c=g(f.INPUT_WRAP_TEMPLATE);b.after(c),c.append(h(f.END_DATE_TEMPLATE,{delegate_icon:a._triggerNodeIcon})).append(b),a.get("isDateIcon")||b.prev().removeClass("calendar-end-icon")}b.addClass(a._triggerNodeClassName),a._isInput(b)&&b.attr("autocomplete","off")}),a},_fixSelectMask:function(){var b=this;return 6==a.UA.ie&&b.boundingBox.append("