public/javascripts/yui/calendar/calendar.js
function(date, iMonth) {
        // Bug in Safari 1.3, 2.0 (WebKit build < 420), Date.setMonth does not work consistently if iMonth is not 0-11
        if (YAHOO.env.ua.webkit && YAHOO.env.ua.webkit < 420 && (iMonth < 0 || iMonth > 11)) {
            var newDate = DateMath.add(date, DateMath.MONTH, iMonth-date.getMonth());
            date.setTime(newDate.getTime());
        } else {
            date.setMonth(iMonth);
        }
    }
function(date, iMonth) {
        // Bug in Safari 1.3, 2.0 (WebKit build < 420), Date.setMonth does not work consistently if iMonth is not 0-11
        if (YAHOO.env.ua.webkit && YAHOO.env.ua.webkit < 420 && (iMonth < 0 || iMonth > 11)) {
            var newDate = DateMath.add(date, DateMath.MONTH, iMonth-date.getMonth());
            date.setTime(newDate.getTime());
        } else {
            date.setMonth(iMonth);
        }
    }
function ( date , iMonth ) { // Bug in Safari 1.3, 2.0 (WebKit build < 420), Date.setMonth does not work consistently if iMonth is not 0-11 if ( YAHOO . env . ua . webkit && YAHOO . env . ua . webkit < 420 && ( iMonth < 0 || iMonth > 11 ) ) { var newDate = DateMath . add ( date , DateMath . MONTH , iMonth - date . getMonth ( ) ) ; date . setTime ( newDate . getTime ( ) ) ; } else { date . setMonth ( iMonth ) ; } }
Sets the month on a Date object, taking into account year rollover if the month is less than 0 or greater than 11.
The Date object passed in is modified. It should be cloned before passing it into this method if the original value needs to be maintained
@method _setMonthOnDate
@private
@param {Date} date The Date object on which to set the month index
@param {Number} iMonth The month index to set
Sets the month on a Date object taking into account year rollover if the month is less than 0 or greater than 11 . The Date object passed in is modified . It should be cloned before passing it into this method if the original value needs to be maintained