Type.registerNamespace("Telerik.Web.UI.Scheduler.Views.Month");
(function(c,a,g,b){var e=60000;
var d=e*60;
var h=d*24;
var f=h*7;
b.ModelBase=function(i){this._owner=i;
this._settings=this._owner.get_monthViewSettings();
};
b.ModelBase.prototype={get_visibleRangeStart:function(){var j=this._owner.get_selectedDate();
var k=g.DateHelper.getFirstDayOfMonth(j);
var m=g.DateHelper.getStartOfWeek(k,this._owner.get_firstDayOfWeek());
var i=g.DateHelper.getEndOfWeek(m,this._owner.get_firstDayOfWeek(),this.get_weekLength());
var l;
if(i.getMonth()==j.getMonth()){l=m;
}else{l=g.DateTime.add(m,7*h);
}return l;
},get_visibleRangeEnd:function(){var i=g.DateHelper.getLastDayOfMonth(this._owner.get_selectedDate());
return g.DateHelper.getEndOfWeek(i,this._owner.get_firstDayOfWeek(),this.get_weekLength());
},get_nextPeriodDate:function(){var i=this._owner.get_selectedDate();
return new Date(i.getFullYear(),i.getMonth(),32);
},get_previousPeriodDate:function(){var i=this._owner.get_selectedDate();
return new Date(i.getFullYear(),i.getMonth(),0);
},get_weekLength:function(){return g.DateHelper.getWeekLength(this._owner.get_selectedDate(),this._owner.get_firstDayOfWeek(),this._owner.get_lastDayOfWeek());
},get_headerDateFormat:function(){return this._settings.headerDateFormat||"MMM, yyyy";
},get_dayHeaderDateFormat:function(){return this._settings.dayHeaderDateFormat||"dd";
},get_firstDayHeaderDateFormat:function(){return this._settings.firstDayHeaderDateFormat||"dd MMM";
},get_visibleAppointmentsPerDay:function(){return this._settings.visibleAppointmentsPerDay||2;
},getDurationOfMovedAppointment:function(i){return i.get_duration();
},_getTimeSlotIndices:function(j){var m=g.DateTime.subtract(j,this.get_visibleRangeStart());
var i=Math.floor(m/f);
var l=m-(i*f);
var k=Math.floor(l/h);
return{dayIndex:(this.get_weekLength()*i)+k};
},isVisible:function(i){return i._isInRange(this.get_visibleRangeStart(),this.get_visibleRangeEnd());
}};
b.ModelBase.registerClass("Telerik.Web.UI.Scheduler.Views.Month.ModelBase");
b.Model=function(i){if(g.Rendering.HorizontalBlockCollection){this._allDayBlocks=new g.Rendering.HorizontalBlockCollection();
}b.Model.initializeBase(this,[i]);
};
b.Model.prototype={initialize:function(){},addToBlocks:function(i){this._allDayBlocks.add(i);
},removeFromBlock:function(i){this._allDayBlocks.remove(i);
},getTimeSlotFromDomElement:function(k){var j=this._getRawIndexFromDomElement(k);
var i=this._getTimeFromDomElement(k);
return new b.TimeSlot(j,i,k);
},_getTimeFromDomElement:function(j){var i=this._getRawIndexFromDomElement(j);
return this._getTimeFromIndex(i);
},_getTimeFromIndex:function(n){var l=this.get_visibleRangeStart();
var k=this.get_weekLength();
var m=Math.floor(n.dayIndex/k);
var i=n.dayIndex%k;
var j=(m*7)+i;
a.RadScheduler._incrementTime(l,24*j,0);
return l;
},_getRawIndexFromDomElement:function(m){while(m&&(m.tagName.toUpperCase()!="TD")){m=m.parentNode;
}if(m){var i=m.parentNode;
var j=i.cells.length;
var l=m.cellIndex;
var k=i.rowIndex;
return{dayIndex:(j*k)+l};
}return null;
},getTimeSlotForAppointment:function(i){return this._getAllDayTimeSlotFromStartTime(i.get_start());
},_getAllDayTimeSlotForAppointmentPart:function(i){return this._getAllDayTimeSlotFromStartTime(i.start);
},_getAllDayTimeSlotFromStartTime:function(i){var j=this._getTimeSlotIndices(i);
var k=this._getTimeSlotDomElement(j);
return new b.TimeSlot(j,null,k);
},_getTimeSlotDomElement:function(j){var k=this._owner.get_element();
var i=Math.floor(j.dayIndex/this.get_weekLength());
var l=Math.floor(j.dayIndex%this.get_weekLength());
return c("div.rsTopWrap table.rsContentTable",k)[0].tBodies[0].rows[i].cells[l];
},_getRenderer:function(){if(!this._renderer){this._renderer=new a.Scheduler.Rendering.MonthViewRenderer(this);
}return this._renderer;
}};
b.Model.registerClass("Telerik.Web.UI.Scheduler.Views.Month.Model",b.ModelBase);
b.TimeSlot=function(j,i,k){this._rawIndex=j;
this._startTime=i;
this._domElement=k;
};
b.TimeSlot.prototype={get_index:function(){var i=this.get_rawIndex();
return String.format("{0}",i.dayIndex);
},get_rawIndex:function(){return this._rawIndex;
},get_startTime:function(){return this._startTime;
},get_endTime:function(){return g.DateTime.add(this.get_startTime(),this.get_duration());
},get_duration:function(){return this.get_durationInMinutes()*e;
},get_durationInMinutes:function(){return 1440;
},get_isAllDay:function(){return true;
},get_domElement:function(){return this._domElement;
}};
b.TimeSlot.registerClass("Telerik.Web.UI.Scheduler.Views.Month.TimeSlot",null,a.ISchedulerTimeSlot);
})($telerik.$,Telerik.Web.UI,Telerik.Web.UI.Scheduler,Telerik.Web.UI.Scheduler.Views.Month);
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
