1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>The source code</title>
<link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="../resources/prettify/prettify.js"></script>
</head>
<body onload="prettyPrint();">
<pre class="prettyprint lang-js">/*!
* Ext JS Library 3.3.1
* Copyright(c) 2006-2010 Sencha Inc.
* licensing@sencha.com
* http://www.sencha.com/license
*/
<div id="cls-Ext.calendar.MonthViewTemplate"></div>/**
* @class Ext.calendar.MonthViewTemplate
* @extends Ext.XTemplate
* <p>This is the template used to render the {@link Ext.calendar.MonthView MonthView}. Internally this class defers to an
* instance of {@link Ext.calerndar.BoxLayoutTemplate} to handle the inner layout rendering and adds containing elements around
* that to form the month view.</p>
* <p>This template is automatically bound to the underlying event store by the
* calendar components and expects records of type {@link Ext.calendar.EventRecord}.</p>
* @constructor
* @param {Object} config The config object
*/
Ext.calendar.MonthViewTemplate = function(config){
Ext.apply(this, config);
this.weekTpl = new Ext.calendar.BoxLayoutTemplate(config);
this.weekTpl.compile();
var weekLinkTpl = this.showWeekLinks ? '<div class="ext-cal-week-link-hd"> </div>' : '';
Ext.calendar.MonthViewTemplate.superclass.constructor.call(this,
'<div class="ext-cal-inner-ct {extraClasses}">',
'<div class="ext-cal-hd-ct ext-cal-month-hd">',
weekLinkTpl,
'<table class="ext-cal-hd-days-tbl" cellpadding="0" cellspacing="0">',
'<tbody>',
'<tr>',
'<tpl for="days">',
'<th class="ext-cal-hd-day{[xindex==1 ? " ext-cal-day-first" : ""]}" title="{.:date("l, F j, Y")}">{.:date("D")}</th>',
'</tpl>',
'</tr>',
'</tbody>',
'</table>',
'</div>',
'<div class="ext-cal-body-ct">{weeks}</div>',
'</div>'
);
};
Ext.extend(Ext.calendar.MonthViewTemplate, Ext.XTemplate, {
// private
applyTemplate : function(o){
var days = [],
weeks = this.weekTpl.apply(o),
dt = o.viewStart;
for(var i = 0; i < 7; i++){
days.push(dt.add(Date.DAY, i));
}
var extraClasses = this.showHeader === true ? '' : 'ext-cal-noheader';
if(this.showWeekLinks){
extraClasses += ' ext-cal-week-links';
}
return Ext.calendar.MonthViewTemplate.superclass.applyTemplate.call(this, {
days: days,
weeks: weeks,
extraClasses: extraClasses
});
}
});
Ext.calendar.MonthViewTemplate.prototype.apply = Ext.calendar.MonthViewTemplate.prototype.applyTemplate;
</pre>
</body>
</html>
|