summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
authorctrlaltca@gmail.com <>2011-05-11 15:11:52 +0000
committerctrlaltca@gmail.com <>2011-05-11 15:11:52 +0000
commit62d800c9ff91384cd1a124ddf790cec1bba170e2 (patch)
tree960626a1de8d298f9568dfb1fb91ff185cda6147 /framework
parenta99669b6909daf496741496e8909b14a43fd4395 (diff)
Small fix for a regression introduced in r2888 (TActiveDatePicker was broken if InputMode="DropDownList" )
Testcase for ActiveDatePicker have been updated (it was checking for year 2005 in the datepicker, now it checks for date('Y')+1)
Diffstat (limited to 'framework')
-rwxr-xr-xframework/Web/Javascripts/source/prado/activecontrols/activedatepicker.js177
1 files changed, 89 insertions, 88 deletions
diff --git a/framework/Web/Javascripts/source/prado/activecontrols/activedatepicker.js b/framework/Web/Javascripts/source/prado/activecontrols/activedatepicker.js
index 68d0e429..8857ee05 100755
--- a/framework/Web/Javascripts/source/prado/activecontrols/activedatepicker.js
+++ b/framework/Web/Javascripts/source/prado/activecontrols/activedatepicker.js
@@ -1,90 +1,91 @@
-/**
- * TActiveDatePicker control
- */
-Prado.WebUI.TActiveDatePicker = Class.extend(Prado.WebUI.TDatePicker,
-{
- initialize : function(options)
- {
- this.options = options || [];
- this.control = $(options.ID);
- this.dateSlot = new Array(42);
- this.weekSlot = new Array(6);
- this.minimalDaysInFirstWeek = 4;
- this.selectedDate = this.newDate();
- this.positionMode = 'Bottom';
-
-
- // Issue 181
- $(this.control).stopObserving();
-
- //which element to trigger to show the calendar
- if(this.options.Trigger)
- {
- this.trigger = $(this.options.Trigger) ;
- var triggerEvent = this.options.TriggerEvent || "click";
- }
- else
- {
- this.trigger = this.control;
- var triggerEvent = this.options.TriggerEvent || "focus";
- }
+/**
+ * TActiveDatePicker control
+ */
+Prado.WebUI.TActiveDatePicker = Class.extend(Prado.WebUI.TDatePicker,
+{
+ initialize : function(options)
+ {
+ this.options = options || [];
+ this.control = $(options.ID);
+ this.dateSlot = new Array(42);
+ this.weekSlot = new Array(6);
+ this.minimalDaysInFirstWeek = 4;
+ this.selectedDate = this.newDate();
+ this.positionMode = 'Bottom';
+
+
+ // Issue 181
+ $(this.control).stopObserving();
+
+ //which element to trigger to show the calendar
+ if(this.options.Trigger)
+ {
+ this.trigger = $(this.options.Trigger) ;
+ var triggerEvent = this.options.TriggerEvent || "click";
+ }
+ else
+ {
+ this.trigger = this.control;
+ var triggerEvent = this.options.TriggerEvent || "focus";
+ }
// Issue 181
- $(this.trigger).stopObserving();
-
- // Popup position
- if(this.options.PositionMode == 'Top')
- {
- this.positionMode = this.options.PositionMode;
- }
-
- Object.extend(this,options);
-
- if (this.options.ShowCalendar)
- Event.observe(this.trigger, triggerEvent, this.show.bindEvent(this));
-
- // Listen to change event
- if(this.options.InputMode == "TextBox")
- {
- Event.observe(this.control, "change", this.onDateChanged.bindEvent(this));
- }
- else
- {
- var day = Prado.WebUI.TDatePicker.getDayListControl(this.control);
- var month = Prado.WebUI.TDatePicker.getMonthListControl(this.control);
- var year = Prado.WebUI.TDatePicker.getYearListControl(this.control);
- if (day) Event.observe (day, "change", this.onDateChanged.bindEvent(this));
- if (month) Event.observe (month, "change", this.onDateChanged.bindEvent(this));
- if (year) Event.observe (year, "change", this.onDateChanged.bindEvent(this));
-
- }
-
- },
-
- // Respond to change event on the textbox or dropdown list
- // This method raises OnDateChanged event on client side if it has been defined,
- // and raise the callback request
- onDateChanged : function ()
- {
- var date;
- if (this.options.InputMode == "TextBox")
- {
- date=this.control.value;
- }
- else
- {
- var day = Prado.WebUI.TDatePicker.getDayListControl(this.control);
- if (day) day=day.selectedIndex+1;
- var month = Prado.WebUI.TDatePicker.getMonthListControl(this.control);
- if (month) month=month.selectedIndex;
- var year = Prado.WebUI.TDatePicker.getYearListControl(this.control);
- if (year) year=year.value;
- date=new Date(year, month, day, 0,0,0).SimpleFormat(this.Format, this);
- }
- if (typeof(this.options.OnDateChanged) == "function") this.options.OnDateChanged(this, date);
-
- // Make callback request
- var request = new Prado.CallbackRequest(this.options.EventTarget,this.options);
- request.dispatch();
- }
-});
+ if(this.trigger)
+ $(this.trigger).stopObserving();
+
+ // Popup position
+ if(this.options.PositionMode == 'Top')
+ {
+ this.positionMode = this.options.PositionMode;
+ }
+
+ Object.extend(this,options);
+
+ if (this.options.ShowCalendar)
+ Event.observe(this.trigger, triggerEvent, this.show.bindEvent(this));
+
+ // Listen to change event
+ if(this.options.InputMode == "TextBox")
+ {
+ Event.observe(this.control, "change", this.onDateChanged.bindEvent(this));
+ }
+ else
+ {
+ var day = Prado.WebUI.TDatePicker.getDayListControl(this.control);
+ var month = Prado.WebUI.TDatePicker.getMonthListControl(this.control);
+ var year = Prado.WebUI.TDatePicker.getYearListControl(this.control);
+ if (day) Event.observe (day, "change", this.onDateChanged.bindEvent(this));
+ if (month) Event.observe (month, "change", this.onDateChanged.bindEvent(this));
+ if (year) Event.observe (year, "change", this.onDateChanged.bindEvent(this));
+
+ }
+
+ },
+
+ // Respond to change event on the textbox or dropdown list
+ // This method raises OnDateChanged event on client side if it has been defined,
+ // and raise the callback request
+ onDateChanged : function ()
+ {
+ var date;
+ if (this.options.InputMode == "TextBox")
+ {
+ date=this.control.value;
+ }
+ else
+ {
+ var day = Prado.WebUI.TDatePicker.getDayListControl(this.control);
+ if (day) day=day.selectedIndex+1;
+ var month = Prado.WebUI.TDatePicker.getMonthListControl(this.control);
+ if (month) month=month.selectedIndex;
+ var year = Prado.WebUI.TDatePicker.getYearListControl(this.control);
+ if (year) year=year.value;
+ date=new Date(year, month, day, 0,0,0).SimpleFormat(this.Format, this);
+ }
+ if (typeof(this.options.OnDateChanged) == "function") this.options.OnDateChanged(this, date);
+
+ // Make callback request
+ var request = new Prado.CallbackRequest(this.options.EventTarget,this.options);
+ request.dispatch();
+ }
+});