//>>built
define("dijit/Calendar","dojo/_base/array dojo/date dojo/date/locale dojo/_base/declare dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/_base/kernel dojo/keys dojo/_base/lang dojo/on dojo/sniff ./CalendarLite ./_Widget ./_CssStateMixin ./_TemplatedMixin ./form/DropDownButton".split(" "),function(p,y,z,l,q,d,r,t,e,f,g,u,v,m,n,w,x){var h=l("dijit.Calendar",[v,m,n],{baseClass:"dijitCalendar",cssStateNodes:{decrementMonth:"dijitCalendarArrow",incrementMonth:"dijitCalendarArrow",previousYearLabelNode:"dijitCalendarPreviousYear",
nextYearLabelNode:"dijitCalendarNextYear"},setValue:function(a){t.deprecated("dijit.Calendar:setValue() is deprecated.  Use set('value', ...) instead.","","2.0");this.set("value",a)},_createMonthWidget:function(){return new h._MonthDropDownButton({id:this.id+"_mddb",tabIndex:-1,onMonthSelect:f.hitch(this,"_onMonthSelect"),lang:this.lang,dateLocaleModule:this.dateLocaleModule},this.monthNode)},postCreate:function(){this.inherited(arguments);this.own(g(this.domNode,"keydown",f.hitch(this,"_onKeyDown")),
g(this.dateRowsNode,"mouseover",f.hitch(this,"_onDayMouseOver")),g(this.dateRowsNode,"mouseout",f.hitch(this,"_onDayMouseOut")),g(this.dateRowsNode,"mousedown",f.hitch(this,"_onDayMouseDown")),g(this.dateRowsNode,"mouseup",f.hitch(this,"_onDayMouseUp")))},_onMonthSelect:function(a){var b=new this.dateClassObj(this.currentFocus);b.setDate(1);b.setMonth(a);a=this.dateModule.getDaysInMonth(b);var c=this.currentFocus.getDate();b.setDate(Math.min(c,a));this._setCurrentFocusAttr(b)},_onDayMouseOver:function(a){(a=
d.contains(a.target,"dijitCalendarDateLabel")?a.target.parentNode:a.target)&&(a.dijitDateValue&&!d.contains(a,"dijitCalendarDisabledDate")||a==this.previousYearLabelNode||a==this.nextYearLabelNode)&&(d.add(a,"dijitCalendarHoveredDate"),this._currentNode=a)},_onDayMouseOut:function(a){!this._currentNode||a.relatedTarget&&a.relatedTarget.parentNode==this._currentNode||(a="dijitCalendarHoveredDate",d.contains(this._currentNode,"dijitCalendarActiveDate")&&(a+=" dijitCalendarActiveDate"),d.remove(this._currentNode,
a),this._currentNode=null)},_onDayMouseDown:function(a){(a=a.target.parentNode)&&a.dijitDateValue&&!d.contains(a,"dijitCalendarDisabledDate")&&(d.add(a,"dijitCalendarActiveDate"),this._currentNode=a)},_onDayMouseUp:function(a){(a=a.target.parentNode)&&a.dijitDateValue&&d.remove(a,"dijitCalendarActiveDate")},handleKey:function(a){var b=-1,c=this.currentFocus;switch(a.keyCode){case e.RIGHT_ARROW:b=1;case e.LEFT_ARROW:var k="day";this.isLeftToRight()||(b*=-1);break;case e.DOWN_ARROW:b=1;case e.UP_ARROW:k=
"week";break;case e.PAGE_DOWN:b=1;case e.PAGE_UP:k=a.ctrlKey||a.altKey?"year":"month";break;case e.END:c=this.dateModule.add(c,"month",1),k="day";case e.HOME:c=new this.dateClassObj(c);c.setDate(1);break;default:return!0}k&&(c=this.dateModule.add(c,k,b));this._setCurrentFocusAttr(c);return!1},_onKeyDown:function(a){this.handleKey(a)||(a.stopPropagation(),a.preventDefault())},onValueSelected:function(){},onChange:function(a){this.onValueSelected(a)},getClassForDate:function(){}});h._MonthDropDownButton=
l("dijit.Calendar._MonthDropDownButton",x,{onMonthSelect:function(){},postCreate:function(){this.inherited(arguments);this.dropDown=new h._MonthDropDown({id:this.id+"_mdd",onChange:this.onMonthSelect})},_setMonthAttr:function(a){var b=this.dateLocaleModule.getNames("months","wide","standAlone",this.lang,a);this.dropDown.set("months",b);this.containerNode.innerHTML=(6==u("ie")?"":"\x3cdiv class\x3d'dijitSpacer'\x3e"+this.dropDown.domNode.innerHTML+"\x3c/div\x3e")+"\x3cdiv class\x3d'dijitCalendarMonthLabel dijitCalendarCurrentMonthLabel'\x3e"+
b[a.getMonth()]+"\x3c/div\x3e"}});h._MonthDropDown=l("dijit.Calendar._MonthDropDown",[m,w,n],{months:[],baseClass:"dijitCalendarMonthMenu dijitMenu",templateString:"\x3cdiv data-dojo-attach-event\x3d'ondijitclick:_onClick'\x3e\x3c/div\x3e",_setMonthsAttr:function(a){this.domNode.innerHTML="";p.forEach(a,function(b,c){r.create("div",{className:"dijitCalendarMonthLabel",month:c,innerHTML:b},this.domNode)._cssState="dijitCalendarMonthLabel"},this)},_onClick:function(a){this.onChange(q.get(a.target,"month"))},
onChange:function(){}});return h});