//>>built
require({cache:{"url:dojox/widget/Calendar/Calendar.html":'<div class="dojoxCalendar">\n    <div tabindex="0" class="dojoxCalendarContainer" style="visibility: visible;" dojoAttachPoint="container">\n\t\t<div style="display:none">\n\t\t\t<div dojoAttachPoint="previousYearLabelNode"></div>\n\t\t\t<div dojoAttachPoint="nextYearLabelNode"></div>\n\t\t\t<div dojoAttachPoint="monthLabelSpacer"></div>\n\t\t</div>\n        <div class="dojoxCalendarHeader">\n            <div>\n                <div class="dojoxCalendarDecrease" dojoAttachPoint="decrementMonth"></div>\n            </div>\n            <div class="">\n                <div class="dojoxCalendarIncrease" dojoAttachPoint="incrementMonth"></div>\n            </div>\n            <div class="dojoxCalendarTitle" dojoAttachPoint="header" dojoAttachEvent="onclick: onHeaderClick">\n            </div>\n        </div>\n        <div class="dojoxCalendarBody" dojoAttachPoint="containerNode"></div>\n        <div class="">\n            <div class="dojoxCalendarFooter" dojoAttachPoint="footer">                        \n            </div>\n        </div>\n    </div>\n</div>\n'}});
define("dojox/widget/_CalendarBase","dijit/_WidgetBase,dijit/_TemplatedMixin,dijit/_Container,dijit/_WidgetsInTemplateMixin,dijit/typematic,dojo/_base/declare,dojo/date,dojo/date/stamp,dojo/date/locale,dojo/dom-style,dojo/dom-class,dojo/_base/fx,dojo/on,dojo/_base/array,dojo/_base/lang,dojo/text!./Calendar/Calendar.html".split(","),function(k,l,m,n,o,p,j,h,q,d,i,g,r,s,e,t){return p("dojox.widget._CalendarBase",[k,l,m,n],{templateString:t,_views:null,useFx:!0,value:new Date,constraints:null,footerFormat:"medium",
constructor:function(){this._views=[];this.value=new Date},_setConstraintsAttr:function(a){if(a=this.constraints=a){if("string"==typeof a.min)a.min=h.fromISOString(a.min);if("string"==typeof a.max)a.max=h.fromISOString(a.max)}},postMixInProperties:function(){this.inherited(arguments);this.value=this.parseInitialValue(this.value)},parseInitialValue:function(a){if(!a||-1===a)return new Date;!a.getFullYear&&!isNaN(a)&&("string"==typeof this.value&&(a=parseInt(a)),a=this._makeDate(a));return a},_makeDate:function(a){return a},
postCreate:function(){this.displayMonth=new Date(this.get("value"));if(this._isInvalidDate(this.displayMonth))this.displayMonth=new Date;var a={parent:this,_getValueAttr:e.hitch(this,function(){return new Date(this._internalValue||this.value)}),_getDisplayMonthAttr:e.hitch(this,function(){return new Date(this.displayMonth)}),_getConstraintsAttr:e.hitch(this,function(){return this.constraints}),getLang:e.hitch(this,function(){return this.lang}),isDisabledDate:e.hitch(this,this.isDisabledDate),getClassForDate:e.hitch(this,
this.getClassForDate),addFx:this.useFx?e.hitch(this,this.addFx):function(){}};s.forEach(this._views,function(b){var b=(new b(a)).placeAt(this),c=b.getHeader();c&&(this.header.appendChild(c),d.set(c,"display","none"));d.set(b.domNode,"visibility","hidden");b.on("valueSelected",e.hitch(this,"_onDateSelected"));b.set("value",this.get("value"))},this);2>this._views.length&&d.set(this.header,"cursor","auto");this.inherited(arguments);this._children=this.getChildren();this._currentChild=0;this.footer.innerHTML=
"Today: "+q.format(new Date,{formatLength:this.footerFormat,selector:"date",locale:this.lang});r(this.footer,"click",e.hitch(this,"goToToday"));var b=this._children[0];d.set(b.domNode,"top","0px");d.set(b.domNode,"visibility","visible");b.getHeader()&&d.set(b.getHeader(),"display","");i.toggle(this.container,"no-header",!b.useHeader);b.onDisplay();var c=this,b=function(a,b,d){o.addMouseListener(c[a],c,function(a){0<=a&&c._adjustDisplay(b,d)},0.8,500)};b("incrementMonth","month",1);b("decrementMonth",
"month",-1);this._updateTitleStyle()},addFx:function(){},_isInvalidDate:function(a){return!a||isNaN(a)||"object"!=typeof a||a.toString()==this._invalidDate},_setValueAttr:function(a){a||(a=new Date);a.getFullYear||(a=h.fromISOString(a+""));if(this._isInvalidDate(a))return!1;if(!this.value||j.compare(a,this.value)){a=new Date(a);this.displayMonth=new Date(a);this._internalValue=a;if(!this.isDisabledDate(a,this.lang)&&0==this._currentChild)this.value=a,this.onChange(a);this._children&&0<this._children.length&&
this._children[this._currentChild].set("value",this.value);return!0}return!1},isDisabledDate:function(a){var b=this.constraints,c=j.compare;return b&&(b.min&&0<c(b.min,a,"date")||b.max&&0>c(b.max,a,"date"))},onValueSelected:function(){},_onDateSelected:function(a,b){this.displayMonth=a;this.set("value",a);this._transitionVert(-1)||(!b&&0!==b&&(b=this.get("value")),this.onValueSelected(b))},onChange:function(){},onHeaderClick:function(){this._transitionVert(1)},goToToday:function(){this.set("value",
new Date);this.onValueSelected(this.get("value"))},_transitionVert:function(a){var b=this._children[this._currentChild],c=this._children[this._currentChild+a];if(!c)return!1;d.set(c.domNode,"visibility","visible");var f=d.get(this.containerNode,"height");c.set("value",this.displayMonth);b.header&&d.set(b.header,"display","none");c.header&&d.set(c.header,"display","");d.set(c.domNode,"top",-1*f+"px");d.set(c.domNode,"visibility","visible");this._currentChild+=a;a*=f;d.set(c.domNode,"top",-1*a+"px");
a=g.animateProperty({node:b.domNode,properties:{top:a},onEnd:function(){d.set(b.domNode,"visibility","hidden")}});f=g.animateProperty({node:c.domNode,properties:{top:0},onEnd:function(){c.onDisplay()}});i.toggle(this.container,"no-header",!c.useHeader);a.play();f.play();b.onBeforeUnDisplay();c.onBeforeDisplay();this._updateTitleStyle();return!0},_updateTitleStyle:function(){i.toggle(this.header,"navToPanel",this._currentChild<this._children.length-1)},_slideTable:function(a,b,c){var a=a.domNode,f=
a.cloneNode(!0),e=d.get(a,"width");a.parentNode.appendChild(f);d.set(a,"left",e*b+"px");c();b=g.animateProperty({node:f,properties:{left:-1*e*b},duration:500,onEnd:function(){f.parentNode.removeChild(f)}});c=g.animateProperty({node:a,properties:{left:0},duration:500});b.play();c.play()},_addView:function(a){this._views.push(a)},getClassForDate:function(){},_adjustDisplay:function(a,b){var c=this._children[this._currentChild],d=this.displayMonth=c.adjustDate(this.displayMonth,b);this._slideTable(c,
b,function(){c.set("value",d)})}})});