/*! * Ext JS Library 3.3.0 * Copyright(c) 2006-2010 Ext JS, Inc. * licensing@extjs.com * http://www.extjs.com/license */ Ext.ns('Ext.calendar'); (function() { Ext.apply(Ext.calendar, { Date: { diffDays: function(start, end) { day = 1000 * 60 * 60 * 24; diff = end.clearTime(true).getTime() - start.clearTime(true).getTime(); return Math.ceil(diff / day); }, copyTime: function(fromDt, toDt) { var dt = toDt.clone(); dt.setHours( fromDt.getHours(), fromDt.getMinutes(), fromDt.getSeconds(), fromDt.getMilliseconds()); return dt; }, compare: function(dt1, dt2, precise) { if (precise !== true) { dt1 = dt1.clone(); dt1.setMilliseconds(0); dt2 = dt2.clone(); dt2.setMilliseconds(0); } return dt2.getTime() - dt1.getTime(); }, // private helper fn maxOrMin: function(max) { var dt = (max ? 0: Number.MAX_VALUE), i = 0, args = arguments[1], ln = args.length; for (; i < ln; i++) { dt = Math[max ? 'max': 'min'](dt, args[i].getTime()); } return new Date(dt); }, max: function() { return this.maxOrMin.apply(this, [true, arguments]); }, min: function() { return this.maxOrMin.apply(this, [false, arguments]); } } }); })();