+++ /dev/null
-<html><head><title>/home/alan/gitlive/roojs1/Roo/grid/Calendar.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
-
- * Licence LGPL
-
- */
-
-/**
- * @class Roo.grid.Calendar
- * @extends Roo.util.Grid
- * This class extends the Grid to provide a calendar widget
- * <br><br>Usage:<pre><code>
- var grid = new Roo.grid.Calendar("my-container-id", {
- ds: myDataStore,
- cm: myColModel,
- selModel: mySelectionModel,
- autoSizeColumns: true,
- monitorWindowResize: false,
- trackMouseOver: true
- eventstore : real data store..
- });
- // set any options
- grid.render();
-
- * @constructor
- * @param {String/HTMLElement/Roo.Element} container The element into which this grid will be rendered -
- * The container MUST have some type of size defined for the grid to fill. The container will be
- * automatically set to position relative if it isn't already.
- * @param {Object} config A config object that sets properties on this grid.
- */
-</span><span class="jsdoc-var">Roo.grid.Calendar </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-comment">// initialize the container
- </span><span class="jsdoc-var">this.container </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">this.container.update</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">this.container.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"overflow"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">"hidden"</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">this.container.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-grid-container'</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-var">this.id </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.container.id</span><span class="jsdoc-syntax">;
-
- </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-comment">// check and correct shorthanded configs
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rows </span><span class="jsdoc-syntax">= [];
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">d </span><span class="jsdoc-syntax">=1;
- </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= 0;</span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">< 6;</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">++) {
-
- </span><span class="jsdoc-var">rows</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">]=[];
- </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">=0;</span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">< 7;</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-var">rows</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">][</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">]= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
- }
- }
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.eventStore</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">this.eventStore</span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.factory</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.eventStore</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.data</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">this.eventStore.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'load'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">this.eventStore.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforeload'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.clearEvents</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
-
- }
-
- </span><span class="jsdoc-var">this.dataSource </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.data.Store</span><span class="jsdoc-syntax">({
- </span><span class="jsdoc-var">proxy</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.data.MemoryProxy</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rows</span><span class="jsdoc-syntax">),
- </span><span class="jsdoc-var">reader</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.data.ArrayReader</span><span class="jsdoc-syntax">({}, [
- </span><span class="jsdoc-string">'weekday0'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'weekday1'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'weekday2'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'weekday3'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'weekday4'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'weekday5'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'weekday6' </span><span class="jsdoc-syntax">])
- });
-
- </span><span class="jsdoc-var">this.dataSource.load</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-var">this.ds </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.dataSource</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.ds.xmodule </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.xmodule </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
-
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cellRender </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">x</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">)
- {
- </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">String.format</span><span class="jsdoc-syntax">(
- </span><span class="jsdoc-string">'<div class="fc-day fc-widget-content"><div>' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'<div class="fc-event-container"></div>' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'<div class="fc-day-number">{0}</div>'</span><span class="jsdoc-syntax">+
-
- </span><span class="jsdoc-string">'<div class="fc-day-content"><div style="position:relative"></div></div>' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'</div></div>'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
-
- }
-
-
- </span><span class="jsdoc-var">this.colModel </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.grid.ColumnModel</span><span class="jsdoc-syntax">( [
- {
- </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ColumnModel'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">xns</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.grid</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">dataIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'weekday0'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Sunday'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">renderer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cellRender
- </span><span class="jsdoc-syntax">},
- {
- </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ColumnModel'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">xns</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.grid</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">dataIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'weekday1'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Monday'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">renderer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cellRender
- </span><span class="jsdoc-syntax">},
- {
- </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ColumnModel'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">xns</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.grid</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">dataIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'weekday2'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Tuesday'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">renderer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cellRender
- </span><span class="jsdoc-syntax">},
- {
- </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ColumnModel'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">xns</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.grid</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">dataIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'weekday3'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Wednesday'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">renderer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cellRender
- </span><span class="jsdoc-syntax">},
- {
- </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ColumnModel'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">xns</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.grid</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">dataIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'weekday4'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Thursday'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">renderer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cellRender
- </span><span class="jsdoc-syntax">},
- {
- </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ColumnModel'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">xns</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.grid</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">dataIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'weekday5'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Friday'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">renderer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cellRender
- </span><span class="jsdoc-syntax">},
- {
- </span><span class="jsdoc-var">xtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ColumnModel'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">xns</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.grid</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">dataIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'weekday6'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Saturday'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">renderer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cellRender
- </span><span class="jsdoc-syntax">}
- ]);
- </span><span class="jsdoc-var">this.cm </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.colModel</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.cm.xmodule </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.xmodule </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
-
-
-
- </span><span class="jsdoc-comment">//this.selModel = new Roo.grid.CellSelectionModel();
- //this.sm = this.selModel;
- //this.selModel.init(this);
-
-
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.width</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">this.container.setWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.width</span><span class="jsdoc-syntax">);
- }
-
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.height</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">this.container.setHeight</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.height</span><span class="jsdoc-syntax">);
- }
- </span><span class="jsdoc-comment">/** @private */
- </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">({
- </span><span class="jsdoc-comment">// raw events
- /**
- * @event click
- * The raw click event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"click" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event dblclick
- * The raw dblclick event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"dblclick" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event contextmenu
- * The raw contextmenu event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"contextmenu" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event mousedown
- * The raw mousedown event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"mousedown" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event mouseup
- * The raw mouseup event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"mouseup" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event mouseover
- * The raw mouseover event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"mouseover" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event mouseout
- * The raw mouseout event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"mouseout" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event keypress
- * The raw keypress event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"keypress" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event keydown
- * The raw keydown event for the entire grid.
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"keydown" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-
- </span><span class="jsdoc-comment">// custom events
-
- /**
- * @event cellclick
- * Fires when a cell is clicked
- * @param {Grid} this
- * @param {Number} rowIndex
- * @param {Number} columnIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"cellclick" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event celldblclick
- * Fires when a cell is double clicked
- * @param {Grid} this
- * @param {Number} rowIndex
- * @param {Number} columnIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"celldblclick" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event rowclick
- * Fires when a row is clicked
- * @param {Grid} this
- * @param {Number} rowIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"rowclick" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event rowdblclick
- * Fires when a row is double clicked
- * @param {Grid} this
- * @param {Number} rowIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"rowdblclick" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event headerclick
- * Fires when a header is clicked
- * @param {Grid} this
- * @param {Number} columnIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"headerclick" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event headerdblclick
- * Fires when a header cell is double clicked
- * @param {Grid} this
- * @param {Number} columnIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"headerdblclick" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event rowcontextmenu
- * Fires when a row is right clicked
- * @param {Grid} this
- * @param {Number} rowIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"rowcontextmenu" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event cellcontextmenu
- * Fires when a cell is right clicked
- * @param {Grid} this
- * @param {Number} rowIndex
- * @param {Number} cellIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"cellcontextmenu" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event headercontextmenu
- * Fires when a header is right clicked
- * @param {Grid} this
- * @param {Number} columnIndex
- * @param {Roo.EventObject} e
- */
- </span><span class="jsdoc-string">"headercontextmenu" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event bodyscroll
- * Fires when the body element is scrolled
- * @param {Number} scrollLeft
- * @param {Number} scrollTop
- */
- </span><span class="jsdoc-string">"bodyscroll" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event columnresize
- * Fires when the user resizes a column
- * @param {Number} columnIndex
- * @param {Number} newSize
- */
- </span><span class="jsdoc-string">"columnresize" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event columnmove
- * Fires when the user moves a column
- * @param {Number} oldIndex
- * @param {Number} newIndex
- */
- </span><span class="jsdoc-string">"columnmove" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event startdrag
- * Fires when row(s) start being dragged
- * @param {Grid} this
- * @param {Roo.GridDD} dd The drag drop object
- * @param {event} e The raw browser event
- */
- </span><span class="jsdoc-string">"startdrag" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event enddrag
- * Fires when a drag operation is complete
- * @param {Grid} this
- * @param {Roo.GridDD} dd The drag drop object
- * @param {event} e The raw browser event
- */
- </span><span class="jsdoc-string">"enddrag" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event dragdrop
- * Fires when dragged row(s) are dropped on a valid DD target
- * @param {Grid} this
- * @param {Roo.GridDD} dd The drag drop object
- * @param {String} targetId The target drag drop object
- * @param {event} e The raw browser event
- */
- </span><span class="jsdoc-string">"dragdrop" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event dragover
- * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
- * @param {Grid} this
- * @param {Roo.GridDD} dd The drag drop object
- * @param {String} targetId The target drag drop object
- * @param {event} e The raw browser event
- */
- </span><span class="jsdoc-string">"dragover" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event dragenter
- * Fires when the dragged row(s) first cross another DD target while being dragged
- * @param {Grid} this
- * @param {Roo.GridDD} dd The drag drop object
- * @param {String} targetId The target drag drop object
- * @param {event} e The raw browser event
- */
- </span><span class="jsdoc-string">"dragenter" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event dragout
- * Fires when the dragged row(s) leave another DD target while being dragged
- * @param {Grid} this
- * @param {Roo.GridDD} dd The drag drop object
- * @param {String} targetId The target drag drop object
- * @param {event} e The raw browser event
- */
- </span><span class="jsdoc-string">"dragout" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event rowclass
- * Fires when a row is rendered, so you can change add a style to it.
- * @param {GridView} gridview The grid view
- * @param {Object} rowcfg contains record rowIndex and rowClass - set rowClass to add a style.
- */
- </span><span class="jsdoc-string">'rowclass' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-
- </span><span class="jsdoc-comment">/**
- * @event render
- * Fires when the grid is rendered
- * @param {Grid} grid
- */
- </span><span class="jsdoc-string">'render' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event select
- * Fires when a date is selected
- * @param {DatePicker} this
- * @param {Date} date The selected date
- */
- </span><span class="jsdoc-string">'select'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event monthchange
- * Fires when the displayed month changes
- * @param {DatePicker} this
- * @param {Date} date The selected month
- */
- </span><span class="jsdoc-string">'monthchange'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event evententer
- * Fires when mouse over an event
- * @param {Calendar} this
- * @param {event} Event
- */
- </span><span class="jsdoc-string">'evententer'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event eventleave
- * Fires when the mouse leaves an
- * @param {Calendar} this
- * @param {event}
- */
- </span><span class="jsdoc-string">'eventleave'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event eventclick
- * Fires when the mouse click an
- * @param {Calendar} this
- * @param {event}
- */
- </span><span class="jsdoc-string">'eventclick'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-comment">/**
- * @event eventrender
- * Fires before each cell is rendered, so you can modify the contents, like cls / title / qtip
- * @param {Calendar} this
- * @param {data} data to be modified
- */
- </span><span class="jsdoc-string">'eventrender'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
-
- </span><span class="jsdoc-syntax">});
-
- </span><span class="jsdoc-var">Roo.grid.Grid.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">this.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'render'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
- </span><span class="jsdoc-var">this.view.el.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-grid-cal'</span><span class="jsdoc-syntax">);
-
- (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() { </span><span class="jsdoc-var">this.setDate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">()); })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(100,</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">); </span><span class="jsdoc-comment">//default today..
-
- </span><span class="jsdoc-syntax">},</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">Roo.grid.Calendar.style</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">Roo.grid.Calendar.style </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.util.CSS.createStyleSheet</span><span class="jsdoc-syntax">({
-
-
- </span><span class="jsdoc-string">'.x-grid-cal .x-grid-col' </span><span class="jsdoc-syntax">: {
- </span><span class="jsdoc-var">height</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'auto !important'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-string">'vertical-align'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'top'
- </span><span class="jsdoc-syntax">},
- </span><span class="jsdoc-string">'.x-grid-cal .fc-event-hori' </span><span class="jsdoc-syntax">: {
- </span><span class="jsdoc-var">height</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'14px'
- </span><span class="jsdoc-syntax">}
-
-
- }, </span><span class="jsdoc-var">Roo.id</span><span class="jsdoc-syntax">());
- }
-
-
-
-};
-</span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.grid.Calendar</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.grid.Grid</span><span class="jsdoc-syntax">, {
- </span><span class="jsdoc-comment">/**
- * @cfg {Store} eventStore The store that loads events.
- */
- </span><span class="jsdoc-var">eventStore </span><span class="jsdoc-syntax">: 25,
-
-
- </span><span class="jsdoc-var">activeDate </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">startDay </span><span class="jsdoc-syntax">: 0,
- </span><span class="jsdoc-var">autoWidth </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">monitorWindowResize </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
-
-
- </span><span class="jsdoc-var">resizeColumns </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">col </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">this.view.el.getWidth</span><span class="jsdoc-syntax">() / 7) - 3;
- </span><span class="jsdoc-comment">// loop through cols, and setWidth
- </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0 ; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< 7 ; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
- </span><span class="jsdoc-var">this.cm.setColumnWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">col</span><span class="jsdoc-syntax">);
- }
- },
- </span><span class="jsdoc-var">setDate </span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">date</span><span class="jsdoc-syntax">) {
-
- </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'setDate?'</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-var">this.resizeColumns</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">vd </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.activeDate</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.activeDate </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">date</span><span class="jsdoc-syntax">;
-</span><span class="jsdoc-comment">// if(vd && this.el){
-// var t = date.getTime();
-// if(vd.getMonth() == date.getMonth() && vd.getFullYear() == date.getFullYear()){
-// Roo.log('using add remove');
-//
-// this.fireEvent('monthchange', this, date);
-//
-// this.cells.removeClass("fc-state-highlight");
-// this.cells.each(function(c){
-// if(c.dateValue == t){
-// c.addClass("fc-state-highlight");
-// setTimeout(function(){
-// try{c.dom.firstChild.focus();}catch(e){}
-// }, 50);
-// return false;
-// }
-// return true;
-// });
-// return;
-// }
-// }
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">days </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">date.getDaysInMonth</span><span class="jsdoc-syntax">();
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">firstOfMonth </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">date.getFirstDateOfMonth</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">startingPos </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">firstOfMonth.getDay</span><span class="jsdoc-syntax">()-</span><span class="jsdoc-var">this.startDay</span><span class="jsdoc-syntax">;
-
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">startingPos </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">this.startDay</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">startingPos </span><span class="jsdoc-syntax">+= 7;
- }
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">pm </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">date.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Date.MONTH</span><span class="jsdoc-syntax">, -1);
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">prevStart </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">pm.getDaysInMonth</span><span class="jsdoc-syntax">()-</span><span class="jsdoc-var">startingPos</span><span class="jsdoc-syntax">;
-</span><span class="jsdoc-comment">//
-
-
- </span><span class="jsdoc-var">this.cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.x-grid-row .x-grid-col'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-var">this.textNodes </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.el.query</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.x-grid-row .x-grid-col .x-grid-cell-text'</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-comment">//this.cells.addClassOnOver('fc-state-hover');
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.cells.elements</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">textEls </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.textNodes</span><span class="jsdoc-syntax">;
-
- </span><span class="jsdoc-comment">//Roo.each(cells, function(cell){
- // cell.removeClass([ 'fc-past', 'fc-other-month', 'fc-future', 'fc-state-highlight', 'fc-state-disabled']);
- //});
-
- </span><span class="jsdoc-var">days </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-var">startingPos</span><span class="jsdoc-syntax">;
-
- </span><span class="jsdoc-comment">// convert everything to numbers so it's fast
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">day </span><span class="jsdoc-syntax">= 86400000;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">d </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">pm.getFullYear</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">pm.getMonth</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">prevStart</span><span class="jsdoc-syntax">))</span><span class="jsdoc-var">.clearTime</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-comment">//Roo.log(d);
- //Roo.log(pm);
- //Roo.log(prevStart);
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">today </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.clearTime</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getTime</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">sel </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">date.clearTime</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getTime</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">min </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.minDate </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.minDate.clearTime</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-var">Number.NEGATIVE_INFINITY</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">max </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.maxDate </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.maxDate.clearTime</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-var">Number.POSITIVE_INFINITY</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ddMatch </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.disabledDatesRE</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ddText </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.disabledDatesText</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ddays </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.disabledDays </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.disabledDays.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ddaysText </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.disabledDaysText</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">format </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.format</span><span class="jsdoc-syntax">;
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">setCellClass </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cal</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cell</span><span class="jsdoc-syntax">){
-
- </span><span class="jsdoc-comment">//Roo.log('set Cell Class');
- </span><span class="jsdoc-var">cell.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.getTime</span><span class="jsdoc-syntax">();
-
- </span><span class="jsdoc-comment">//Roo.log(d);
-
-
- </span><span class="jsdoc-var">cell.dateValue </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">today</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">cell.className </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">" fc-today"</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">cell.className </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">" fc-state-highlight"</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">cell.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cal.todayText</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">sel</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-comment">// disable highlight in other month..
- </span><span class="jsdoc-var">cell.className </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">" fc-state-highlight"</span><span class="jsdoc-syntax">;
-
- }
- </span><span class="jsdoc-comment">// disabling
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">min</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-comment">//cell.className = " fc-state-disabled";
- </span><span class="jsdoc-var">cell.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cal.minText</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">> </span><span class="jsdoc-var">max</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-comment">//cell.className = " fc-state-disabled";
- </span><span class="jsdoc-var">cell.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cal.maxText</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ddays</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ddays.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.getDay</span><span class="jsdoc-syntax">()) != -1){
- </span><span class="jsdoc-comment">// cell.title = ddaysText;
- // cell.className = " fc-state-disabled";
- </span><span class="jsdoc-syntax">}
- }
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ddMatch </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">format</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">fvalue </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.dateFormat</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">format</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ddMatch.test</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fvalue</span><span class="jsdoc-syntax">)){
- </span><span class="jsdoc-var">cell.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ddText.replace</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"%0"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fvalue</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">cell.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">" fc-state-disabled"</span><span class="jsdoc-syntax">;
- }
- }
-
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">cell.initialClassName</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">cell.initialClassName </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cell.dom.className</span><span class="jsdoc-syntax">;
- }
-
- </span><span class="jsdoc-var">cell.dom.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cell.initialClassName </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">' ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">cell.className</span><span class="jsdoc-syntax">;
- };
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0;
-
- </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">startingPos</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.dayName </span><span class="jsdoc-syntax">= (++</span><span class="jsdoc-var">prevStart</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">textEls</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]);
- </span><span class="jsdoc-var">d.setDate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.getDate</span><span class="jsdoc-syntax">()+1);
-
- </span><span class="jsdoc-comment">//cells[i].className = "fc-past fc-other-month";
- </span><span class="jsdoc-var">setCellClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]);
- }
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">intDay </span><span class="jsdoc-syntax">= 0;
-
- </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">days</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
- </span><span class="jsdoc-var">intDay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">startingPos </span><span class="jsdoc-syntax">+ 1;
- </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.dayName </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">intDay</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">d.setDate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.getDate</span><span class="jsdoc-syntax">()+1);
-
- </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// "x-date-active";
- </span><span class="jsdoc-var">setCellClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]);
- }
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">extraDays </span><span class="jsdoc-syntax">= 0;
-
- </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< 42; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-comment">//textEls[i].innerHTML = (++extraDays);
-
- </span><span class="jsdoc-var">d.setDate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.getDate</span><span class="jsdoc-syntax">()+1);
- </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.dayName </span><span class="jsdoc-syntax">= (++</span><span class="jsdoc-var">extraDays</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"fc-future fc-other-month"</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">setCellClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]);
- }
-
- </span><span class="jsdoc-comment">//this.el.select('.fc-header-title h2',true).update(Date.monthNames[date.getMonth()] + " " + date.getFullYear());
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">totalRows </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.ceil</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">date.getDaysInMonth</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">date.getFirstDateOfMonth</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getDay</span><span class="jsdoc-syntax">()) / 7);
-
- </span><span class="jsdoc-comment">// this will cause all the cells to mis
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rows</span><span class="jsdoc-syntax">= [];
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0;
- </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= 0;</span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">< 6;</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">=0;</span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">< 7;</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-var">this.ds.getAt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.set</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'weekday' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++]</span><span class="jsdoc-var">.dayName </span><span class="jsdoc-syntax">);
- }
- }
-
- </span><span class="jsdoc-var">this.cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.x-grid-row .x-grid-col'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">=0;</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax"><</span><span class="jsdoc-var">cells.length</span><span class="jsdoc-syntax">;</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
-
- </span><span class="jsdoc-var">this.cells.elements</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.dayName </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.dayName </span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.cells.elements</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.className</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.cells.elements</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.initialClassName </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.initialClassName </span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.cells.elements</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.title </span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.cells.elements</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.dateValue </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.dateValue </span><span class="jsdoc-syntax">;
- }
-
-
-
-
- </span><span class="jsdoc-comment">//this.el.select('tr.fc-week.fc-prev-last',true).removeClass('fc-last');
- //this.el.select('tr.fc-week.fc-next-last',true).addClass('fc-last').show();
-
- ////if(totalRows != 6){
- //this.el.select('tr.fc-week.fc-last',true).removeClass('fc-last').addClass('fc-next-last').hide();
- // this.el.select('tr.fc-week.fc-prev-last',true).addClass('fc-last');
- // }
-
- </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'monthchange'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">date</span><span class="jsdoc-syntax">);
-
-
- },
- </span><span class="jsdoc-comment">/**
- * Returns the grid's SelectionModel.
- * @return {SelectionModel}
- */
- </span><span class="jsdoc-var">getSelectionModel </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.selModel</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">this.selModel </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.grid.CellSelectionModel</span><span class="jsdoc-syntax">();
- }
- </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.selModel</span><span class="jsdoc-syntax">;
- },
-
- </span><span class="jsdoc-var">load</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
- </span><span class="jsdoc-var">this.eventStore.load</span><span class="jsdoc-syntax">()
-
-
-
- },
-
- </span><span class="jsdoc-var">findCell </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dt</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">dt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">dt.clearTime</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getTime</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ret </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.cells.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-comment">//Roo.log("check " +c.dateValue + '?=' + dt);
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c.dateValue </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">dt</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">ret </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
- });
-
- </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">ret</span><span class="jsdoc-syntax">;
- },
-
- </span><span class="jsdoc-var">findCells </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rec</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">s </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rec.data.start_dt.clone</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.clearTime</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getTime</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-comment">// Roo.log(s);
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rec.data.end_dt.clone</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.clearTime</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getTime</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-comment">// Roo.log(e);
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ret </span><span class="jsdoc-syntax">= [];
- </span><span class="jsdoc-var">this.cells.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-comment">////Roo.log("check " +c.dateValue + '<' + e + ' > ' + s);
-
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c.dateValue </span><span class="jsdoc-syntax">> </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c.dateValue </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">s</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-var">ret.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">);
- });
-
- </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">ret</span><span class="jsdoc-syntax">;
- },
-
- </span><span class="jsdoc-var">findBestRow</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">)
- {
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ret </span><span class="jsdoc-syntax">= 0;
-
- </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0 ; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">cells.length</span><span class="jsdoc-syntax">;</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-var">ret </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.rows </span><span class="jsdoc-syntax">|| 0,</span><span class="jsdoc-var">ret</span><span class="jsdoc-syntax">);
- }
- </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">ret</span><span class="jsdoc-syntax">;
-
- },
-
-
- </span><span class="jsdoc-var">addItem </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rec</span><span class="jsdoc-syntax">)
- {
- </span><span class="jsdoc-comment">// look for vertical location slot in
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.findCells</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rec</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-var">rec.row </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.findBestRow</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-comment">// work out the location.
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">crow </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rows </span><span class="jsdoc-syntax">= [];
- </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">cells.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">crow</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">crow </span><span class="jsdoc-syntax">= {
- </span><span class="jsdoc-var">start </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">],
- </span><span class="jsdoc-var">end </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]
- };
- </span><span class="jsdoc-keyword">continue</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">crow.start.getY</span><span class="jsdoc-syntax">() == </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.getY</span><span class="jsdoc-syntax">()) {
- </span><span class="jsdoc-comment">// on same row.
- </span><span class="jsdoc-var">crow.end </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">];
- </span><span class="jsdoc-keyword">continue</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-comment">// different row.
- </span><span class="jsdoc-var">rows.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">crow</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">crow </span><span class="jsdoc-syntax">= {
- </span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">],
- </span><span class="jsdoc-var">end </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]
- };
-
- }
-
- </span><span class="jsdoc-var">rows.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">crow</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">rec.els </span><span class="jsdoc-syntax">= [];
- </span><span class="jsdoc-var">rec.rows </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rows</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">rec.cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">for </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">cells.length</span><span class="jsdoc-syntax">;</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
- </span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.rows </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cells</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.rows </span><span class="jsdoc-syntax">|| 0 , </span><span class="jsdoc-var">rec.row </span><span class="jsdoc-syntax">+ 1 );
-
- }
-
-
- },
-
- </span><span class="jsdoc-var">clearEvents</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
-
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.eventStore.getCount</span><span class="jsdoc-syntax">()) {
- </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-comment">// reset number of rows in cells.
- </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.cells.elements</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">c.rows </span><span class="jsdoc-syntax">= 0;
- });
-
- </span><span class="jsdoc-var">this.eventStore.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">this.clearEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
- },</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
-
- },
-
- </span><span class="jsdoc-var">clearEvent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">)
- {
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev.els</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev.els</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">el.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mouseenter' </span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.onEventEnter</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">el.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mouseleave' </span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.onEventLeave</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">el.remove</span><span class="jsdoc-syntax">();
- },</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">ev.els </span><span class="jsdoc-syntax">= [];
- }
- },
-
-
- </span><span class="jsdoc-var">renderEvent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">ctr</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">ctr</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">ctr </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.fc-event-container'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
- }
-
-
- </span><span class="jsdoc-var">this.clearEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-comment">//code
-
-
-
- </span><span class="jsdoc-var">ev.els </span><span class="jsdoc-syntax">= [];
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ev.cells</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rows </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ev.rows</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'eventrender'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">=0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">rows.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
-
- </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">== 0) {
- </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' fc-event-start'</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">+1) == </span><span class="jsdoc-var">rows.length</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' fc-event-end'</span><span class="jsdoc-syntax">;
- }
-
- </span><span class="jsdoc-comment">//Roo.log(ev.data);
- // how many rows should it span..
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.eventTmpl.append</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ctr</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">({
- </span><span class="jsdoc-var">fccls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">cls
-
- </span><span class="jsdoc-syntax">}, </span><span class="jsdoc-var">ev.data</span><span class="jsdoc-syntax">) , </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
-
-
- </span><span class="jsdoc-var">cg.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mouseenter' </span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.onEventEnter</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">cg.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mouseleave' </span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.onEventLeave</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">cg.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onEventClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-var">ev.els.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cg</span><span class="jsdoc-syntax">);
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">sbox </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rows</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.start.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.fc-day-content'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getBox</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ebox </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rows</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.end.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.fc-day-content'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getBox</span><span class="jsdoc-syntax">();
- </span><span class="jsdoc-comment">//Roo.log(cg);
-
- </span><span class="jsdoc-var">cg.setXY</span><span class="jsdoc-syntax">([</span><span class="jsdoc-var">sbox.x </span><span class="jsdoc-syntax">+2, </span><span class="jsdoc-var">sbox.y </span><span class="jsdoc-syntax">+(</span><span class="jsdoc-var">ev.row </span><span class="jsdoc-syntax">* 20)]);
- </span><span class="jsdoc-var">cg.setWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ebox.right </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">sbox.x </span><span class="jsdoc-syntax">-2);
- }
- },
-
- </span><span class="jsdoc-var">renderEvents</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
- {
- </span><span class="jsdoc-comment">// first make sure there is enough space..
-
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.eventTmpl</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">this.eventTmpl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Template</span><span class="jsdoc-syntax">(
- </span><span class="jsdoc-string">'<div class="roo-dynamic fc-event fc-event-hori fc-event-draggable ui-draggable {fccls} {cls}" style="position: absolute" unselectable="on">' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'<div class="fc-event-inner">' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'<span class="fc-event-time">{time}</span>' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'<span class="fc-event-title" qtip="{qtip}">{title}</span>' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'</div>' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'<div class="ui-resizable-heandle ui-resizable-e">&nbsp;&nbsp;&nbsp;</div>' </span><span class="jsdoc-syntax">+
- </span><span class="jsdoc-string">'</div>'
- </span><span class="jsdoc-syntax">);
-
- }
-
-
-
- </span><span class="jsdoc-var">this.cells.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-comment">//Roo.log(c.select('.fc-day-content div',true).first());
- </span><span class="jsdoc-var">c.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.fc-day-content div'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.setHeight</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(34, (</span><span class="jsdoc-var">c.rows </span><span class="jsdoc-syntax">|| 1) * 20));
- });
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ctr </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.fc-event-container'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
-
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">this.eventStore.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">){
-
- </span><span class="jsdoc-var">this.renderEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ev</span><span class="jsdoc-syntax">);
-
-
- }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">this.view.layout</span><span class="jsdoc-syntax">();
-
- },
-
- </span><span class="jsdoc-var">onEventEnter</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">event</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'evententer'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">event</span><span class="jsdoc-syntax">);
- },
-
- </span><span class="jsdoc-var">onEventLeave</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">event</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'eventleave'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">event</span><span class="jsdoc-syntax">);
- },
-
- </span><span class="jsdoc-var">onEventClick</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">event</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'eventclick'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">event</span><span class="jsdoc-syntax">);
- },
-
- </span><span class="jsdoc-var">onMonthChange</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">() {
- </span><span class="jsdoc-var">this.store.load</span><span class="jsdoc-syntax">();
- },
-
- </span><span class="jsdoc-var">onLoad</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">() {
-
- </span><span class="jsdoc-comment">//Roo.log('calendar onload');
-//
- </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.eventStore.getCount</span><span class="jsdoc-syntax">() > 0){
-
-
-
- </span><span class="jsdoc-var">this.eventStore.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">){
-
-
- </span><span class="jsdoc-comment">// FIXME..
- </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">add </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">add.end_dt</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"Missing End time in calendar data: "</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">add.start_dt</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) {
- </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"Missing Start time in calendar data: "</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">);
- </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
- }
- </span><span class="jsdoc-var">add.start_dt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">add.start_dt</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'string' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">Date.parseDate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">add.start_dt</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'Y-m-d H:i:s'</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-var">add.start_dt</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">add.end_dt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">add.end_dt</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'string' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">Date.parseDate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">add.end_dt</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'Y-m-d H:i:s'</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-var">add.end_dt</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">add.id </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">add.id </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">d.id</span><span class="jsdoc-syntax">;
- </span><span class="jsdoc-var">add.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">add.title </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">'??'</span><span class="jsdoc-syntax">;
-
- </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">);
-
-
- },</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
- }
-
- </span><span class="jsdoc-var">this.renderEvents</span><span class="jsdoc-syntax">();
- }
-
-
-});
-</span><span class="jsdoc-comment">/*
- grid : {
- xtype: 'Grid',
- xns: Roo.grid,
- listeners : {
- render : function ()
- {
- _this.grid = this;
-
- if (!this.view.el.hasClass('course-timesheet')) {
- this.view.el.addClass('course-timesheet');
- }
- if (this.tsStyle) {
- this.ds.load({});
- return;
- }
- Roo.log('width');
- Roo.log(_this.grid.view.el.getWidth());
-
-
- this.tsStyle = Roo.util.CSS.createStyleSheet({
- '.course-timesheet .x-grid-row' : {
- height: '80px'
- },
- '.x-grid-row td' : {
- 'vertical-align' : 0
- },
- '.course-edit-link' : {
- 'color' : 'blue',
- 'text-overflow' : 'ellipsis',
- 'overflow' : 'hidden',
- 'white-space' : 'nowrap',
- 'cursor' : 'pointer'
- },
- '.sub-link' : {
- 'color' : 'green'
- },
- '.de-act-sup-link' : {
- 'color' : 'purple',
- 'text-decoration' : 'line-through'
- },
- '.de-act-link' : {
- 'color' : 'red',
- 'text-decoration' : 'line-through'
- },
- '.course-timesheet .course-highlight' : {
- 'border-top-style': 'dashed !important',
- 'border-bottom-bottom': 'dashed !important'
- },
- '.course-timesheet .course-item' : {
- 'font-family' : 'tahoma, arial, helvetica',
- 'font-size' : '11px',
- 'overflow' : 'hidden',
- 'padding-left' : '10px',
- 'padding-right' : '10px',
- 'padding-top' : '10px'
- }
-
- }, Roo.id());
- this.ds.load({});
- }
- },
- autoWidth : true,
- monitorWindowResize : false,
- cellrenderer : function(v,x,r)
- {
- return v;
- },
- sm : {
- xtype: 'CellSelectionModel',
- xns: Roo.grid
- },
- dataSource : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, options)
- {
- options.params = options.params || {};
- options.params._month = _this.monthField.getValue();
- options.params.limit = 9999;
- options.params['sort'] = 'when_dt';
- options.params['dir'] = 'ASC';
- this.proxy.loadResponse = this.loadResponse;
- Roo.log("load?");
- //this.addColumns();
- },
- load : function (_self, records, options)
- {
- _this.grid.view.el.select('.course-edit-link', true).on('click', function() {
- // if you click on the translation.. you can edit it...
- var el = Roo.get(this);
- var id = el.dom.getAttribute('data-id');
- var d = el.dom.getAttribute('data-date');
- var t = el.dom.getAttribute('data-time');
- //var id = this.child('span').dom.textContent;
-
- //Roo.log(this);
- Pman.Dialog.CourseCalendar.show({
- id : id,
- when_d : d,
- when_t : t,
- productitem_active : id ? 1 : 0
- }, function() {
- _this.grid.ds.load({});
- });
-
- });
-
- _this.panel.fireEvent('resize', [ '', '' ]);
- }
- },
- loadResponse : function(o, success, response){
- // this is overridden on before load..
-
- Roo.log("our code?");
- //Roo.log(success);
- //Roo.log(response)
- delete this.activeRequest;
- if(!success){
- this.fireEvent("loadexception", this, o, response);
- o.request.callback.call(o.request.scope, null, o.request.arg, false);
- return;
- }
- var result;
- try {
- result = o.reader.read(response);
- }catch(e){
- Roo.log("load exception?");
- this.fireEvent("loadexception", this, o, response, e);
- o.request.callback.call(o.request.scope, null, o.request.arg, false);
- return;
- }
- Roo.log("ready...");
- // loop through result.records;
- // and set this.tdate[date] = [] << array of records..
- _this.tdata = {};
- Roo.each(result.records, function(r){
- //Roo.log(r.data);
- if(typeof(_this.tdata[r.data.when_dt.format('j')]) == 'undefined'){
- _this.tdata[r.data.when_dt.format('j')] = [];
- }
- _this.tdata[r.data.when_dt.format('j')].push(r.data);
- });
-
- //Roo.log(_this.tdata);
-
- result.records = [];
- result.totalRecords = 6;
-
- // let's generate some duumy records for the rows.
- //var st = _this.dateField.getValue();
-
- // work out monday..
- //st = st.add(Date.DAY, -1 * st.format('w'));
-
- var date = Date.parseDate(_this.monthField.getValue(), "Y-m-d");
-
- var firstOfMonth = date.getFirstDayOfMonth();
- var days = date.getDaysInMonth();
- var d = 1;
- var firstAdded = false;
- for (var i = 0; i < result.totalRecords ; i++) {
- //var d= st.add(Date.DAY, i);
- var row = {};
- var added = 0;
- for(var w = 0 ; w < 7 ; w++){
- if(!firstAdded && firstOfMonth != w){
- continue;
- }
- if(d > days){
- continue;
- }
- firstAdded = true;
- var dd = (d > 0 && d < 10) ? "0"+d : d;
- row['weekday'+w] = String.format(
- '<span style="font-size: 16px;"><b>{0}</b></span>'+
- '<span class="course-edit-link" style="color:blue;" data-id="0" data-date="{1}"> Add New</span>',
- d,
- date.format('Y-m-')+dd
- );
- added++;
- if(typeof(_this.tdata[d]) != 'undefined'){
- Roo.each(_this.tdata[d], function(r){
- var is_sub = '';
- var deactive = '';
- var id = r.id;
- var desc = (r.productitem_id_descrip) ? r.productitem_id_descrip : '';
- if(r.parent_id*1>0){
- is_sub = (r.productitem_id_visible*1 < 1) ? 'de-act-sup-link' :'sub-link';
- id = r.parent_id;
- }
- if(r.productitem_id_visible*1 < 1 && r.parent_id*1 < 1){
- deactive = 'de-act-link';
- }
-
- row['weekday'+w] += String.format(
- '<br /><span class="course-edit-link {3} {4}" qtip="{5}" data-id="{0}">{2} - {1}</span>',
- id, //0
- r.product_id_name, //1
- r.when_dt.format('h:ia'), //2
- is_sub, //3
- deactive, //4
- desc // 5
- );
- });
- }
- d++;
- }
-
- // only do this if something added..
- if(added > 0){
- result.records.push(_this.grid.dataSource.reader.newRow(row));
- }
-
-
- // push it twice. (second one with an hour..
-
- }
- //Roo.log(result);
- this.fireEvent("load", this, o, o.request.arg);
- o.request.callback.call(o.request.scope, result, o.request.arg, true);
- },
- sortInfo : {field: 'when_dt', direction : 'ASC' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/Shop_course.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- fields : [
- {
- 'name': 'id',
- 'type': 'int'
- },
- {
- 'name': 'when_dt',
- 'type': 'string'
- },
- {
- 'name': 'end_dt',
- 'type': 'string'
- },
- {
- 'name': 'parent_id',
- 'type': 'int'
- },
- {
- 'name': 'product_id',
- 'type': 'int'
- },
- {
- 'name': 'productitem_id',
- 'type': 'int'
- },
- {
- 'name': 'guid',
- 'type': 'int'
- }
- ]
- }
- },
- toolbar : {
- xtype: 'Toolbar',
- xns: Roo,
- items : [
- {
- xtype: 'Button',
- xns: Roo.Toolbar,
- listeners : {
- click : function (_self, e)
- {
- var sd = Date.parseDate(_this.monthField.getValue(), "Y-m-d");
- sd.setMonth(sd.getMonth()-1);
- _this.monthField.setValue(sd.format('Y-m-d'));
- _this.grid.ds.load({});
- }
- },
- text : "Back"
- },
- {
- xtype: 'Separator',
- xns: Roo.Toolbar
- },
- {
- xtype: 'MonthField',
- xns: Roo.form,
- listeners : {
- render : function (_self)
- {
- _this.monthField = _self;
- // _this.monthField.set today
- },
- select : function (combo, date)
- {
- _this.grid.ds.load({});
- }
- },
- value : (function() { return new Date(); })()
- },
- {
- xtype: 'Separator',
- xns: Roo.Toolbar
- },
- {
- xtype: 'TextItem',
- xns: Roo.Toolbar,
- text : "Blue: in-active, green: in-active sup-event, red: de-active, purple: de-active sup-event"
- },
- {
- xtype: 'Fill',
- xns: Roo.Toolbar
- },
- {
- xtype: 'Button',
- xns: Roo.Toolbar,
- listeners : {
- click : function (_self, e)
- {
- var sd = Date.parseDate(_this.monthField.getValue(), "Y-m-d");
- sd.setMonth(sd.getMonth()+1);
- _this.monthField.setValue(sd.format('Y-m-d'));
- _this.grid.ds.load({});
- }
- },
- text : "Next"
- }
- ]
- },
-
- }
- };
-
- */</span></code></body></html>
\ No newline at end of file