2804 lines
386 KiB
HTML
2804 lines
386 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
<html>
|
|
<head>
|
|
<title>API: calendar Calendar.js (YUI Library)</title>
|
|
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
|
</head>
|
|
|
|
<body id="yahoo-com">
|
|
<div id="doc3" class="yui-t2">
|
|
|
|
<div id="hd">
|
|
<h1>Yahoo! UI Library</h1>
|
|
<h3>Calendar <span class="subtitle">2.2.2</span></h3>
|
|
<p>
|
|
<a href="./index.html">Yahoo! UI Library</a>
|
|
> <a href="./module_calendar.html">calendar</a>
|
|
|
|
> Calendar.js (source view)
|
|
</p>
|
|
</div>
|
|
|
|
<div id="bd">
|
|
<div id="yui-main">
|
|
<div class="yui-b">
|
|
|
|
<div id="srcout">
|
|
<div class="highlight" ><pre><span class="c">/**</span>
|
|
<span class="c">* The Calendar component is a UI control that enables users to choose one or more dates from a graphical calendar presented in a one-month ("one-up") or two-month ("two-up") interface. Calendars are generated entirely via script and can be navigated without any page refreshes.</span>
|
|
<span class="c">* @module calendar</span>
|
|
<span class="c">* @title Calendar</span>
|
|
<span class="c">* @namespace YAHOO.widget</span>
|
|
<span class="c">* @requires yahoo,dom,event</span>
|
|
<span class="c">*/</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Calendar is the base class for the Calendar widget. In its most basic</span>
|
|
<span class="c">* implementation, it has the ability to render a calendar widget on the page</span>
|
|
<span class="c">* that can be manipulated to select a single date, move back and forth between</span>
|
|
<span class="c">* months and years.</span>
|
|
<span class="c">* <p>To construct the placeholder for the calendar widget, the code is as</span>
|
|
<span class="c">* follows:</span>
|
|
<span class="c">* <xmp></span>
|
|
<span class="c">* <div id="cal1Container"></div></span>
|
|
<span class="c">* </xmp></span>
|
|
<span class="c">* Note that the table can be replaced with any kind of element.</span>
|
|
<span class="c">* </p></span>
|
|
<span class="c">* @namespace YAHOO.widget</span>
|
|
<span class="c">* @class Calendar</span>
|
|
<span class="c">* @constructor</span>
|
|
<span class="c">* @param {String} id The id of the table element that will represent the calendar widget</span>
|
|
<span class="c">* @param {String} containerId The id of the container div element that will wrap the calendar table</span>
|
|
<span class="c">* @param {Object} config The configuration object containing the Calendar's arguments</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">id</span><span class="o">,</span> <span class="nx">containerId</span><span class="o">,</span> <span class="nx">config</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">init</span><span class="o">(</span><span class="nx">id</span><span class="o">,</span> <span class="nx">containerId</span><span class="o">,</span> <span class="nx">config</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The path to be used for images loaded for the Calendar</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.IMG_ROOT</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @deprecated You can now customize images by overriding the calclose, calnavleft and calnavright default CSS classes for the close icon, left arrow and right arrow respectively</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">IMG_ROOT</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Type constant used for renderers to represent an individual date (M/D/Y)</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.DATE</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">DATE</span> <span class="o">=</span> <span class="s2">"D"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Type constant used for renderers to represent an individual date across any year (M/D)</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.MONTH_DAY</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MONTH_DAY</span> <span class="o">=</span> <span class="s2">"MD"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Type constant used for renderers to represent a weekday</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.WEEKDAY</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">WEEKDAY</span> <span class="o">=</span> <span class="s2">"WD"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Type constant used for renderers to represent a range of individual dates (M/D/Y-M/D/Y)</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.RANGE</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">RANGE</span> <span class="o">=</span> <span class="s2">"R"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Type constant used for renderers to represent a month across any year</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.MONTH</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MONTH</span> <span class="o">=</span> <span class="s2">"M"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Constant that represents the total number of date cells that are displayed in a given month</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.DISPLAY_DAYS</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type Number</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">DISPLAY_DAYS</span> <span class="o">=</span> <span class="m">42</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Constant used for halting the execution of the remainder of the render stack</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.STOP_RENDER</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">STOP_RENDER</span> <span class="o">=</span> <span class="s2">"S"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Constant used to represent short date field string formats (e.g. Tu or Feb)</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.SHORT</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">SHORT</span> <span class="o">=</span> <span class="s2">"short"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Constant used to represent long date field string formats (e.g. Monday or February)</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.LONG</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">LONG</span> <span class="o">=</span> <span class="s2">"long"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Constant used to represent medium date field string formats (e.g. Mon)</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.MEDIUM</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MEDIUM</span> <span class="o">=</span> <span class="s2">"medium"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Constant used to represent single character date field string formats (e.g. M, T, W)</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar.ONE_CHAR</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">ONE_CHAR</span> <span class="o">=</span> <span class="s2">"1char"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The set of default Config property keys and values for the Calendar</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar._DEFAULT_CONFIG</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @type Object</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span> <span class="o">=</span> <span class="o">{</span>
|
|
<span class="c">// Default values for pagedate and selected are not class level constants - they are set during instance creation </span>
|
|
<span class="c"></span> <span class="nx">PAGEDATE</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"pagedate"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">null</span><span class="o">},</span>
|
|
<span class="nx">SELECTED</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"selected"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">null</span><span class="o">},</span>
|
|
<span class="nx">TITLE</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"title"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="s2">""</span><span class="o">},</span>
|
|
<span class="nx">CLOSE</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"close"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">false</span><span class="o">},</span>
|
|
<span class="nx">IFRAME</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"iframe"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">true</span><span class="o">},</span>
|
|
<span class="nx">MINDATE</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"mindate"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">null</span><span class="o">},</span>
|
|
<span class="nx">MAXDATE</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"maxdate"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">null</span><span class="o">},</span>
|
|
<span class="nx">MULTI_SELECT</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"multi_select"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">false</span><span class="o">},</span>
|
|
<span class="nx">START_WEEKDAY</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"start_weekday"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">0</span><span class="o">},</span>
|
|
<span class="nx">SHOW_WEEKDAYS</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"show_weekdays"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">true</span><span class="o">},</span>
|
|
<span class="nx">SHOW_WEEK_HEADER</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"show_week_header"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">false</span><span class="o">},</span>
|
|
<span class="nx">SHOW_WEEK_FOOTER</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"show_week_footer"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">false</span><span class="o">},</span>
|
|
<span class="nx">HIDE_BLANK_WEEKS</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"hide_blank_weeks"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">false</span><span class="o">},</span>
|
|
<span class="nx">NAV_ARROW_LEFT</span><span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"nav_arrow_left"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">null</span><span class="o">}</span> <span class="o">,</span>
|
|
<span class="nx">NAV_ARROW_RIGHT</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"nav_arrow_right"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="kc">null</span><span class="o">}</span> <span class="o">,</span>
|
|
<span class="nx">MONTHS_SHORT</span> <span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"months_short"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:[</span><span class="s2">"Jan"</span><span class="o">,</span> <span class="s2">"Feb"</span><span class="o">,</span> <span class="s2">"Mar"</span><span class="o">,</span> <span class="s2">"Apr"</span><span class="o">,</span> <span class="s2">"May"</span><span class="o">,</span> <span class="s2">"Jun"</span><span class="o">,</span> <span class="s2">"Jul"</span><span class="o">,</span> <span class="s2">"Aug"</span><span class="o">,</span> <span class="s2">"Sep"</span><span class="o">,</span> <span class="s2">"Oct"</span><span class="o">,</span> <span class="s2">"Nov"</span><span class="o">,</span> <span class="s2">"Dec"</span><span class="o">]},</span>
|
|
<span class="nx">MONTHS_LONG</span><span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"months_long"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:[</span><span class="s2">"January"</span><span class="o">,</span> <span class="s2">"February"</span><span class="o">,</span> <span class="s2">"March"</span><span class="o">,</span> <span class="s2">"April"</span><span class="o">,</span> <span class="s2">"May"</span><span class="o">,</span> <span class="s2">"June"</span><span class="o">,</span> <span class="s2">"July"</span><span class="o">,</span> <span class="s2">"August"</span><span class="o">,</span> <span class="s2">"September"</span><span class="o">,</span> <span class="s2">"October"</span><span class="o">,</span> <span class="s2">"November"</span><span class="o">,</span> <span class="s2">"December"</span><span class="o">]},</span>
|
|
<span class="nx">WEEKDAYS_1CHAR</span><span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"weekdays_1char"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:[</span><span class="s2">"S"</span><span class="o">,</span> <span class="s2">"M"</span><span class="o">,</span> <span class="s2">"T"</span><span class="o">,</span> <span class="s2">"W"</span><span class="o">,</span> <span class="s2">"T"</span><span class="o">,</span> <span class="s2">"F"</span><span class="o">,</span> <span class="s2">"S"</span><span class="o">]},</span>
|
|
<span class="nx">WEEKDAYS_SHORT</span><span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"weekdays_short"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:[</span><span class="s2">"Su"</span><span class="o">,</span> <span class="s2">"Mo"</span><span class="o">,</span> <span class="s2">"Tu"</span><span class="o">,</span> <span class="s2">"We"</span><span class="o">,</span> <span class="s2">"Th"</span><span class="o">,</span> <span class="s2">"Fr"</span><span class="o">,</span> <span class="s2">"Sa"</span><span class="o">]},</span>
|
|
<span class="nx">WEEKDAYS_MEDIUM</span><span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"weekdays_medium"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:[</span><span class="s2">"Sun"</span><span class="o">,</span> <span class="s2">"Mon"</span><span class="o">,</span> <span class="s2">"Tue"</span><span class="o">,</span> <span class="s2">"Wed"</span><span class="o">,</span> <span class="s2">"Thu"</span><span class="o">,</span> <span class="s2">"Fri"</span><span class="o">,</span> <span class="s2">"Sat"</span><span class="o">]},</span>
|
|
<span class="nx">WEEKDAYS_LONG</span><span class="o">:</span> <span class="o">{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"weekdays_long"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:[</span><span class="s2">"Sunday"</span><span class="o">,</span> <span class="s2">"Monday"</span><span class="o">,</span> <span class="s2">"Tuesday"</span><span class="o">,</span> <span class="s2">"Wednesday"</span><span class="o">,</span> <span class="s2">"Thursday"</span><span class="o">,</span> <span class="s2">"Friday"</span><span class="o">,</span> <span class="s2">"Saturday"</span><span class="o">]},</span>
|
|
<span class="nx">LOCALE_MONTHS</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"locale_months"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="s2">"long"</span><span class="o">},</span>
|
|
<span class="nx">LOCALE_WEEKDAYS</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"locale_weekdays"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="s2">"short"</span><span class="o">},</span>
|
|
<span class="nx">DATE_DELIMITER</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"date_delimiter"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="s2">","</span><span class="o">},</span>
|
|
<span class="nx">DATE_FIELD_DELIMITER</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"date_field_delimiter"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="s2">"/"</span><span class="o">},</span>
|
|
<span class="nx">DATE_RANGE_DELIMITER</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"date_range_delimiter"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="s2">"-"</span><span class="o">},</span>
|
|
<span class="nx">MY_MONTH_POSITION</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"my_month_position"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">1</span><span class="o">},</span>
|
|
<span class="nx">MY_YEAR_POSITION</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"my_year_position"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">2</span><span class="o">},</span>
|
|
<span class="nx">MD_MONTH_POSITION</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"md_month_position"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">1</span><span class="o">},</span>
|
|
<span class="nx">MD_DAY_POSITION</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"md_day_position"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">2</span><span class="o">},</span>
|
|
<span class="nx">MDY_MONTH_POSITION</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"mdy_month_position"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">1</span><span class="o">},</span>
|
|
<span class="nx">MDY_DAY_POSITION</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"mdy_day_position"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">2</span><span class="o">},</span>
|
|
<span class="nx">MDY_YEAR_POSITION</span><span class="o">:{</span><span class="nx">key</span><span class="o">:</span><span class="s2">"mdy_year_position"</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span><span class="m">3</span><span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The set of Custom Event types supported by the Calendar</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar._EVENT_TYPES</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @type Object</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_EVENT_TYPES</span> <span class="o">=</span> <span class="o">{</span>
|
|
<span class="nx">BEFORE_SELECT</span> <span class="o">:</span> <span class="s2">"beforeSelect"</span><span class="o">,</span>
|
|
<span class="nx">SELECT</span> <span class="o">:</span> <span class="s2">"select"</span><span class="o">,</span>
|
|
<span class="nx">BEFORE_DESELECT</span> <span class="o">:</span> <span class="s2">"beforeDeselect"</span><span class="o">,</span>
|
|
<span class="nx">DESELECT</span> <span class="o">:</span> <span class="s2">"deselect"</span><span class="o">,</span>
|
|
<span class="nx">CHANGE_PAGE</span> <span class="o">:</span> <span class="s2">"changePage"</span><span class="o">,</span>
|
|
<span class="nx">BEFORE_RENDER</span> <span class="o">:</span> <span class="s2">"beforeRender"</span><span class="o">,</span>
|
|
<span class="nx">RENDER</span> <span class="o">:</span> <span class="s2">"render"</span><span class="o">,</span>
|
|
<span class="nx">RESET</span> <span class="o">:</span> <span class="s2">"reset"</span><span class="o">,</span>
|
|
<span class="nx">CLEAR</span> <span class="o">:</span> <span class="s2">"clear"</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The set of default style constants for the Calendar</span>
|
|
<span class="c">* @property YAHOO.widget.Calendar._STYLES</span>
|
|
<span class="c">* @final</span>
|
|
<span class="c">* @static</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @type Object</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_STYLES</span> <span class="o">=</span> <span class="o">{</span>
|
|
<span class="nx">CSS_ROW_HEADER</span><span class="o">:</span> <span class="s2">"calrowhead"</span><span class="o">,</span>
|
|
<span class="nx">CSS_ROW_FOOTER</span><span class="o">:</span> <span class="s2">"calrowfoot"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL</span> <span class="o">:</span> <span class="s2">"calcell"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_SELECTOR</span> <span class="o">:</span> <span class="s2">"selector"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_SELECTED</span> <span class="o">:</span> <span class="s2">"selected"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_SELECTABLE</span> <span class="o">:</span> <span class="s2">"selectable"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_RESTRICTED</span> <span class="o">:</span> <span class="s2">"restricted"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_TODAY</span> <span class="o">:</span> <span class="s2">"today"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_OOM</span> <span class="o">:</span> <span class="s2">"oom"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_OOB</span> <span class="o">:</span> <span class="s2">"previous"</span><span class="o">,</span>
|
|
<span class="nx">CSS_HEADER</span> <span class="o">:</span> <span class="s2">"calheader"</span><span class="o">,</span>
|
|
<span class="nx">CSS_HEADER_TEXT</span> <span class="o">:</span> <span class="s2">"calhead"</span><span class="o">,</span>
|
|
<span class="nx">CSS_BODY</span> <span class="o">:</span> <span class="s2">"calbody"</span><span class="o">,</span>
|
|
<span class="nx">CSS_WEEKDAY_CELL</span> <span class="o">:</span> <span class="s2">"calweekdaycell"</span><span class="o">,</span>
|
|
<span class="nx">CSS_WEEKDAY_ROW</span> <span class="o">:</span> <span class="s2">"calweekdayrow"</span><span class="o">,</span>
|
|
<span class="nx">CSS_FOOTER</span> <span class="o">:</span> <span class="s2">"calfoot"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CALENDAR</span> <span class="o">:</span> <span class="s2">"yui-calendar"</span><span class="o">,</span>
|
|
<span class="nx">CSS_SINGLE</span> <span class="o">:</span> <span class="s2">"single"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CONTAINER</span> <span class="o">:</span> <span class="s2">"yui-calcontainer"</span><span class="o">,</span>
|
|
<span class="nx">CSS_NAV_LEFT</span> <span class="o">:</span> <span class="s2">"calnavleft"</span><span class="o">,</span>
|
|
<span class="nx">CSS_NAV_RIGHT</span> <span class="o">:</span> <span class="s2">"calnavright"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CLOSE</span> <span class="o">:</span> <span class="s2">"calclose"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_TOP</span> <span class="o">:</span> <span class="s2">"calcelltop"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_LEFT</span> <span class="o">:</span> <span class="s2">"calcellleft"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_RIGHT</span> <span class="o">:</span> <span class="s2">"calcellright"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_BOTTOM</span> <span class="o">:</span> <span class="s2">"calcellbottom"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_HOVER</span> <span class="o">:</span> <span class="s2">"calcellhover"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT1</span> <span class="o">:</span> <span class="s2">"highlight1"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT2</span> <span class="o">:</span> <span class="s2">"highlight2"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT3</span> <span class="o">:</span> <span class="s2">"highlight3"</span><span class="o">,</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT4</span> <span class="o">:</span> <span class="s2">"highlight4"</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span> <span class="o">=</span> <span class="o">{</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The configuration object used to set up the calendars various locale and style options.</span>
|
|
<span class="c"> * @property Config</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> * @deprecated Configuration properties should be set by calling Calendar.cfg.setProperty.</span>
|
|
<span class="c"> * @type Object</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Config</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The parent CalendarGroup, only to be set explicitly by the parent group</span>
|
|
<span class="c"> * @property parent</span>
|
|
<span class="c"> * @type CalendarGroup</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">parent</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The index of this item in the parent group</span>
|
|
<span class="c"> * @property index</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">index</span> <span class="o">:</span> <span class="o">-</span><span class="m">1</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The collection of calendar table cells</span>
|
|
<span class="c"> * @property cells</span>
|
|
<span class="c"> * @type HTMLTableCellElement[]</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">cells</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The collection of calendar cell dates that is parallel to the cells collection. The array contains dates field arrays in the format of [YYYY, M, D].</span>
|
|
<span class="c"> * @property cellDates</span>
|
|
<span class="c"> * @type Array[](Number[])</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">cellDates</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The id that uniquely identifies this calendar. This id should match the id of the placeholder element on the page.</span>
|
|
<span class="c"> * @property id</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">id</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The DOM element reference that points to this calendar's container element. The calendar will be inserted into this element when the shell is rendered.</span>
|
|
<span class="c"> * @property oDomContainer</span>
|
|
<span class="c"> * @type HTMLElement</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">oDomContainer</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * A Date object representing today's date.</span>
|
|
<span class="c"> * @property today</span>
|
|
<span class="c"> * @type Date</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">today</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The list of render functions, along with required parameters, used to render cells. </span>
|
|
<span class="c"> * @property renderStack</span>
|
|
<span class="c"> * @type Array[]</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">renderStack</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * A copy of the initial render functions created before rendering.</span>
|
|
<span class="c"> * @property _renderStack</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> * @type Array</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">_renderStack</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The private list of initially selected dates.</span>
|
|
<span class="c"> * @property _selectedDates</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> * @type Array</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">_selectedDates</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * A map of DOM event handlers to attach to cells associated with specific CSS class names</span>
|
|
<span class="c"> * @property domEventMap</span>
|
|
<span class="c"> * @type Object</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">domEventMap</span> <span class="o">:</span> <span class="kc">null</span>
|
|
<span class="o">};</span>
|
|
|
|
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Initializes the Calendar widget.</span>
|
|
<span class="c">* @method init</span>
|
|
<span class="c">* @param {String} id The id of the table element that will represent the calendar widget</span>
|
|
<span class="c">* @param {String} containerId The id of the container div element that will wrap the calendar table</span>
|
|
<span class="c">* @param {Object} config The configuration object containing the Calendar's arguments</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">init</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">id</span><span class="o">,</span> <span class="nx">containerId</span><span class="o">,</span> <span class="nx">config</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">LogWriter</span><span class="o">(</span><span class="s2">"Calendar_Core "</span> <span class="o">+</span> <span class="nx">id</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">initEvents</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">today</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">();</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">clearTime</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">today</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">id</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span> <span class="o">=</span> <span class="nb">document</span><span class="o">.</span><span class="nx">getElementById</span><span class="o">(</span><span class="nx">containerId</span><span class="o">);</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">)</span> <span class="o">{</span> <span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"No valid container present."</span><span class="o">,</span> <span class="s2">"error"</span><span class="o">);</span> <span class="o">}</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The Config object used to hold the configuration variables for the Calendar</span>
|
|
<span class="c"> * @property cfg</span>
|
|
<span class="c"> * @type YAHOO.util.Config</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Config</span><span class="o">(</span><span class="k">this</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The local object which contains the Calendar's options</span>
|
|
<span class="c"> * @property Options</span>
|
|
<span class="c"> * @type Object</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Options</span> <span class="o">=</span> <span class="o">{};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The local object which contains the Calendar's locale settings</span>
|
|
<span class="c"> * @property Locale</span>
|
|
<span class="c"> * @type Object</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span> <span class="o">=</span> <span class="o">{};</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">initStyles</span><span class="o">();</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CONTAINER</span><span class="o">);</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_SINGLE</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cellDates</span> <span class="o">=</span> <span class="o">[];</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cells</span> <span class="o">=</span> <span class="o">[];</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span> <span class="o">=</span> <span class="o">[];</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_renderStack</span> <span class="o">=</span> <span class="o">[];</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">setupConfig</span><span class="o">();</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">config</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">applyConfig</span><span class="o">(</span><span class="nx">config</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">fireQueue</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the built-in IFRAME shim for the IE6 and below</span>
|
|
<span class="c">* @method configIframe</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configIframe</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">useIframe</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">inDocument</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">useIframe</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">pos</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"position"</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">browser</span> <span class="o">==</span> <span class="s2">"ie"</span> <span class="o">&&</span> <span class="o">(</span><span class="nx">pos</span> <span class="o">==</span> <span class="s2">"absolute"</span> <span class="o">||</span> <span class="nx">pos</span> <span class="o">==</span> <span class="s2">"relative"</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">inDocument</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span> <span class="o">=</span> <span class="nb">document</span><span class="o">.</span><span class="nx">createElement</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">.</span><span class="nx">src</span> <span class="o">=</span> <span class="s2">"javascript:false;"</span><span class="o">;</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">,</span> <span class="s2">"opacity"</span><span class="o">,</span> <span class="s2">"0"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">insertBefore</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">firstChild</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">removeChild</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Default handler for the "title" property</span>
|
|
<span class="c">* @method configTitle</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configTitle</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">title</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">close</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CLOSE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">titleDiv</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">title</span> <span class="o">&&</span> <span class="nx">title</span> <span class="o">!==</span> <span class="s2">""</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">titleDiv</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsByClassName</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">CalendarGroup</span><span class="o">.</span><span class="nx">CSS_2UPTITLE</span><span class="o">,</span> <span class="s2">"div"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">)[</span><span class="m">0</span><span class="o">]</span> <span class="o">||</span> <span class="nb">document</span><span class="o">.</span><span class="nx">createElement</span><span class="o">(</span><span class="s2">"div"</span><span class="o">);</span>
|
|
<span class="nx">titleDiv</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">CalendarGroup</span><span class="o">.</span><span class="nx">CSS_2UPTITLE</span><span class="o">;</span>
|
|
<span class="nx">titleDiv</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">title</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">insertBefore</span><span class="o">(</span><span class="nx">titleDiv</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">firstChild</span><span class="o">);</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"withtitle"</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">titleDiv</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsByClassName</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">CalendarGroup</span><span class="o">.</span><span class="nx">CSS_2UPTITLE</span><span class="o">,</span> <span class="s2">"div"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">)[</span><span class="m">0</span><span class="o">]</span> <span class="o">||</span> <span class="kc">null</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">titleDiv</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">purgeElement</span><span class="o">(</span><span class="nx">titleDiv</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">removeChild</span><span class="o">(</span><span class="nx">titleDiv</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">close</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"withtitle"</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Default handler for the "close" property</span>
|
|
<span class="c">* @method configClose</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configClose</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">close</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">title</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">TITLE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">DEPR_CLOSE_PATH</span> <span class="o">=</span> <span class="s2">"us/my/bn/x_d.gif"</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">linkClose</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">close</span> <span class="o">===</span> <span class="kc">true</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">linkClose</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsByClassName</span><span class="o">(</span><span class="s2">"link-close"</span><span class="o">,</span> <span class="s2">"a"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">)[</span><span class="m">0</span><span class="o">]</span> <span class="o">||</span> <span class="nb">document</span><span class="o">.</span><span class="nx">createElement</span><span class="o">(</span><span class="s2">"a"</span><span class="o">);</span>
|
|
<span class="nx">linkClose</span><span class="o">.</span><span class="nx">href</span> <span class="o">=</span> <span class="s2">"#"</span><span class="o">;</span>
|
|
<span class="nx">linkClose</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s2">"link-close"</span><span class="o">;</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">(</span><span class="nx">linkClose</span><span class="o">,</span> <span class="s2">"click"</span><span class="o">,</span> <span class="k">function</span><span class="o">(</span><span class="nx">e</span><span class="o">,</span> <span class="nx">cal</span><span class="o">)</span> <span class="o">{</span><span class="nx">cal</span><span class="o">.</span><span class="nx">hide</span><span class="o">();</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">(</span><span class="nx">e</span><span class="o">);</span> <span class="o">},</span> <span class="k">this</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">IMG_ROOT</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">imgClose</span> <span class="o">=</span> <span class="nb">document</span><span class="o">.</span><span class="nx">createElement</span><span class="o">(</span><span class="s2">"img"</span><span class="o">);</span>
|
|
<span class="nx">imgClose</span><span class="o">.</span><span class="nx">src</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">IMG_ROOT</span> <span class="o">+</span> <span class="nx">DEPR_CLOSE_PATH</span><span class="o">;</span>
|
|
<span class="nx">imgClose</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">CalendarGroup</span><span class="o">.</span><span class="nx">CSS_2UPCLOSE</span><span class="o">;</span>
|
|
<span class="nx">linkClose</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">imgClose</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">linkClose</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s1">'<span class="'</span> <span class="o">+</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">CalendarGroup</span><span class="o">.</span><span class="nx">CSS_2UPCLOSE</span> <span class="o">+</span> <span class="s1">' '</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CLOSE</span> <span class="o">+</span> <span class="s1">'"></span>'</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">linkClose</span><span class="o">);</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"withtitle"</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">linkClose</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsByClassName</span><span class="o">(</span><span class="s2">"link-close"</span><span class="o">,</span> <span class="s2">"a"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">)[</span><span class="m">0</span><span class="o">]</span> <span class="o">||</span> <span class="kc">null</span><span class="o">;</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">linkClose</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">purgeElement</span><span class="o">(</span><span class="nx">linkClose</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">removeChild</span><span class="o">(</span><span class="nx">linkClose</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">title</span> <span class="o">||</span> <span class="nx">title</span> <span class="o">===</span> <span class="s2">""</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"withtitle"</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Initializes Calendar's built-in CustomEvents</span>
|
|
<span class="c">* @method initEvents</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">initEvents</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">defEvents</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_EVENT_TYPES</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired before a selection is made</span>
|
|
<span class="c"> * @event beforeSelectEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeSelectEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">BEFORE_SELECT</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired when a selection is made</span>
|
|
<span class="c"> * @event selectEvent</span>
|
|
<span class="c"> * @param {Array} Array of Date field arrays in the format [YYYY, MM, DD].</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">selectEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">SELECT</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired before a selection is made</span>
|
|
<span class="c"> * @event beforeDeselectEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeDeselectEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">BEFORE_DESELECT</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired when a selection is made</span>
|
|
<span class="c"> * @event deselectEvent</span>
|
|
<span class="c"> * @param {Array} Array of Date field arrays in the format [YYYY, MM, DD].</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">deselectEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">DESELECT</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired when the Calendar page is changed</span>
|
|
<span class="c"> * @event changePageEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changePageEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">CHANGE_PAGE</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired before the Calendar is rendered</span>
|
|
<span class="c"> * @event beforeRenderEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeRenderEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">BEFORE_RENDER</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired when the Calendar is rendered</span>
|
|
<span class="c"> * @event renderEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">RENDER</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired when the Calendar is reset</span>
|
|
<span class="c"> * @event resetEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">RESET</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Fired when the Calendar is cleared</span>
|
|
<span class="c"> * @event clearEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">clearEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">(</span><span class="nx">defEvents</span><span class="o">.</span><span class="nx">CLEAR</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeSelectEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onBeforeSelect</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">selectEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onSelect</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeDeselectEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onBeforeDeselect</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">deselectEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onDeselect</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changePageEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onChangePage</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onRender</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onReset</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">clearEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">onClear</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default event function that is attached to a date link within a calendar cell</span>
|
|
<span class="c">* when the calendar is rendered.</span>
|
|
<span class="c">* @method doSelectCell</span>
|
|
<span class="c">* @param {DOMEvent} e The event</span>
|
|
<span class="c">* @param {Calendar} cal A reference to the calendar passed by the Event utility</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">doSelectCell</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">e</span><span class="o">,</span> <span class="nx">cal</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">cell</span><span class="o">,</span><span class="nx">index</span><span class="o">,</span><span class="nx">d</span><span class="o">,</span><span class="nx">date</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">target</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">getTarget</span><span class="o">(</span><span class="nx">e</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">tagName</span> <span class="o">=</span> <span class="nx">target</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">();</span>
|
|
<span class="k">var</span> <span class="nx">defSelector</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
|
|
|
<span class="k">while</span> <span class="o">(</span><span class="nx">tagName</span> <span class="o">!=</span> <span class="s2">"td"</span> <span class="o">&&</span> <span class="o">!</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTABLE</span><span class="o">))</span> <span class="o">{</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">defSelector</span> <span class="o">&&</span> <span class="nx">tagName</span> <span class="o">==</span> <span class="s2">"a"</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTOR</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">defSelector</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="nx">target</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
<span class="nx">tagName</span> <span class="o">=</span> <span class="nx">target</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">();</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">tagName</span> <span class="o">==</span> <span class="s2">"html"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">defSelector</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="c">// Stop link href navigation for default renderer</span>
|
|
<span class="c"></span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">(</span><span class="nx">e</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">cell</span> <span class="o">=</span> <span class="nx">target</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTABLE</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">index</span> <span class="o">=</span> <span class="nx">cell</span><span class="o">.</span><span class="nx">id</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="s2">"cell"</span><span class="o">)[</span><span class="m">1</span><span class="o">];</span>
|
|
<span class="nx">d</span> <span class="o">=</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">[</span><span class="nx">index</span><span class="o">];</span>
|
|
<span class="nx">date</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">d</span><span class="o">[</span><span class="m">0</span><span class="o">],</span><span class="nx">d</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span><span class="nx">d</span><span class="o">[</span><span class="m">2</span><span class="o">]);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">link</span><span class="o">;</span>
|
|
|
|
<span class="nx">cal</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Selecting cell "</span> <span class="o">+</span> <span class="nx">index</span> <span class="o">+</span> <span class="s2">" via click"</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">cal</span><span class="o">.</span><span class="nx">Options</span><span class="o">.</span><span class="nx">MULTI_SELECT</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">link</span> <span class="o">=</span> <span class="nx">cell</span><span class="o">.</span><span class="nx">getElementsByTagName</span><span class="o">(</span><span class="s2">"a"</span><span class="o">)[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">link</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">link</span><span class="o">.</span><span class="nx">blur</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cellDate</span> <span class="o">=</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">[</span><span class="nx">index</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">cellDateIndex</span> <span class="o">=</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">_indexOfSelectedFieldArray</span><span class="o">(</span><span class="nx">cellDate</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">cellDateIndex</span> <span class="o">></span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">cal</span><span class="o">.</span><span class="nx">deselectCell</span><span class="o">(</span><span class="nx">index</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">cal</span><span class="o">.</span><span class="nx">selectCell</span><span class="o">(</span><span class="nx">index</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">link</span> <span class="o">=</span> <span class="nx">cell</span><span class="o">.</span><span class="nx">getElementsByTagName</span><span class="o">(</span><span class="s2">"a"</span><span class="o">)[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">link</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">link</span><span class="o">.</span><span class="nx">blur</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="nx">cal</span><span class="o">.</span><span class="nx">selectCell</span><span class="o">(</span><span class="nx">index</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The event that is executed when the user hovers over a cell</span>
|
|
<span class="c">* @method doCellMouseOver</span>
|
|
<span class="c">* @param {DOMEvent} e The event</span>
|
|
<span class="c">* @param {Calendar} cal A reference to the calendar passed by the Event utility</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">doCellMouseOver</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">e</span><span class="o">,</span> <span class="nx">cal</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">target</span><span class="o">;</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">e</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">getTarget</span><span class="o">(</span><span class="nx">e</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">while</span> <span class="o">(</span><span class="nx">target</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">!=</span> <span class="s2">"td"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="nx">target</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">target</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">==</span> <span class="s2">"html"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTABLE</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_HOVER</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The event that is executed when the user moves the mouse out of a cell</span>
|
|
<span class="c">* @method doCellMouseOut</span>
|
|
<span class="c">* @param {DOMEvent} e The event</span>
|
|
<span class="c">* @param {Calendar} cal A reference to the calendar passed by the Event utility</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">doCellMouseOut</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">e</span><span class="o">,</span> <span class="nx">cal</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">target</span><span class="o">;</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">e</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">getTarget</span><span class="o">(</span><span class="nx">e</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">while</span> <span class="o">(</span><span class="nx">target</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">!=</span> <span class="s2">"td"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="nx">target</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">target</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">==</span> <span class="s2">"html"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTABLE</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_HOVER</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">setupConfig</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The month/year representing the current visible Calendar date (mm/yyyy)</span>
|
|
<span class="c"> * @config pagedate</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default today's date</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="k">new</span> <span class="nb">Date</span><span class="o">(),</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configPageDate</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The date or range of dates representing the current Calendar selection</span>
|
|
<span class="c"> * @config selected</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default []</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:[],</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configSelected</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The title to display above the Calendar's month header</span>
|
|
<span class="c"> * @config title</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default ""</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">TITLE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">TITLE</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configTitle</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Whether or not a close button should be displayed for this Calendar</span>
|
|
<span class="c"> * @config close</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default false</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">CLOSE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">CLOSE</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configClose</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Whether or not an iframe shim should be placed under the Calendar to prevent select boxes from bleeding through in Internet Explorer 6 and below.</span>
|
|
<span class="c"> * @config iframe</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default true</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">IFRAME</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">IFRAME</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configIframe</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkBoolean</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The minimum selectable date in the current Calendar (mm/dd/yyyy)</span>
|
|
<span class="c"> * @config mindate</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MINDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MINDATE</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configMinDate</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The maximum selectable date in the current Calendar (mm/dd/yyyy)</span>
|
|
<span class="c"> * @config maxdate</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MAXDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MAXDATE</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configMaxDate</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
|
|
<span class="c">// Options properties</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * True if the Calendar should allow multiple selections. False by default.</span>
|
|
<span class="c"> * @config MULTI_SELECT</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default false</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MULTI_SELECT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MULTI_SELECT</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkBoolean</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The weekday the week begins on. Default is 0 (Sunday).</span>
|
|
<span class="c"> * @config START_WEEKDAY</span>
|
|
<span class="c"> * @type number</span>
|
|
<span class="c"> * @default 0</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">START_WEEKDAY</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">START_WEEKDAY</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * True if the Calendar should show weekday labels. True by default.</span>
|
|
<span class="c"> * @config SHOW_WEEKDAYS</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default true</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEKDAYS</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEKDAYS</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkBoolean</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * True if the Calendar should show week row headers. False by default.</span>
|
|
<span class="c"> * @config SHOW_WEEK_HEADER</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default false</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_HEADER</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_HEADER</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkBoolean</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * True if the Calendar should show week row footers. False by default.</span>
|
|
<span class="c"> * @config SHOW_WEEK_FOOTER</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default false</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_FOOTER</span><span class="o">.</span><span class="nx">key</span><span class="o">,{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_FOOTER</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkBoolean</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * True if the Calendar should suppress weeks that are not a part of the current month. False by default.</span>
|
|
<span class="c"> * @config HIDE_BLANK_WEEKS</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default false</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">HIDE_BLANK_WEEKS</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">HIDE_BLANK_WEEKS</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkBoolean</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The image that should be used for the left navigation arrow.</span>
|
|
<span class="c"> * @config NAV_ARROW_LEFT</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @deprecated You can customize the image by overriding the default CSS class for the left arrow - "calnavleft" </span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">NAV_ARROW_LEFT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">NAV_ARROW_LEFT</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The image that should be used for the right navigation arrow.</span>
|
|
<span class="c"> * @config NAV_ARROW_RIGHT</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @deprecated You can customize the image by overriding the default CSS class for the right arrow - "calnavright"</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">NAV_ARROW_RIGHT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">NAV_ARROW_RIGHT</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configOptions</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">// Locale properties</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The short month labels for the current locale.</span>
|
|
<span class="c"> * @config MONTHS_SHORT</span>
|
|
<span class="c"> * @type String[]</span>
|
|
<span class="c"> * @default ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_SHORT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_SHORT</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The long month labels for the current locale.</span>
|
|
<span class="c"> * @config MONTHS_LONG</span>
|
|
<span class="c"> * @type String[]</span>
|
|
<span class="c"> * @default ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_LONG</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_LONG</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The 1-character weekday labels for the current locale.</span>
|
|
<span class="c"> * @config WEEKDAYS_1CHAR</span>
|
|
<span class="c"> * @type String[]</span>
|
|
<span class="c"> * @default ["S", "M", "T", "W", "T", "F", "S"]</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_1CHAR</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_1CHAR</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The short weekday labels for the current locale.</span>
|
|
<span class="c"> * @config WEEKDAYS_SHORT</span>
|
|
<span class="c"> * @type String[]</span>
|
|
<span class="c"> * @default ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"]</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_SHORT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_SHORT</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The medium weekday labels for the current locale.</span>
|
|
<span class="c"> * @config WEEKDAYS_MEDIUM</span>
|
|
<span class="c"> * @type String[]</span>
|
|
<span class="c"> * @default ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_MEDIUM</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_MEDIUM</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The long weekday labels for the current locale.</span>
|
|
<span class="c"> * @config WEEKDAYS_LONG</span>
|
|
<span class="c"> * @type String[]</span>
|
|
<span class="c"> * @default ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_LONG</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_LONG</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Refreshes the locale values used to build the Calendar.</span>
|
|
<span class="c"> * @method refreshLocale</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">var</span> <span class="nx">refreshLocale</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">subscribeToConfigEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">START_WEEKDAY</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">refreshLocale</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">subscribeToConfigEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_SHORT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">refreshLocale</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">subscribeToConfigEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_LONG</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">refreshLocale</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">subscribeToConfigEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_1CHAR</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">refreshLocale</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">subscribeToConfigEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_SHORT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">refreshLocale</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">subscribeToConfigEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_MEDIUM</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">refreshLocale</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">subscribeToConfigEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_LONG</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">refreshLocale</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The setting that determines which length of month labels should be used. Possible values are "short" and "long".</span>
|
|
<span class="c"> * @config LOCALE_MONTHS</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default "long"</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocaleValues</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The setting that determines which length of weekday labels should be used. Possible values are "1char", "short", "medium", and "long".</span>
|
|
<span class="c"> * @config LOCALE_WEEKDAYS</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default "short"</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocaleValues</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The value used to delimit individual dates in a date string passed to various Calendar functions.</span>
|
|
<span class="c"> * @config DATE_DELIMITER</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default ","</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">DATE_DELIMITER</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">DATE_DELIMITER</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The value used to delimit date fields in a date string passed to various Calendar functions.</span>
|
|
<span class="c"> * @config DATE_FIELD_DELIMITER</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default "/"</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">DATE_FIELD_DELIMITER</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">DATE_FIELD_DELIMITER</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The value used to delimit date ranges in a date string passed to various Calendar functions.</span>
|
|
<span class="c"> * @config DATE_RANGE_DELIMITER</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default "-"</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">DATE_RANGE_DELIMITER</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">DATE_RANGE_DELIMITER</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The position of the month in a month/year date string</span>
|
|
<span class="c"> * @config MY_MONTH_POSITION</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default 1</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MY_MONTH_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MY_MONTH_POSITION</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The position of the year in a month/year date string</span>
|
|
<span class="c"> * @config MY_YEAR_POSITION</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default 2</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MY_YEAR_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MY_YEAR_POSITION</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The position of the month in a month/day date string</span>
|
|
<span class="c"> * @config MD_MONTH_POSITION</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default 1</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MD_MONTH_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MD_MONTH_POSITION</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The position of the day in a month/year date string</span>
|
|
<span class="c"> * @config MD_DAY_POSITION</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default 2</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MD_DAY_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MD_DAY_POSITION</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The position of the month in a month/day/year date string</span>
|
|
<span class="c"> * @config MDY_MONTH_POSITION</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default 1</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MDY_MONTH_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MDY_MONTH_POSITION</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The position of the day in a month/day/year date string</span>
|
|
<span class="c"> * @config MDY_DAY_POSITION</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default 2</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MDY_DAY_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MDY_DAY_POSITION</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The position of the year in a month/day/year date string</span>
|
|
<span class="c"> * @config MDY_YEAR_POSITION</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default 3</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MDY_YEAR_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span> <span class="nx">value</span><span class="o">:</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MDY_YEAR_POSITION</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">configLocale</span><span class="o">,</span> <span class="nx">validator</span><span class="o">:</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">checkNumber</span> <span class="o">}</span> <span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default handler for the "pagedate" property</span>
|
|
<span class="c">* @method configPageDate</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configPageDate</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parsePageDate</span><span class="o">(</span><span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">]),</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default handler for the "mindate" property</span>
|
|
<span class="c">* @method configMinDate</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configMinDate</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">val</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">val</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDate</span><span class="o">(</span><span class="nx">val</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">MINDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">val</span><span class="o">[</span><span class="m">0</span><span class="o">],(</span><span class="nx">val</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">),</span><span class="nx">val</span><span class="o">[</span><span class="m">2</span><span class="o">]));</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default handler for the "maxdate" property</span>
|
|
<span class="c">* @method configMaxDate</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configMaxDate</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">val</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">val</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDate</span><span class="o">(</span><span class="nx">val</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">MAXDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">val</span><span class="o">[</span><span class="m">0</span><span class="o">],(</span><span class="nx">val</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">),</span><span class="nx">val</span><span class="o">[</span><span class="m">2</span><span class="o">]));</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default handler for the "selected" property</span>
|
|
<span class="c">* @method configSelected</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configSelected</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">cfgSelected</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">selected</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">selected</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDates</span><span class="o">(</span><span class="nx">selected</span><span class="o">),</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="k">this</span><span class="o">.</span><span class="nx">_selectedDates</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_selectedDates</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default handler for all configuration options properties</span>
|
|
<span class="c">* @method configOptions</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configOptions</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Options</span><span class="o">[</span><span class="nx">type</span><span class="o">.</span><span class="nx">toUpperCase</span><span class="o">()]</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default handler for all configuration locale properties</span>
|
|
<span class="c">* @method configLocale</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configLocale</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">[</span><span class="nx">type</span><span class="o">.</span><span class="nx">toUpperCase</span><span class="o">()]</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The default handler for all configuration locale field length properties</span>
|
|
<span class="c">* @method configLocaleValues</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">configLocaleValues</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="nx">type</span> <span class="o">=</span> <span class="nx">type</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">();</span>
|
|
<span class="k">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="nx">switch</span> <span class="o">(</span><span class="nx">type</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">case</span> <span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span><span class="o">.</span><span class="nx">key</span><span class="o">:</span>
|
|
<span class="nx">switch</span> <span class="o">(</span><span class="nx">val</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">SHORT</span><span class="o">:</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_SHORT</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">LONG</span><span class="o">:</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MONTHS_LONG</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">defCfg</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">key</span><span class="o">:</span>
|
|
<span class="nx">switch</span> <span class="o">(</span><span class="nx">val</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">ONE_CHAR</span><span class="o">:</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_1CHAR</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">SHORT</span><span class="o">:</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_SHORT</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MEDIUM</span><span class="o">:</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_MEDIUM</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">LONG</span><span class="o">:</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">WEEKDAYS_LONG</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">var</span> <span class="nx">START_WEEKDAY</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">START_WEEKDAY</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">START_WEEKDAY</span> <span class="o">></span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">w</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">w</span><span class="o"><</span><span class="nx">START_WEEKDAY</span><span class="o">;++</span><span class="nx">w</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">shift</span><span class="o">());</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Defines the style constants for the Calendar</span>
|
|
<span class="c">* @method initStyles</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">initStyles</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">defStyle</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_STYLES</span><span class="o">;</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">Style</span> <span class="o">=</span> <span class="o">{</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_ROW_HEADER</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_ROW_HEADER</span><span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_ROW_HEADER</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_ROW_FOOTER</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_ROW_FOOTER</span><span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_ROW_FOOTER</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_SELECTOR</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_SELECTOR</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTOR</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_SELECTED</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_SELECTED</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTED</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_SELECTABLE</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_SELECTABLE</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTABLE</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_RESTRICTED</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_RESTRICTED</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_RESTRICTED</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_TODAY</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_TODAY</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_TODAY</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_OOM</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_OOM</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_OOM</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_OOB</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_OOB</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_OOB</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_HEADER</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_HEADER</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_HEADER</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_HEADER_TEXT</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_HEADER_TEXT</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_HEADER_TEXT</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_BODY</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_BODY</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_BODY</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_WEEKDAY_CELL</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_WEEKDAY_CELL</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_WEEKDAY_CELL</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_WEEKDAY_ROW</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_WEEKDAY_ROW</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_WEEKDAY_ROW</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_FOOTER</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_FOOTER</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_FOOTER</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CALENDAR</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CALENDAR</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CALENDAR</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_SINGLE</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_SINGLE</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_SINGLE</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CONTAINER</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CONTAINER</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CONTAINER</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_NAV_LEFT</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_NAV_LEFT</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_NAV_LEFT</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_NAV_RIGHT</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_NAV_RIGHT</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_NAV_RIGHT</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CLOSE</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CLOSE</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CLOSE</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_TOP</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_TOP</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_TOP</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_LEFT</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_LEFT</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_LEFT</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_RIGHT</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_RIGHT</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_RIGHT</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_BOTTOM</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_BOTTOM</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_BOTTOM</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_HOVER</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_HOVER</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_HOVER</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_HIGHLIGHT1</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT1</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT1</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_HIGHLIGHT2</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT2</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT2</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_HIGHLIGHT3</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT3</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT3</span><span class="o">,</span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @property Style.CSS_CELL_HIGHLIGHT4</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">CSS_CELL_HIGHLIGHT4</span> <span class="o">:</span> <span class="nx">defStyle</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT4</span>
|
|
<span class="o">};</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Builds the date label that will be displayed in the calendar header or</span>
|
|
<span class="c">* footer, depending on configuration.</span>
|
|
<span class="c">* @method buildMonthLabel</span>
|
|
<span class="c">* @return {String} The formatted calendar month label</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">buildMonthLabel</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">pageDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_MONTHS</span><span class="o">[</span><span class="nx">pageDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()]</span> <span class="o">+</span> <span class="s2">" "</span> <span class="o">+</span> <span class="nx">pageDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Builds the date digit that will be displayed in calendar cells</span>
|
|
<span class="c">* @method buildDayLabel</span>
|
|
<span class="c">* @param {Date} workingDate The current working date</span>
|
|
<span class="c">* @return {String} The formatted day label</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">buildDayLabel</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the calendar header.</span>
|
|
<span class="c">* @method renderHeader</span>
|
|
<span class="c">* @param {Array} html The current working HTML array</span>
|
|
<span class="c">* @return {Array} The current working HTML array</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderHeader</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">html</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Rendering header"</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">colSpan</span> <span class="o">=</span> <span class="m">7</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">DEPR_NAV_LEFT</span> <span class="o">=</span> <span class="s2">"us/tr/callt.gif"</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">DEPR_NAV_RIGHT</span> <span class="o">=</span> <span class="s2">"us/tr/calrt.gif"</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_HEADER</span><span class="o">.</span><span class="nx">key</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">colSpan</span> <span class="o">+=</span> <span class="m">1</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_FOOTER</span><span class="o">.</span><span class="nx">key</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">colSpan</span> <span class="o">+=</span> <span class="m">1</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s2">"<thead>"</span><span class="o">;</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s2">"<tr>"</span><span class="o">;</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<th colspan="'</span> <span class="o">+</span> <span class="nx">colSpan</span> <span class="o">+</span> <span class="s1">'" class="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_HEADER_TEXT</span> <span class="o">+</span> <span class="s1">'">'</span><span class="o">;</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<div class="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_HEADER</span> <span class="o">+</span> <span class="s1">'">'</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">renderLeft</span><span class="o">,</span> <span class="nx">renderRight</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">index</span> <span class="o">===</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">renderLeft</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">index</span> <span class="o">==</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"pages"</span><span class="o">)</span> <span class="o">-</span><span class="m">1</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">renderRight</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">renderLeft</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="nx">renderRight</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cal</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">parent</span> <span class="o">||</span> <span class="k">this</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">renderLeft</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">leftArrow</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">NAV_ARROW_LEFT</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="c">// Check for deprecated customization - If someone set IMG_ROOT, but didn't set NAV_ARROW_LEFT, then set NAV_ARROW_LEFT to the old deprecated value</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">leftArrow</span> <span class="o">===</span> <span class="kc">null</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">IMG_ROOT</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">leftArrow</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">IMG_ROOT</span> <span class="o">+</span> <span class="nx">DEPR_NAV_LEFT</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="k">var</span> <span class="nx">leftStyle</span> <span class="o">=</span> <span class="o">(</span><span class="nx">leftArrow</span> <span class="o">===</span> <span class="kc">null</span><span class="o">)</span> <span class="o">?</span> <span class="s2">""</span> <span class="o">:</span> <span class="s1">' style="background-image:url('</span> <span class="o">+</span> <span class="nx">leftArrow</span> <span class="o">+</span> <span class="s1">')"'</span><span class="o">;</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<a class="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_NAV_LEFT</span> <span class="o">+</span> <span class="s1">'"'</span> <span class="o">+</span> <span class="nx">leftStyle</span> <span class="o">+</span> <span class="s1">' >&#160;</a>'</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">buildMonthLabel</span><span class="o">();</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">renderRight</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">rightArrow</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">NAV_ARROW_RIGHT</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">rightArrow</span> <span class="o">===</span> <span class="kc">null</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">IMG_ROOT</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">rightArrow</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">IMG_ROOT</span> <span class="o">+</span> <span class="nx">DEPR_NAV_RIGHT</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="k">var</span> <span class="nx">rightStyle</span> <span class="o">=</span> <span class="o">(</span><span class="nx">rightArrow</span> <span class="o">===</span> <span class="kc">null</span><span class="o">)</span> <span class="o">?</span> <span class="s2">""</span> <span class="o">:</span> <span class="s1">' style="background-image:url('</span> <span class="o">+</span> <span class="nx">rightArrow</span> <span class="o">+</span> <span class="s1">')"'</span><span class="o">;</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<a class="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_NAV_RIGHT</span> <span class="o">+</span> <span class="s1">'"'</span> <span class="o">+</span> <span class="nx">rightStyle</span> <span class="o">+</span> <span class="s1">' >&#160;</a>'</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'</div>\n</th>\n</tr>'</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEKDAYS</span><span class="o">.</span><span class="nx">key</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">buildWeekdays</span><span class="o">(</span><span class="nx">html</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'</thead>'</span><span class="o">;</span>
|
|
|
|
<span class="k">return</span> <span class="nx">html</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the Calendar's weekday headers.</span>
|
|
<span class="c">* @method buildWeekdays</span>
|
|
<span class="c">* @param {Array} html The current working HTML array</span>
|
|
<span class="c">* @return {Array} The current working HTML array</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">buildWeekdays</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">html</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<tr class="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_WEEKDAY_ROW</span> <span class="o">+</span> <span class="s1">'">'</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_HEADER</span><span class="o">.</span><span class="nx">key</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<th>&#160;</th>'</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">for</span><span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<th class="calweekdaycell">'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">LOCALE_WEEKDAYS</span><span class="o">[</span><span class="nx">i</span><span class="o">]</span> <span class="o">+</span> <span class="s1">'</th>'</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_FOOTER</span><span class="o">.</span><span class="nx">key</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<th>&#160;</th>'</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'</tr>'</span><span class="o">;</span>
|
|
|
|
<span class="k">return</span> <span class="nx">html</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the calendar body.</span>
|
|
<span class="c">* @method renderBody</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date being used for the render process</span>
|
|
<span class="c">* @param {Array} html The current working HTML array</span>
|
|
<span class="c">* @return {Array} The current working HTML array</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderBody</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">html</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Rendering body"</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">startDay</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">START_WEEKDAY</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span> <span class="o">=</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDay</span><span class="o">();</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">startDay</span> <span class="o">></span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span> <span class="o">-=</span> <span class="nx">startDay</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span> <span class="o"><</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span> <span class="o">+=</span> <span class="m">7</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">monthDays</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">findMonthEnd</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">).</span><span class="nx">getDate</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">postMonthDays</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">DISPLAY_DAYS</span><span class="o">-</span><span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span><span class="o">-</span><span class="k">this</span><span class="o">.</span><span class="nx">monthDays</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span> <span class="o">+</span> <span class="s2">" preciding out-of-month days"</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">monthDays</span> <span class="o">+</span> <span class="s2">" month days"</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">postMonthDays</span> <span class="o">+</span> <span class="s2">" post-month days"</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
|
|
<span class="nx">workingDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">subtract</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Calendar page starts on "</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">weekNum</span><span class="o">,</span><span class="nx">weekClass</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">weekPrefix</span> <span class="o">=</span> <span class="s2">"w"</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">cellPrefix</span> <span class="o">=</span> <span class="s2">"_cell"</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">workingDayPrefix</span> <span class="o">=</span> <span class="s2">"wd"</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">dayPrefix</span> <span class="o">=</span> <span class="s2">"d"</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cellRenderers</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">renderer</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">todayYear</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">today</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">();</span>
|
|
<span class="k">var</span> <span class="nx">todayMonth</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">today</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">();</span>
|
|
<span class="k">var</span> <span class="nx">todayDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">today</span><span class="o">.</span><span class="nx">getDate</span><span class="o">();</span>
|
|
|
|
<span class="k">var</span> <span class="nx">useDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">hideBlankWeeks</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">HIDE_BLANK_WEEKS</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">showWeekFooter</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_FOOTER</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">showWeekHeader</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SHOW_WEEK_HEADER</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">mindate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MINDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">maxdate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MAXDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">mindate</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">mindate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">clearTime</span><span class="o">(</span><span class="nx">mindate</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">maxdate</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">maxdate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">clearTime</span><span class="o">(</span><span class="nx">maxdate</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<tbody class="m'</span> <span class="o">+</span> <span class="o">(</span><span class="nx">useDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span><span class="o">)</span> <span class="o">+</span> <span class="s1">' '</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_BODY</span> <span class="o">+</span> <span class="s1">'">'</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">tempDiv</span> <span class="o">=</span> <span class="nb">document</span><span class="o">.</span><span class="nx">createElement</span><span class="o">(</span><span class="s2">"div"</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">cell</span> <span class="o">=</span> <span class="nb">document</span><span class="o">.</span><span class="nx">createElement</span><span class="o">(</span><span class="s2">"td"</span><span class="o">);</span>
|
|
<span class="nx">tempDiv</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">cell</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">jan1</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">useDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cal</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">parent</span> <span class="o">||</span> <span class="k">this</span><span class="o">;</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">r</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">r</span><span class="o"><</span><span class="m">6</span><span class="o">;</span><span class="nx">r</span><span class="o">++)</span> <span class="o">{</span>
|
|
|
|
<span class="nx">weekNum</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">getWeekNumber</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">useDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span> <span class="nx">startDay</span><span class="o">);</span>
|
|
<span class="nx">weekClass</span> <span class="o">=</span> <span class="nx">weekPrefix</span> <span class="o">+</span> <span class="nx">weekNum</span><span class="o">;</span>
|
|
|
|
<span class="c">// Local OOM check for performance, since we already have pagedate</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">r</span> <span class="o">!==</span> <span class="m">0</span> <span class="o">&&</span> <span class="nx">hideBlankWeeks</span> <span class="o">===</span> <span class="kc">true</span> <span class="o">&&</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">!=</span> <span class="nx">useDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">())</span> <span class="o">{</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<tr class="'</span> <span class="o">+</span> <span class="nx">weekClass</span> <span class="o">+</span> <span class="s1">'">'</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">showWeekHeader</span><span class="o">)</span> <span class="o">{</span> <span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">renderRowHeader</span><span class="o">(</span><span class="nx">weekNum</span><span class="o">,</span> <span class="nx">html</span><span class="o">);</span> <span class="o">}</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">d</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">d</span><span class="o"><</span><span class="m">7</span><span class="o">;</span><span class="nx">d</span><span class="o">++){</span> <span class="c">// Render actual days</span>
|
|
<span class="c"></span>
|
|
<span class="nx">cellRenderers</span> <span class="o">=</span> <span class="o">[];</span>
|
|
<span class="nx">renderer</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">clearElement</span><span class="o">(</span><span class="nx">cell</span><span class="o">);</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL</span><span class="o">;</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">id</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">id</span> <span class="o">+</span> <span class="nx">cellPrefix</span> <span class="o">+</span> <span class="nx">i</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Rendering cell "</span> <span class="o">+</span> <span class="nx">cell</span><span class="o">.</span><span class="nx">id</span> <span class="o">+</span> <span class="s2">" ("</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="s2">"-"</span> <span class="o">+</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span><span class="o">)</span> <span class="o">+</span> <span class="s2">"-"</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="s2">")"</span><span class="o">,</span> <span class="s2">"cellrender"</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">==</span> <span class="nx">todayDate</span> <span class="o">&&</span>
|
|
<span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">==</span> <span class="nx">todayMonth</span> <span class="o">&&</span>
|
|
<span class="nx">workingDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">==</span> <span class="nx">todayYear</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">cal</span><span class="o">.</span><span class="nx">renderCellStyleToday</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">var</span> <span class="nx">workingArray</span> <span class="o">=</span> <span class="o">[</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span><span class="o">,</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()];</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="nx">workingArray</span><span class="o">;</span> <span class="c">// Add this date to cellDates</span>
|
|
<span class="c"></span>
|
|
<span class="c">// Local OOM check for performance, since we already have pagedate</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">!=</span> <span class="nx">useDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">())</span> <span class="o">{</span>
|
|
<span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">cal</span><span class="o">.</span><span class="nx">renderCellNotThisMonth</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="nx">workingDayPrefix</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDay</span><span class="o">());</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="nx">dayPrefix</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">());</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">s</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">s</span><span class="o"><</span><span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">rArray</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span><span class="o">[</span><span class="nx">s</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">type</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">var</span> <span class="nx">month</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">day</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">year</span><span class="o">;</span>
|
|
|
|
<span class="nx">switch</span> <span class="o">(</span><span class="nx">type</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">DATE</span><span class="o">:</span>
|
|
<span class="nx">month</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">1</span><span class="o">];</span>
|
|
<span class="nx">day</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="nx">year</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span> <span class="o">==</span> <span class="nx">month</span> <span class="o">&&</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">==</span> <span class="nx">day</span> <span class="o">&&</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">==</span> <span class="nx">year</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">renderer</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MONTH_DAY</span><span class="o">:</span>
|
|
<span class="nx">month</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="nx">day</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">1</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span> <span class="o">==</span> <span class="nx">month</span> <span class="o">&&</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">==</span> <span class="nx">day</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">renderer</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">RANGE</span><span class="o">:</span>
|
|
<span class="k">var</span> <span class="nx">date1</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">date2</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">1</span><span class="o">];</span>
|
|
|
|
<span class="k">var</span> <span class="nx">d1month</span> <span class="o">=</span> <span class="nx">date1</span><span class="o">[</span><span class="m">1</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">d1day</span> <span class="o">=</span> <span class="nx">date1</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">d1year</span> <span class="o">=</span> <span class="nx">date1</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">var</span> <span class="nx">d1</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">d1year</span><span class="o">,</span> <span class="nx">d1month</span><span class="o">-</span><span class="m">1</span><span class="o">,</span> <span class="nx">d1day</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">d2month</span> <span class="o">=</span> <span class="nx">date2</span><span class="o">[</span><span class="m">1</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">d2day</span> <span class="o">=</span> <span class="nx">date2</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">d2year</span> <span class="o">=</span> <span class="nx">date2</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">var</span> <span class="nx">d2</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">d2year</span><span class="o">,</span> <span class="nx">d2month</span><span class="o">-</span><span class="m">1</span><span class="o">,</span> <span class="nx">d2day</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">>=</span> <span class="nx">d1</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">&&</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o"><=</span> <span class="nx">d2</span><span class="o">.</span><span class="nx">getTime</span><span class="o">())</span> <span class="o">{</span>
|
|
<span class="nx">renderer</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()==</span><span class="nx">d2</span><span class="o">.</span><span class="nx">getTime</span><span class="o">())</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">WEEKDAY</span><span class="o">:</span>
|
|
|
|
<span class="k">var</span> <span class="nx">weekday</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDay</span><span class="o">()+</span><span class="m">1</span> <span class="o">==</span> <span class="nx">weekday</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">renderer</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="o">}</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="nx">case</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">:</span>
|
|
|
|
<span class="nx">month</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">1</span><span class="o">][</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span> <span class="o">==</span> <span class="nx">month</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">renderer</span> <span class="o">=</span> <span class="nx">rArray</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="o">}</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">renderer</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">renderer</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_indexOfSelectedFieldArray</span><span class="o">(</span><span class="nx">workingArray</span><span class="o">)</span> <span class="o">></span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">cal</span><span class="o">.</span><span class="nx">renderCellStyleSelected</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">((</span><span class="nx">mindate</span> <span class="o">&&</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o"><</span> <span class="nx">mindate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()))</span> <span class="o">||</span>
|
|
<span class="o">(</span><span class="nx">maxdate</span> <span class="o">&&</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">></span> <span class="nx">maxdate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()))</span>
|
|
<span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">cal</span><span class="o">.</span><span class="nx">renderOutOfBoundsDate</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">cal</span><span class="o">.</span><span class="nx">styleCellDefault</span><span class="o">;</span>
|
|
<span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">cal</span><span class="o">.</span><span class="nx">renderCellDefault</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">x</span><span class="o">=</span><span class="m">0</span><span class="o">;</span> <span class="nx">x</span> <span class="o"><</span> <span class="nx">cellRenderers</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="o">++</span><span class="nx">x</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"renderer["</span> <span class="o">+</span> <span class="nx">x</span> <span class="o">+</span> <span class="s2">"] for ("</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="s2">"-"</span> <span class="o">+</span> <span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span><span class="o">)</span> <span class="o">+</span> <span class="s2">"-"</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="s2">")"</span><span class="o">,</span> <span class="s2">"cellrender"</span><span class="o">);</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">cellRenderers</span><span class="o">[</span><span class="nx">x</span><span class="o">].</span><span class="nx">call</span><span class="o">(</span><span class="nx">cal</span><span class="o">,</span> <span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">==</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">STOP_RENDER</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">workingDate</span><span class="o">.</span><span class="nx">setTime</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">+</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">ONE_DAY_MS</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">i</span> <span class="o">>=</span> <span class="m">0</span> <span class="o">&&</span> <span class="nx">i</span> <span class="o"><=</span> <span class="m">6</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_TOP</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">((</span><span class="nx">i</span> <span class="o">%</span> <span class="m">7</span><span class="o">)</span> <span class="o">===</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_LEFT</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(((</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">%</span> <span class="m">7</span><span class="o">)</span> <span class="o">===</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_RIGHT</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">var</span> <span class="nx">postDays</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">postMonthDays</span><span class="o">;</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">hideBlankWeeks</span> <span class="o">&&</span> <span class="nx">postDays</span> <span class="o">>=</span> <span class="m">7</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">blankWeeks</span> <span class="o">=</span> <span class="nb">Math</span><span class="o">.</span><span class="nx">floor</span><span class="o">(</span><span class="nx">postDays</span><span class="o">/</span><span class="m">7</span><span class="o">);</span>
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">p</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">p</span><span class="o"><</span><span class="nx">blankWeeks</span><span class="o">;++</span><span class="nx">p</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">postDays</span> <span class="o">-=</span> <span class="m">7</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">i</span> <span class="o">>=</span> <span class="o">((</span><span class="k">this</span><span class="o">.</span><span class="nx">preMonthDays</span><span class="o">+</span><span class="nx">postDays</span><span class="o">+</span><span class="k">this</span><span class="o">.</span><span class="nx">monthDays</span><span class="o">)-</span><span class="m">7</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_BOTTOM</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="nx">tempDiv</span><span class="o">.</span><span class="nx">innerHTML</span><span class="o">;</span>
|
|
<span class="nx">i</span><span class="o">++;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">showWeekFooter</span><span class="o">)</span> <span class="o">{</span> <span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">renderRowFooter</span><span class="o">(</span><span class="nx">weekNum</span><span class="o">,</span> <span class="nx">html</span><span class="o">);</span> <span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'</tr>'</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'</tbody>'</span><span class="o">;</span>
|
|
|
|
<span class="k">return</span> <span class="nx">html</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the calendar footer. In the default implementation, there is</span>
|
|
<span class="c">* no footer.</span>
|
|
<span class="c">* @method renderFooter</span>
|
|
<span class="c">* @param {Array} html The current working HTML array</span>
|
|
<span class="c">* @return {Array} The current working HTML array</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderFooter</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">html</span><span class="o">)</span> <span class="o">{</span> <span class="k">return</span> <span class="nx">html</span><span class="o">;</span> <span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the calendar after it has been configured. The render() method has a specific call chain that will execute</span>
|
|
<span class="c">* when the method is called: renderHeader, renderBody, renderFooter.</span>
|
|
<span class="c">* Refer to the documentation for those methods for information on </span>
|
|
<span class="c">* individual render tasks.</span>
|
|
<span class="c">* @method render</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">render</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeRenderEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="c">// Find starting day of the current month</span>
|
|
<span class="c"></span> <span class="k">var</span> <span class="nx">workingDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">findMonthStart</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">));</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetRenderers</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">.</span><span class="nx">length</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">purgeElement</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">html</span> <span class="o">=</span> <span class="o">[];</span>
|
|
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<table cellSpacing="0" class="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CALENDAR</span> <span class="o">+</span> <span class="s1">' y'</span> <span class="o">+</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="s1">'" id="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">'">'</span><span class="o">;</span>
|
|
<span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">renderHeader</span><span class="o">(</span><span class="nx">html</span><span class="o">);</span>
|
|
<span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">renderBody</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">html</span><span class="o">);</span>
|
|
<span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">renderFooter</span><span class="o">(</span><span class="nx">html</span><span class="o">);</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'</table>'</span><span class="o">;</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">html</span><span class="o">.</span><span class="nx">join</span><span class="o">(</span><span class="s2">"\n"</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">applyListeners</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cells</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">getElementsByTagName</span><span class="o">(</span><span class="s2">"td"</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">TITLE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">CLOSE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">IFRAME</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Applies the Calendar's DOM listeners to applicable elements.</span>
|
|
<span class="c">* @method applyListeners</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">applyListeners</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">root</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">cal</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">parent</span> <span class="o">||</span> <span class="k">this</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">anchor</span> <span class="o">=</span> <span class="s2">"a"</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">mousedown</span> <span class="o">=</span> <span class="s2">"mousedown"</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">linkLeft</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsByClassName</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_NAV_LEFT</span><span class="o">,</span> <span class="nx">anchor</span><span class="o">,</span> <span class="nx">root</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">linkRight</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsByClassName</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_NAV_RIGHT</span><span class="o">,</span> <span class="nx">anchor</span><span class="o">,</span> <span class="nx">root</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">linkLeft</span> <span class="o">&&</span> <span class="nx">linkLeft</span><span class="o">.</span><span class="nx">length</span> <span class="o">></span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">linkLeft</span> <span class="o">=</span> <span class="nx">linkLeft</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">linkLeft</span><span class="o">,</span> <span class="nx">mousedown</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">previousMonth</span><span class="o">,</span> <span class="nx">cal</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">linkRight</span> <span class="o">&&</span> <span class="nx">linkRight</span><span class="o">.</span><span class="nx">length</span> <span class="o">></span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">linkRight</span> <span class="o">=</span> <span class="nx">linkRight</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">linkRight</span><span class="o">,</span> <span class="nx">mousedown</span><span class="o">,</span> <span class="nx">cal</span><span class="o">.</span><span class="nx">nextMonth</span><span class="o">,</span> <span class="nx">cal</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">domEventMap</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">el</span><span class="o">,</span><span class="nx">elements</span><span class="o">;</span>
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">cls</span> <span class="k">in</span> <span class="k">this</span><span class="o">.</span><span class="nx">domEventMap</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">domEventMap</span><span class="o">,</span> <span class="nx">cls</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">items</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">domEventMap</span><span class="o">[</span><span class="nx">cls</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="o">(</span><span class="nx">items</span> <span class="k">instanceof</span> <span class="nb">Array</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">items</span> <span class="o">=</span> <span class="o">[</span><span class="nx">items</span><span class="o">];</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">items</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">i</span><span class="o">++)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">item</span> <span class="o">=</span> <span class="nx">items</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
|
<span class="nx">elements</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsByClassName</span><span class="o">(</span><span class="nx">cls</span><span class="o">,</span> <span class="nx">item</span><span class="o">.</span><span class="nx">tag</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">);</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">c</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">c</span><span class="o"><</span><span class="nx">elements</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">c</span><span class="o">++)</span> <span class="o">{</span>
|
|
<span class="nx">el</span> <span class="o">=</span> <span class="nx">elements</span><span class="o">[</span><span class="nx">c</span><span class="o">];</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">item</span><span class="o">.</span><span class="nx">event</span><span class="o">,</span> <span class="nx">item</span><span class="o">.</span><span class="nx">handler</span><span class="o">,</span> <span class="nx">item</span><span class="o">.</span><span class="nx">scope</span><span class="o">,</span> <span class="nx">item</span><span class="o">.</span><span class="nx">correct</span> <span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"click"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">doSelectCell</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"mouseover"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">doCellMouseOver</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">,</span> <span class="s2">"mouseout"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">doCellMouseOut</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Retrieves the Date object for the specified Calendar cell</span>
|
|
<span class="c">* @method getDateByCellId</span>
|
|
<span class="c">* @param {String} id The id of the cell</span>
|
|
<span class="c">* @return {Date} The Date object for the specified Calendar cell</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">getDateByCellId</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">id</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">date</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getDateFieldsByCellId</span><span class="o">(</span><span class="nx">id</span><span class="o">);</span>
|
|
<span class="k">return</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">date</span><span class="o">[</span><span class="m">0</span><span class="o">],</span><span class="nx">date</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span><span class="nx">date</span><span class="o">[</span><span class="m">2</span><span class="o">]);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Retrieves the Date object for the specified Calendar cell</span>
|
|
<span class="c">* @method getDateFieldsByCellId</span>
|
|
<span class="c">* @param {String} id The id of the cell</span>
|
|
<span class="c">* @return {Array} The array of Date fields for the specified Calendar cell</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">getDateFieldsByCellId</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">id</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">id</span> <span class="o">=</span> <span class="nx">id</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">().</span><span class="nx">split</span><span class="o">(</span><span class="s2">"_cell"</span><span class="o">)[</span><span class="m">1</span><span class="o">];</span>
|
|
<span class="nx">id</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">id</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
|
|
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">[</span><span class="nx">id</span><span class="o">];</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// BEGIN BUILT-IN TABLE CELL RENDERERS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders a cell that falls before the minimum date or after the maximum date.</span>
|
|
<span class="c">* widget class.</span>
|
|
<span class="c">* @method renderOutOfBoundsDate</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">* @return {String} YAHOO.widget.Calendar.STOP_RENDER if rendering should stop with this style, null or nothing if rendering</span>
|
|
<span class="c">* should not be terminated</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderOutOfBoundsDate</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_OOB</span><span class="o">);</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">();</span>
|
|
<span class="k">return</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">STOP_RENDER</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the row header for a week.</span>
|
|
<span class="c">* @method renderRowHeader</span>
|
|
<span class="c">* @param {Number} weekNum The week number of the current row</span>
|
|
<span class="c">* @param {Array} cell The current working HTML array</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderRowHeader</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">weekNum</span><span class="o">,</span> <span class="nx">html</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<th class="calrowhead">'</span> <span class="o">+</span> <span class="nx">weekNum</span> <span class="o">+</span> <span class="s1">'</th>'</span><span class="o">;</span>
|
|
<span class="k">return</span> <span class="nx">html</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the row footer for a week.</span>
|
|
<span class="c">* @method renderRowFooter</span>
|
|
<span class="c">* @param {Number} weekNum The week number of the current row</span>
|
|
<span class="c">* @param {Array} cell The current working HTML array</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderRowFooter</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">weekNum</span><span class="o">,</span> <span class="nx">html</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">html</span><span class="o">[</span><span class="nx">html</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'<th class="calrowfoot">'</span> <span class="o">+</span> <span class="nx">weekNum</span> <span class="o">+</span> <span class="s1">'</th>'</span><span class="o">;</span>
|
|
<span class="k">return</span> <span class="nx">html</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders a single standard calendar cell in the calendar widget table.</span>
|
|
<span class="c">* All logic for determining how a standard default cell will be rendered is </span>
|
|
<span class="c">* encapsulated in this method, and must be accounted for when extending the</span>
|
|
<span class="c">* widget class.</span>
|
|
<span class="c">* @method renderCellDefault</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellDefault</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s1">'<a href="#" class="'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTOR</span> <span class="o">+</span> <span class="s1">'">'</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">buildDayLabel</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">)</span> <span class="o">+</span> <span class="s2">"</a>"</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Styles a selectable cell.</span>
|
|
<span class="c">* @method styleCellDefault</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">styleCellDefault</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTABLE</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders a single standard calendar cell using the CSS hightlight1 style</span>
|
|
<span class="c">* @method renderCellStyleHighlight1</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellStyleHighlight1</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT1</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders a single standard calendar cell using the CSS hightlight2 style</span>
|
|
<span class="c">* @method renderCellStyleHighlight2</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellStyleHighlight2</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT2</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders a single standard calendar cell using the CSS hightlight3 style</span>
|
|
<span class="c">* @method renderCellStyleHighlight3</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellStyleHighlight3</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT3</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders a single standard calendar cell using the CSS hightlight4 style</span>
|
|
<span class="c">* @method renderCellStyleHighlight4</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellStyleHighlight4</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_HIGHLIGHT4</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Applies the default style used for rendering today's date to the current calendar cell</span>
|
|
<span class="c">* @method renderCellStyleToday</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellStyleToday</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_TODAY</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Applies the default style used for rendering selected dates to the current calendar cell</span>
|
|
<span class="c">* @method renderCellStyleSelected</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">* @return {String} YAHOO.widget.Calendar.STOP_RENDER if rendering should stop with this style, null or nothing if rendering</span>
|
|
<span class="c">* should not be terminated</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellStyleSelected</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTED</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Applies the default style used for rendering dates that are not a part of the current</span>
|
|
<span class="c">* month (preceding or trailing the cells for the current month)</span>
|
|
<span class="c">* @method renderCellNotThisMonth</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">* @return {String} YAHOO.widget.Calendar.STOP_RENDER if rendering should stop with this style, null or nothing if rendering</span>
|
|
<span class="c">* should not be terminated</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderCellNotThisMonth</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_OOM</span><span class="o">);</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">innerHTML</span><span class="o">=</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">();</span>
|
|
<span class="k">return</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">STOP_RENDER</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Renders the current calendar cell as a non-selectable "black-out" date using the default</span>
|
|
<span class="c">* restricted style.</span>
|
|
<span class="c">* @method renderBodyCellRestricted</span>
|
|
<span class="c">* @param {Date} workingDate The current working Date object being used to generate the calendar</span>
|
|
<span class="c">* @param {HTMLTableCellElement} cell The current working cell in the calendar</span>
|
|
<span class="c">* @return {String} YAHOO.widget.Calendar.STOP_RENDER if rendering should stop with this style, null or nothing if rendering</span>
|
|
<span class="c">* should not be terminated</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">renderBodyCellRestricted</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">workingDate</span><span class="o">,</span> <span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL</span><span class="o">);</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_RESTRICTED</span><span class="o">);</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">innerHTML</span><span class="o">=</span><span class="nx">workingDate</span><span class="o">.</span><span class="nx">getDate</span><span class="o">();</span>
|
|
<span class="k">return</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">STOP_RENDER</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END BUILT-IN TABLE CELL RENDERERS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN MONTH NAVIGATION METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Adds the designated number of months to the current calendar month, and sets the current</span>
|
|
<span class="c">* calendar page date to the new month.</span>
|
|
<span class="c">* @method addMonths</span>
|
|
<span class="c">* @param {Number} count The number of months to add to the current calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">addMonths</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">count</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">cfgPageDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">,</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">),</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">,</span> <span class="nx">count</span><span class="o">));</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetRenderers</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changePageEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Subtracts the designated number of months from the current calendar month, and sets the current</span>
|
|
<span class="c">* calendar page date to the new month.</span>
|
|
<span class="c">* @method subtractMonths</span>
|
|
<span class="c">* @param {Number} count The number of months to subtract from the current calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">subtractMonths</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">count</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">cfgPageDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">,</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">subtract</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">),</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">,</span> <span class="nx">count</span><span class="o">));</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetRenderers</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changePageEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Adds the designated number of years to the current calendar, and sets the current</span>
|
|
<span class="c">* calendar page date to the new month.</span>
|
|
<span class="c">* @method addYears</span>
|
|
<span class="c">* @param {Number} count The number of years to add to the current calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">addYears</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">count</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">cfgPageDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">,</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">),</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">YEAR</span><span class="o">,</span> <span class="nx">count</span><span class="o">));</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetRenderers</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changePageEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Subtcats the designated number of years from the current calendar, and sets the current</span>
|
|
<span class="c">* calendar page date to the new month.</span>
|
|
<span class="c">* @method subtractYears</span>
|
|
<span class="c">* @param {Number} count The number of years to subtract from the current calendar</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">subtractYears</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">count</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">cfgPageDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">,</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">subtract</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">),</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">YEAR</span><span class="o">,</span> <span class="nx">count</span><span class="o">));</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetRenderers</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changePageEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Navigates to the next month page in the calendar widget.</span>
|
|
<span class="c">* @method nextMonth</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">nextMonth</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">addMonths</span><span class="o">(</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Navigates to the previous month page in the calendar widget.</span>
|
|
<span class="c">* @method previousMonth</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">previousMonth</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">subtractMonths</span><span class="o">(</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Navigates to the next year in the currently selected month in the calendar widget.</span>
|
|
<span class="c">* @method nextYear</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">nextYear</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">addYears</span><span class="o">(</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Navigates to the previous year in the currently selected month in the calendar widget.</span>
|
|
<span class="c">* @method previousYear</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">previousYear</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">subtractYears</span><span class="o">(</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END MONTH NAVIGATION METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN SELECTION METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Resets the calendar widget to the originally selected month and year, and </span>
|
|
<span class="c">* sets the calendar to the initial selection(s).</span>
|
|
<span class="c">* @method reset</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">reset</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">resetProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">resetProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">resetEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Clears the selected dates in the current calendar widget and sets the calendar</span>
|
|
<span class="c">* to the current month and year.</span>
|
|
<span class="c">* @method clear</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">clear</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">[]);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">today</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()));</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">clearEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Selects a date or a collection of dates on the current calendar. This method, by default,</span>
|
|
<span class="c">* does not call the render method explicitly. Once selection has completed, render must be </span>
|
|
<span class="c">* called for the changes to be reflected visually.</span>
|
|
<span class="c">* @method select</span>
|
|
<span class="c">* @param {String/Date/Date[]} date The date string of dates to select in the current calendar. Valid formats are</span>
|
|
<span class="c">* individual date(s) (12/24/2005,12/26/2005) or date range(s) (12/24/2005-1/1/2006).</span>
|
|
<span class="c">* Multiple comma-delimited dates can also be passed to this method (12/24/2005,12/11/2005-12/13/2005).</span>
|
|
<span class="c">* This method can also take a JavaScript Date object or an array of Date objects.</span>
|
|
<span class="c">* @return {Date[]} Array of JavaScript Date objects representing all individual dates that are currently selected.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">select</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Select: "</span> <span class="o">+</span> <span class="nx">date</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeSelectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cfgSelected</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">aToBeSelected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_toFieldArray</span><span class="o">(</span><span class="nx">date</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Selection field array: "</span> <span class="o">+</span> <span class="nx">aToBeSelected</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">a</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">a</span><span class="o"><</span><span class="nx">aToBeSelected</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">a</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">toSelect</span> <span class="o">=</span> <span class="nx">aToBeSelected</span><span class="o">[</span><span class="nx">a</span><span class="o">];</span> <span class="c">// For each date item in the list of dates we're trying to select</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_indexOfSelectedFieldArray</span><span class="o">(</span><span class="nx">toSelect</span><span class="o">)</span> <span class="o">==</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span> <span class="c">// not already selected?</span>
|
|
<span class="c"></span> <span class="nx">selected</span><span class="o">[</span><span class="nx">selected</span><span class="o">.</span><span class="nx">length</span><span class="o">]=</span><span class="nx">toSelect</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">selectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">(</span><span class="nx">aToBeSelected</span><span class="o">);</span>
|
|
|
|
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSelectedDates</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Selects a date on the current calendar by referencing the index of the cell that should be selected.</span>
|
|
<span class="c">* This method is used to easily select a single cell (usually with a mouse click) without having to do</span>
|
|
<span class="c">* a full render. The selected style is applied to the cell directly.</span>
|
|
<span class="c">* @method selectCell</span>
|
|
<span class="c">* @param {Number} cellIndex The index of the cell to select in the current calendar. </span>
|
|
<span class="c">* @return {Date[]} Array of JavaScript Date objects representing all individual dates that are currently selected.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">selectCell</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">cellIndex</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeSelectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cfgSelected</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cell</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cells</span><span class="o">[</span><span class="nx">cellIndex</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">cellDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">[</span><span class="nx">cellIndex</span><span class="o">];</span>
|
|
|
|
<span class="k">var</span> <span class="nx">dCellDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_toDate</span><span class="o">(</span><span class="nx">cellDate</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">logger</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Select: "</span> <span class="o">+</span> <span class="nx">dCellDate</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">selectDate</span> <span class="o">=</span> <span class="nx">cellDate</span><span class="o">.</span><span class="nx">concat</span><span class="o">();</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_indexOfSelectedFieldArray</span><span class="o">(</span><span class="nx">selectDate</span><span class="o">)</span> <span class="o">==</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">selected</span><span class="o">[</span><span class="nx">selected</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="nx">selectDate</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderCellStyleSelected</span><span class="o">(</span><span class="nx">dCellDate</span><span class="o">,</span><span class="nx">cell</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">selectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">([</span><span class="nx">selectDate</span><span class="o">]);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">doCellMouseOut</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="kc">null</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
|
|
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSelectedDates</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Deselects a date or a collection of dates on the current calendar. This method, by default,</span>
|
|
<span class="c">* does not call the render method explicitly. Once deselection has completed, render must be </span>
|
|
<span class="c">* called for the changes to be reflected visually.</span>
|
|
<span class="c">* @method deselect</span>
|
|
<span class="c">* @param {String/Date/Date[]} date The date string of dates to deselect in the current calendar. Valid formats are</span>
|
|
<span class="c">* individual date(s) (12/24/2005,12/26/2005) or date range(s) (12/24/2005-1/1/2006).</span>
|
|
<span class="c">* Multiple comma-delimited dates can also be passed to this method (12/24/2005,12/11/2005-12/13/2005).</span>
|
|
<span class="c">* This method can also take a JavaScript Date object or an array of Date objects. </span>
|
|
<span class="c">* @return {Date[]} Array of JavaScript Date objects representing all individual dates that are currently selected.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">deselect</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeDeselectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="k">var</span> <span class="nx">cfgSelected</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">aToBeSelected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_toFieldArray</span><span class="o">(</span><span class="nx">date</span><span class="o">);</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">a</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">a</span><span class="o"><</span><span class="nx">aToBeSelected</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">a</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">toSelect</span> <span class="o">=</span> <span class="nx">aToBeSelected</span><span class="o">[</span><span class="nx">a</span><span class="o">];</span> <span class="c">// For each date item in the list of dates we're trying to select</span>
|
|
<span class="c"></span> <span class="k">var</span> <span class="nx">index</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_indexOfSelectedFieldArray</span><span class="o">(</span><span class="nx">toSelect</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">index</span> <span class="o">!=</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">selected</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">index</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">deselectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">(</span><span class="nx">aToBeSelected</span><span class="o">);</span>
|
|
|
|
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSelectedDates</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Deselects a date on the current calendar by referencing the index of the cell that should be deselected.</span>
|
|
<span class="c">* This method is used to easily deselect a single cell (usually with a mouse click) without having to do</span>
|
|
<span class="c">* a full render. The selected style is removed from the cell directly.</span>
|
|
<span class="c">* @method deselectCell</span>
|
|
<span class="c">* @param {Number} cellIndex The index of the cell to deselect in the current calendar. </span>
|
|
<span class="c">* @return {Date[]} Array of JavaScript Date objects representing all individual dates that are currently selected.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">deselectCell</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeDeselectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cell</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cells</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">cellDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cellDates</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">cellDateIndex</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_indexOfSelectedFieldArray</span><span class="o">(</span><span class="nx">cellDate</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">dCellDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_toDate</span><span class="o">(</span><span class="nx">cellDate</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">selectDate</span> <span class="o">=</span> <span class="nx">cellDate</span><span class="o">.</span><span class="nx">concat</span><span class="o">();</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">cellDateIndex</span> <span class="o">></span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">==</span> <span class="nx">dCellDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">&&</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">==</span> <span class="nx">dCellDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">())</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="nx">cell</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTED</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">selected</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">cellDateIndex</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="nx">selected</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">deselectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">(</span><span class="nx">selectDate</span><span class="o">);</span>
|
|
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSelectedDates</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Deselects all dates on the current calendar.</span>
|
|
<span class="c">* @method deselectAll</span>
|
|
<span class="c">* @return {Date[]} Array of JavaScript Date objects representing all individual dates that are currently selected.</span>
|
|
<span class="c">* Assuming that this function executes properly, the return value should be an empty array.</span>
|
|
<span class="c">* However, the empty array is returned for the sake of being able to check the selection status</span>
|
|
<span class="c">* of the calendar.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">deselectAll</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeDeselectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
|
|
<span class="k">var</span> <span class="nx">cfgSelected</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">count</span> <span class="o">=</span> <span class="nx">selected</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">sel</span> <span class="o">=</span> <span class="nx">selected</span><span class="o">.</span><span class="nx">concat</span><span class="o">();</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="o">[]);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgSelected</span><span class="o">,</span> <span class="o">[]);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">count</span> <span class="o">></span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">deselectEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">(</span><span class="nx">sel</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSelectedDates</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END SELECTION METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN TYPE CONVERSION METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Converts a date (either a JavaScript Date object, or a date string) to the internal data structure</span>
|
|
<span class="c">* used to represent dates: [[yyyy,mm,dd],[yyyy,mm,dd]].</span>
|
|
<span class="c">* @method _toFieldArray</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {String/Date/Date[]} date The date string of dates to deselect in the current calendar. Valid formats are</span>
|
|
<span class="c">* individual date(s) (12/24/2005,12/26/2005) or date range(s) (12/24/2005-1/1/2006).</span>
|
|
<span class="c">* Multiple comma-delimited dates can also be passed to this method (12/24/2005,12/11/2005-12/13/2005).</span>
|
|
<span class="c">* This method can also take a JavaScript Date object or an array of Date objects. </span>
|
|
<span class="c">* @return {Array[](Number[])} Array of date field arrays</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_toFieldArray</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">returnDate</span> <span class="o">=</span> <span class="o">[];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">date</span> <span class="k">instanceof</span> <span class="nb">Date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">returnDate</span> <span class="o">=</span> <span class="o">[[</span><span class="nx">date</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span> <span class="nx">date</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span><span class="o">,</span> <span class="nx">date</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()]];</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">date</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">returnDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDates</span><span class="o">(</span><span class="nx">date</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">date</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">date</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">d</span> <span class="o">=</span> <span class="nx">date</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
|
<span class="nx">returnDate</span><span class="o">[</span><span class="nx">returnDate</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="o">[</span><span class="nx">d</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span><span class="nx">d</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span><span class="o">,</span><span class="nx">d</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()];</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">returnDate</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Converts a date field array [yyyy,mm,dd] to a JavaScript Date object.</span>
|
|
<span class="c">* @method _toDate</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {Number[]} dateFieldArray The date field array to convert to a JavaScript Date.</span>
|
|
<span class="c">* @return {Date} JavaScript Date object representing the date field array</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_toDate</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">dateFieldArray</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">dateFieldArray</span> <span class="k">instanceof</span> <span class="nb">Date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="nx">dateFieldArray</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">dateFieldArray</span><span class="o">[</span><span class="m">0</span><span class="o">],</span><span class="nx">dateFieldArray</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span><span class="nx">dateFieldArray</span><span class="o">[</span><span class="m">2</span><span class="o">]);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END TYPE CONVERSION METHODS </span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN UTILITY METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Converts a date field array [yyyy,mm,dd] to a JavaScript Date object.</span>
|
|
<span class="c">* @method _fieldArraysAreEqual</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {Number[]} array1 The first date field array to compare</span>
|
|
<span class="c">* @param {Number[]} array2 The first date field array to compare</span>
|
|
<span class="c">* @return {Boolean} The boolean that represents the equality of the two arrays</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_fieldArraysAreEqual</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">array1</span><span class="o">,</span> <span class="nx">array2</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">match</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">array1</span><span class="o">[</span><span class="m">0</span><span class="o">]==</span><span class="nx">array2</span><span class="o">[</span><span class="m">0</span><span class="o">]&&</span><span class="nx">array1</span><span class="o">[</span><span class="m">1</span><span class="o">]==</span><span class="nx">array2</span><span class="o">[</span><span class="m">1</span><span class="o">]&&</span><span class="nx">array1</span><span class="o">[</span><span class="m">2</span><span class="o">]==</span><span class="nx">array2</span><span class="o">[</span><span class="m">2</span><span class="o">])</span> <span class="o">{</span>
|
|
<span class="nx">match</span><span class="o">=</span><span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">match</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Gets the index of a date field array [yyyy,mm,dd] in the current list of selected dates.</span>
|
|
<span class="c">* @method _indexOfSelectedFieldArray</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {Number[]} find The date field array to search for</span>
|
|
<span class="c">* @return {Number} The index of the date field array within the collection of selected dates.</span>
|
|
<span class="c">* -1 will be returned if the date is not found.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_indexOfSelectedFieldArray</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">find</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="o">-</span><span class="m">1</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">seldates</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">s</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">s</span><span class="o"><</span><span class="nx">seldates</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">sArray</span> <span class="o">=</span> <span class="nx">seldates</span><span class="o">[</span><span class="nx">s</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">find</span><span class="o">[</span><span class="m">0</span><span class="o">]==</span><span class="nx">sArray</span><span class="o">[</span><span class="m">0</span><span class="o">]&&</span><span class="nx">find</span><span class="o">[</span><span class="m">1</span><span class="o">]==</span><span class="nx">sArray</span><span class="o">[</span><span class="m">1</span><span class="o">]&&</span><span class="nx">find</span><span class="o">[</span><span class="m">2</span><span class="o">]==</span><span class="nx">sArray</span><span class="o">[</span><span class="m">2</span><span class="o">])</span> <span class="o">{</span>
|
|
<span class="nx">selected</span> <span class="o">=</span> <span class="nx">s</span><span class="o">;</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">selected</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Determines whether a given date is OOM (out of month).</span>
|
|
<span class="c">* @method isDateOOM</span>
|
|
<span class="c">* @param {Date} date The JavaScript Date object for which to check the OOM status</span>
|
|
<span class="c">* @return {Boolean} true if the date is OOM</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">isDateOOM</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">!=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">).</span><span class="nx">getMonth</span><span class="o">());</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Parses a pagedate configuration property value. The value can either be specified as a string of form "mm/yyyy" or a Date object </span>
|
|
<span class="c"> * and is parsed into a Date object normalized to the first day of the month. If no value is passed in, the month and year from today's date are used to create the Date object </span>
|
|
<span class="c"> * @method _parsePageDate</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> * @param {Date|String} date Pagedate value which needs to be parsed</span>
|
|
<span class="c"> * @return {Date} The Date object representing the pagedate</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_parsePageDate</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">parsedDate</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">defCfg</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">date</span> <span class="k">instanceof</span> <span class="nb">Date</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">parsedDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">findMonthStart</span><span class="o">(</span><span class="nx">date</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">month</span><span class="o">,</span> <span class="nx">year</span><span class="o">,</span> <span class="nx">aMonthYear</span><span class="o">;</span>
|
|
<span class="nx">aMonthYear</span> <span class="o">=</span> <span class="nx">date</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">DATE_FIELD_DELIMITER</span><span class="o">.</span><span class="nx">key</span><span class="o">));</span>
|
|
<span class="nx">month</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">aMonthYear</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MY_MONTH_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">)-</span><span class="m">1</span><span class="o">],</span> <span class="m">10</span><span class="o">)-</span><span class="m">1</span><span class="o">;</span>
|
|
<span class="nx">year</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">aMonthYear</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">defCfg</span><span class="o">.</span><span class="nx">MY_YEAR_POSITION</span><span class="o">.</span><span class="nx">key</span><span class="o">)-</span><span class="m">1</span><span class="o">],</span> <span class="m">10</span><span class="o">);</span>
|
|
|
|
<span class="nx">parsedDate</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">year</span><span class="o">,</span> <span class="nx">month</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">parsedDate</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">today</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span> <span class="k">this</span><span class="o">.</span><span class="nx">today</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">(),</span> <span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">return</span> <span class="nx">parsedDate</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END UTILITY METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN EVENT HANDLERS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed before a date is selected in the calendar widget.</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to beforeSelectEvent.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onBeforeSelect</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">MULTI_SELECT</span><span class="o">.</span><span class="nx">key</span><span class="o">)</span> <span class="o">===</span> <span class="kc">false</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">callChildFunction</span><span class="o">(</span><span class="s2">"clearAllBodyCellStyles"</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTED</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">parent</span><span class="o">.</span><span class="nx">deselectAll</span><span class="o">();</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">clearAllBodyCellStyles</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Style</span><span class="o">.</span><span class="nx">CSS_CELL_SELECTED</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">deselectAll</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed when a date is selected in the calendar widget.</span>
|
|
<span class="c">* @param {Array} selected An array of date field arrays representing which date or dates were selected. Example: [ [2006,8,6],[2006,8,7],[2006,8,8] ]</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to selectEvent.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onSelect</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">selected</span><span class="o">)</span> <span class="o">{</span> <span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed before a date is deselected in the calendar widget.</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to beforeDeselectEvent.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onBeforeDeselect</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span> <span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed when a date is deselected in the calendar widget.</span>
|
|
<span class="c">* @param {Array} selected An array of date field arrays representing which date or dates were deselected. Example: [ [2006,8,6],[2006,8,7],[2006,8,8] ]</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to deselectEvent.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onDeselect</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">deselected</span><span class="o">)</span> <span class="o">{</span> <span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed when the user navigates to a different calendar page.</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to changePageEvent.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onChangePage</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">render</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed when the calendar widget is rendered.</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to renderEvent.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onRender</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span> <span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed when the calendar widget is reset to its original state.</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to resetEvemt.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onReset</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span> <span class="k">this</span><span class="o">.</span><span class="nx">render</span><span class="o">();</span> <span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Event executed when the calendar widget is completely cleared to the current month with no selections.</span>
|
|
<span class="c">* @deprecated Event handlers for this event should be susbcribed to clearEvent.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">onClear</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span> <span class="k">this</span><span class="o">.</span><span class="nx">render</span><span class="o">();</span> <span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Validates the calendar widget. This method has no default implementation</span>
|
|
<span class="c">* and must be extended by subclassing the widget.</span>
|
|
<span class="c">* @return Should return true if the widget validates, and false if</span>
|
|
<span class="c">* it doesn't.</span>
|
|
<span class="c">* @type Boolean</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">validate</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span> <span class="k">return</span> <span class="kc">true</span><span class="o">;</span> <span class="o">};</span>
|
|
|
|
<span class="c">// END EVENT HANDLERS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN DATE PARSE METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Converts a date string to a date field array</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {String} sDate Date string. Valid formats are mm/dd and mm/dd/yyyy.</span>
|
|
<span class="c">* @return A date field array representing the string passed to the method</span>
|
|
<span class="c">* @type Array[](Number[])</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_parseDate</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">sDate</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">aDate</span> <span class="o">=</span> <span class="nx">sDate</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">DATE_FIELD_DELIMITER</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">rArray</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">aDate</span><span class="o">.</span><span class="nx">length</span> <span class="o">==</span> <span class="m">2</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">rArray</span> <span class="o">=</span> <span class="o">[</span><span class="nx">aDate</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">MD_MONTH_POSITION</span><span class="o">-</span><span class="m">1</span><span class="o">],</span><span class="nx">aDate</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">MD_DAY_POSITION</span><span class="o">-</span><span class="m">1</span><span class="o">]];</span>
|
|
<span class="nx">rArray</span><span class="o">.</span><span class="nx">type</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MONTH_DAY</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">rArray</span> <span class="o">=</span> <span class="o">[</span><span class="nx">aDate</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">MDY_YEAR_POSITION</span><span class="o">-</span><span class="m">1</span><span class="o">],</span><span class="nx">aDate</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">MDY_MONTH_POSITION</span><span class="o">-</span><span class="m">1</span><span class="o">],</span><span class="nx">aDate</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">MDY_DAY_POSITION</span><span class="o">-</span><span class="m">1</span><span class="o">]];</span>
|
|
<span class="nx">rArray</span><span class="o">.</span><span class="nx">type</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">DATE</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">rArray</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">i</span><span class="o">++)</span> <span class="o">{</span>
|
|
<span class="nx">rArray</span><span class="o">[</span><span class="nx">i</span><span class="o">]</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">rArray</span><span class="o">[</span><span class="nx">i</span><span class="o">],</span> <span class="m">10</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">rArray</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Converts a multi or single-date string to an array of date field arrays</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {String} sDates Date string with one or more comma-delimited dates. Valid formats are mm/dd, mm/dd/yyyy, mm/dd/yyyy-mm/dd/yyyy</span>
|
|
<span class="c">* @return An array of date field arrays</span>
|
|
<span class="c">* @type Array[](Number[])</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_parseDates</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">sDates</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">aReturn</span> <span class="o">=</span> <span class="o">[];</span>
|
|
|
|
<span class="k">var</span> <span class="nx">aDates</span> <span class="o">=</span> <span class="nx">sDates</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">DATE_DELIMITER</span><span class="o">);</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">d</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">d</span><span class="o"><</span><span class="nx">aDates</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">d</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">sDate</span> <span class="o">=</span> <span class="nx">aDates</span><span class="o">[</span><span class="nx">d</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">sDate</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">DATE_RANGE_DELIMITER</span><span class="o">)</span> <span class="o">!=</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="c">// This is a range</span>
|
|
<span class="c"></span> <span class="k">var</span> <span class="nx">aRange</span> <span class="o">=</span> <span class="nx">sDate</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">Locale</span><span class="o">.</span><span class="nx">DATE_RANGE_DELIMITER</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">dateStart</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDate</span><span class="o">(</span><span class="nx">aRange</span><span class="o">[</span><span class="m">0</span><span class="o">]);</span>
|
|
<span class="k">var</span> <span class="nx">dateEnd</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDate</span><span class="o">(</span><span class="nx">aRange</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">fullRange</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseRange</span><span class="o">(</span><span class="nx">dateStart</span><span class="o">,</span> <span class="nx">dateEnd</span><span class="o">);</span>
|
|
<span class="nx">aReturn</span> <span class="o">=</span> <span class="nx">aReturn</span><span class="o">.</span><span class="nx">concat</span><span class="o">(</span><span class="nx">fullRange</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="c">// This is not a range</span>
|
|
<span class="c"></span> <span class="k">var</span> <span class="nx">aDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDate</span><span class="o">(</span><span class="nx">sDate</span><span class="o">);</span>
|
|
<span class="nx">aReturn</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">aDate</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="k">return</span> <span class="nx">aReturn</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Converts a date range to the full list of included dates</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {Number[]} startDate Date field array representing the first date in the range</span>
|
|
<span class="c">* @param {Number[]} endDate Date field array representing the last date in the range</span>
|
|
<span class="c">* @return An array of date field arrays</span>
|
|
<span class="c">* @type Array[](Number[])</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_parseRange</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">startDate</span><span class="o">,</span> <span class="nx">endDate</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">dStart</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">startDate</span><span class="o">[</span><span class="m">0</span><span class="o">],</span><span class="nx">startDate</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span><span class="nx">startDate</span><span class="o">[</span><span class="m">2</span><span class="o">]);</span>
|
|
<span class="k">var</span> <span class="nx">dCurrent</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">startDate</span><span class="o">[</span><span class="m">0</span><span class="o">],</span><span class="nx">startDate</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span><span class="nx">startDate</span><span class="o">[</span><span class="m">2</span><span class="o">]),</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="k">var</span> <span class="nx">dEnd</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">endDate</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="nx">endDate</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span> <span class="nx">endDate</span><span class="o">[</span><span class="m">2</span><span class="o">]);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">results</span> <span class="o">=</span> <span class="o">[];</span>
|
|
<span class="nx">results</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">startDate</span><span class="o">);</span>
|
|
<span class="k">while</span> <span class="o">(</span><span class="nx">dCurrent</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o"><=</span> <span class="nx">dEnd</span><span class="o">.</span><span class="nx">getTime</span><span class="o">())</span> <span class="o">{</span>
|
|
<span class="nx">results</span><span class="o">.</span><span class="nx">push</span><span class="o">([</span><span class="nx">dCurrent</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span><span class="nx">dCurrent</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()+</span><span class="m">1</span><span class="o">,</span><span class="nx">dCurrent</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()]);</span>
|
|
<span class="nx">dCurrent</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">dCurrent</span><span class="o">,</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">return</span> <span class="nx">results</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END DATE PARSE METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN RENDERER METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Resets the render stack of the current calendar to its original pre-render value.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">resetRenderers</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_renderStack</span><span class="o">.</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Clears the inner HTML, CSS class and style information from the specified cell.</span>
|
|
<span class="c">* @method clearElement</span>
|
|
<span class="c">* @param {HTMLTableCellElement} The cell to clear</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">clearElement</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">cell</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s2">"&#160;"</span><span class="o">;</span>
|
|
<span class="nx">cell</span><span class="o">.</span><span class="nx">className</span><span class="o">=</span><span class="s2">""</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Adds a renderer to the render stack. The function reference passed to this method will be executed</span>
|
|
<span class="c">* when a date cell matches the conditions specified in the date string for this renderer.</span>
|
|
<span class="c">* @method addRenderer</span>
|
|
<span class="c">* @param {String} sDates A date string to associate with the specified renderer. Valid formats</span>
|
|
<span class="c">* include date (12/24/2005), month/day (12/24), and range (12/1/2004-1/1/2005)</span>
|
|
<span class="c">* @param {Function} fnRender The function executed to render cells that match the render rules for this renderer.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">addRenderer</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">sDates</span><span class="o">,</span> <span class="nx">fnRender</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">aDates</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseDates</span><span class="o">(</span><span class="nx">sDates</span><span class="o">);</span>
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">aDates</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">aDate</span> <span class="o">=</span> <span class="nx">aDates</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">aDate</span><span class="o">.</span><span class="nx">length</span> <span class="o">==</span> <span class="m">2</span><span class="o">)</span> <span class="o">{</span> <span class="c">// this is either a range or a month/day combo</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">aDate</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="k">instanceof</span> <span class="nb">Array</span><span class="o">)</span> <span class="o">{</span> <span class="c">// this is a range</span>
|
|
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">_addRenderer</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">RANGE</span><span class="o">,</span><span class="nx">aDate</span><span class="o">,</span><span class="nx">fnRender</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// this is a month/day combo</span>
|
|
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">_addRenderer</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MONTH_DAY</span><span class="o">,</span><span class="nx">aDate</span><span class="o">,</span><span class="nx">fnRender</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">aDate</span><span class="o">.</span><span class="nx">length</span> <span class="o">==</span> <span class="m">3</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_addRenderer</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">DATE</span><span class="o">,</span><span class="nx">aDate</span><span class="o">,</span><span class="nx">fnRender</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* The private method used for adding cell renderers to the local render stack.</span>
|
|
<span class="c">* This method is called by other methods that set the renderer type prior to the method call.</span>
|
|
<span class="c">* @method _addRenderer</span>
|
|
<span class="c">* @private</span>
|
|
<span class="c">* @param {String} type The type string that indicates the type of date renderer being added.</span>
|
|
<span class="c">* Values are YAHOO.widget.Calendar.DATE, YAHOO.widget.Calendar.MONTH_DAY, YAHOO.widget.Calendar.WEEKDAY,</span>
|
|
<span class="c">* YAHOO.widget.Calendar.RANGE, YAHOO.widget.Calendar.MONTH</span>
|
|
<span class="c">* @param {Array} aDates An array of dates used to construct the renderer. The format varies based</span>
|
|
<span class="c">* on the renderer type</span>
|
|
<span class="c">* @param {Function} fnRender The function executed to render cells that match the render rules for this renderer.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">_addRenderer</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">aDates</span><span class="o">,</span> <span class="nx">fnRender</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">add</span> <span class="o">=</span> <span class="o">[</span><span class="nx">type</span><span class="o">,</span><span class="nx">aDates</span><span class="o">,</span><span class="nx">fnRender</span><span class="o">];</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span><span class="o">.</span><span class="nx">unshift</span><span class="o">(</span><span class="nx">add</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_renderStack</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">renderStack</span><span class="o">.</span><span class="nx">concat</span><span class="o">();</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Adds a month to the render stack. The function reference passed to this method will be executed</span>
|
|
<span class="c">* when a date cell matches the month passed to this method.</span>
|
|
<span class="c">* @method addMonthRenderer</span>
|
|
<span class="c">* @param {Number} month The month (1-12) to associate with this renderer</span>
|
|
<span class="c">* @param {Function} fnRender The function executed to render cells that match the render rules for this renderer.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">addMonthRenderer</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">month</span><span class="o">,</span> <span class="nx">fnRender</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_addRenderer</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">,[</span><span class="nx">month</span><span class="o">],</span><span class="nx">fnRender</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Adds a weekday to the render stack. The function reference passed to this method will be executed</span>
|
|
<span class="c">* when a date cell matches the weekday passed to this method.</span>
|
|
<span class="c">* @method addWeekdayRenderer</span>
|
|
<span class="c">* @param {Number} weekday The weekday (0-6) to associate with this renderer</span>
|
|
<span class="c">* @param {Function} fnRender The function executed to render cells that match the render rules for this renderer.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">addWeekdayRenderer</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">weekday</span><span class="o">,</span> <span class="nx">fnRender</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_addRenderer</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">WEEKDAY</span><span class="o">,[</span><span class="nx">weekday</span><span class="o">],</span><span class="nx">fnRender</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END RENDERER METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN CSS METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Removes all styles from all body cells in the current calendar table.</span>
|
|
<span class="c">* @method clearAllBodyCellStyles</span>
|
|
<span class="c">* @param {style} The CSS class name to remove from all calendar body cells</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">clearAllBodyCellStyles</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">style</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">c</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">c</span><span class="o"><</span><span class="k">this</span><span class="o">.</span><span class="nx">cells</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">c</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cells</span><span class="o">[</span><span class="nx">c</span><span class="o">],</span><span class="nx">style</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">// END CSS METHODS</span>
|
|
<span class="c"></span>
|
|
<span class="c">// BEGIN GETTER/SETTER METHODS</span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Sets the calendar's month explicitly</span>
|
|
<span class="c">* @method setMonth</span>
|
|
<span class="c">* @param {Number} month The numeric month, from 0 (January) to 11 (December)</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">setMonth</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">month</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">cfgPageDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">current</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">);</span>
|
|
<span class="nx">current</span><span class="o">.</span><span class="nx">setMonth</span><span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">month</span><span class="o">,</span> <span class="m">10</span><span class="o">));</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">,</span> <span class="nx">current</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Sets the calendar's year explicitly.</span>
|
|
<span class="c">* @method setYear</span>
|
|
<span class="c">* @param {Number} year The numeric 4-digit year</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">setYear</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">year</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">cfgPageDate</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">PAGEDATE</span><span class="o">.</span><span class="nx">key</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">current</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">);</span>
|
|
<span class="nx">current</span><span class="o">.</span><span class="nx">setFullYear</span><span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">year</span><span class="o">,</span> <span class="m">10</span><span class="o">));</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="nx">cfgPageDate</span><span class="o">,</span> <span class="nx">current</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Gets the list of currently selected dates from the calendar.</span>
|
|
<span class="c">* @method getSelectedDates</span>
|
|
<span class="c">* @return {Date[]} An array of currently selected JavaScript Date objects.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">getSelectedDates</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">returnDates</span> <span class="o">=</span> <span class="o">[];</span>
|
|
<span class="k">var</span> <span class="nx">selected</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">_DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">SELECTED</span><span class="o">.</span><span class="nx">key</span><span class="o">);</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">d</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">d</span><span class="o"><</span><span class="nx">selected</span><span class="o">.</span><span class="nx">length</span><span class="o">;++</span><span class="nx">d</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">dateArray</span> <span class="o">=</span> <span class="nx">selected</span><span class="o">[</span><span class="nx">d</span><span class="o">];</span>
|
|
|
|
<span class="k">var</span> <span class="nx">date</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">dateArray</span><span class="o">[</span><span class="m">0</span><span class="o">],</span><span class="nx">dateArray</span><span class="o">[</span><span class="m">1</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span><span class="nx">dateArray</span><span class="o">[</span><span class="m">2</span><span class="o">]);</span>
|
|
<span class="nx">returnDates</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">date</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">returnDates</span><span class="o">.</span><span class="nx">sort</span><span class="o">(</span> <span class="k">function</span><span class="o">(</span><span class="nx">a</span><span class="o">,</span><span class="nx">b</span><span class="o">)</span> <span class="o">{</span> <span class="k">return</span> <span class="nx">a</span><span class="o">-</span><span class="nx">b</span><span class="o">;</span> <span class="o">}</span> <span class="o">);</span>
|
|
<span class="k">return</span> <span class="nx">returnDates</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/// END GETTER/SETTER METHODS ///</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Hides the Calendar's outer container from view.</span>
|
|
<span class="c">* @method hide</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">hide</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">"none"</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Shows the Calendar's outer container.</span>
|
|
<span class="c">* @method show</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">show</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">oDomContainer</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">"block"</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* Returns a string representing the current browser.</span>
|
|
<span class="c">* @property browser</span>
|
|
<span class="c">* @type String</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">browser</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">ua</span> <span class="o">=</span> <span class="nx">navigator</span><span class="o">.</span><span class="nx">userAgent</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">();</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">ua</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">'opera'</span><span class="o">)!=-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Opera (check first in case of spoof)</span>
|
|
<span class="c"></span> <span class="k">return</span> <span class="s1">'opera'</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">ua</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">'msie 7'</span><span class="o">)!=-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span> <span class="c">// IE7</span>
|
|
<span class="c"></span> <span class="k">return</span> <span class="s1">'ie7'</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">ua</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">'msie'</span><span class="o">)</span> <span class="o">!=-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span> <span class="c">// IE</span>
|
|
<span class="c"></span> <span class="k">return</span> <span class="s1">'ie'</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">ua</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">'safari'</span><span class="o">)!=-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Safari (check before Gecko because it includes "like Gecko")</span>
|
|
<span class="c"></span> <span class="k">return</span> <span class="s1">'safari'</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">ua</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">'gecko'</span><span class="o">)</span> <span class="o">!=</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Gecko</span>
|
|
<span class="c"></span> <span class="k">return</span> <span class="s1">'gecko'</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}();</span>
|
|
<span class="c">/**</span>
|
|
<span class="c">* Returns a string representation of the object.</span>
|
|
<span class="c">* @method toString</span>
|
|
<span class="c">* @return {String} A string representation of the Calendar object.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">toString</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="s2">"Calendar "</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">id</span><span class="o">;</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c">* @namespace YAHOO.widget</span>
|
|
<span class="c">* @class Calendar_Core</span>
|
|
<span class="c">* @extends YAHOO.widget.Calendar</span>
|
|
<span class="c">* @deprecated The old Calendar_Core class is no longer necessary.</span>
|
|
<span class="c">*/</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar_Core</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">;</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Cal_Core</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Calendar</span><span class="o">;</span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="yui-b">
|
|
<div class="nav">
|
|
|
|
<div class="module">
|
|
<h4>Modules</h4>
|
|
<ul class="content">
|
|
|
|
<li class=""><a href="module_animation.html">animation</a></li>
|
|
|
|
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
|
|
|
<li class=""><a href="module_button.html">button</a></li>
|
|
|
|
<li class="selected"><a href="module_calendar.html">calendar</a></li>
|
|
|
|
<li class=""><a href="module_connection.html">connection</a></li>
|
|
|
|
<li class=""><a href="module_container.html">container</a></li>
|
|
|
|
<li class=""><a href="module_datasource.html">datasource</a></li>
|
|
|
|
<li class=""><a href="module_datatable.html">datatable</a></li>
|
|
|
|
<li class=""><a href="module_dom.html">dom</a></li>
|
|
|
|
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
|
|
|
<li class=""><a href="module_element.html">element</a></li>
|
|
|
|
<li class=""><a href="module_event.html">event</a></li>
|
|
|
|
<li class=""><a href="module_history.html">history</a></li>
|
|
|
|
<li class=""><a href="module_logger.html">logger</a></li>
|
|
|
|
<li class=""><a href="module_menu.html">menu</a></li>
|
|
|
|
<li class=""><a href="module_slider.html">slider</a></li>
|
|
|
|
<li class=""><a href="module_tabview.html">tabview</a></li>
|
|
|
|
<li class=""><a href="module_treeview.html">treeview</a></li>
|
|
|
|
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="module">
|
|
<h4>Classes</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="YAHOO.widget.Calendar.html">YAHOO.widget.Calendar</a></li>
|
|
<li class=""><a href="YAHOO.widget.Calendar2up.html">YAHOO.widget.Calendar2up</a></li>
|
|
<li class=""><a href="YAHOO.widget.Calendar_Core.html">YAHOO.widget.Calendar_Core</a></li>
|
|
<li class=""><a href="YAHOO.widget.CalendarGroup.html">YAHOO.widget.CalendarGroup</a></li>
|
|
<li class=""><a href="YAHOO.widget.DateMath.html">YAHOO.widget.DateMath</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="module">
|
|
<h4>Files</h4>
|
|
<ul class="content">
|
|
<li class="selected"><a href="Calendar.js.html">Calendar.js</a></li>
|
|
<li class=""><a href="CalendarGroup.js.html">CalendarGroup.js</a></li>
|
|
<li class=""><a href="DateMath.js.html">DateMath.js</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="ft">
|
|
<hr />
|
|
Copyright © 2007 Yahoo! Inc. All rights reserved.
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|