279N/A _keyEvents: [],
279N/A _highlightedDateNode: null,
447N/A _lastSelectedDate: null,
279N/A initializer : function () {
447N/A this._keyEvents = [];
2677N/A this._highlightedDateNode = null;
2677N/A this._lastSelectedDate = null;
1506N/A _bindCalendarEvents : function () {
3817N/A this._unhighlightCurrentDateNode();
_unhighlightCurrentDateNode : function () {
if (allHilitedNodes) {
this._unhighlightCurrentDateNode();
this._unhighlightCurrentDateNode();
this._highlightedDateNode = null;
switch(keyCode) {
case KEY_DOWN:
case KEY_UP:
case KEY_LEFT:
case KEY_RIGHT:
if (this._highlightedDateNode) {
this._clearSelection(true);
if (!curDate) {
if (clickedCellIsDay) {
if (!clickedCellIsSelected) {
this._clearSelection(true);
if (clickedCellIsDay) {
if (clickedCellIsSelected) {
this._clearSelection(true);
else if (((os == 'macintosh' && ev.metaKey) || (os != 'macintosh' && ev.ctrlKey)) && !ev.shiftKey) {
if (clickedCellIsSelected) {
this._lastSelectedDate = null;
if (this._lastSelectedDate) {
if (this._lastSelectedDate) {
this._clearSelection(true);
this._clearSelection(true);
if (clickedCellIsDay) {
subtractMonth : function (e) {
e.halt();
subtractYear : function (e) {
e.halt();
addMonth : function (e) {
e.halt();
addYear : function (e) {
e.halt();
ATTRS: {
date: {
value: new Date(),
lazyAdd: false,
return newDate;
return minDate;
return actualMaxDate;
minimumDate: {
value: null,
if (val) {
return newMinDate;
maximumDate: {
value: null,
if (val) {
return newMaxDate;
return val;