[richfaces-svn-commits] JBoss Rich Faces SVN: r11915 - trunk/ui/calendar/src/main/resources/org/richfaces/renderkit/html/scripts.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Fri Dec 19 09:01:35 EST 2008
Author: pyaschenko
Date: 2008-12-19 09:01:35 -0500 (Fri, 19 Dec 2008)
New Revision: 11915
Modified:
trunk/ui/calendar/src/main/resources/org/richfaces/renderkit/html/scripts/calendar.js
Log:
https://jira.jboss.org/jira/browse/RF-3759
Modified: trunk/ui/calendar/src/main/resources/org/richfaces/renderkit/html/scripts/calendar.js
===================================================================
--- trunk/ui/calendar/src/main/resources/org/richfaces/renderkit/html/scripts/calendar.js 2008-12-19 13:55:25 UTC (rev 11914)
+++ trunk/ui/calendar/src/main/resources/org/richfaces/renderkit/html/scripts/calendar.js 2008-12-19 14:01:35 UTC (rev 11915)
@@ -1761,7 +1761,7 @@
this.changeCurrentDateOffset(-1,0);
},
- changeCurrentDate: function(year, month) {
+ changeCurrentDate: function(year, month, noUpdate) {
if (this.getCurrentMonth()!=month || this.getCurrentYear()!=year)
{
var date = new Date(year, month,1);
@@ -1772,10 +1772,12 @@
// value is updated in function onUpdate() and then
// the "currentdateselected" Event is fired.
this.currentDate = date;
- this.onUpdate();
+ if (noUpdate) this.render(); else this.onUpdate();
this.invokeEvent("currentdateselected", $(this.id), null, date);
+ return true;
}
}
+ return false;
},
changeCurrentDateOffset: function(yearOffset, monthOffset) {
@@ -1899,21 +1901,19 @@
// fire user event
var flag = true;
- var isDateChanged = false;
+ var isDateChange = false;
if ( (oldSelectedDate - newSelectedDate) && (oldSelectedDate!=null || newSelectedDate!=null) )
{
- isDateChanged = true;
- flag = this.invokeEvent("dateselect", eventData.element, eventData.event, date);
+ isDateChange = this.invokeEvent("dateselect", eventData.element, eventData.event, date);
}
- if (flag)
+ if (isDateChange)
{
- this.selectedDate = newSelectedDate;
- if (this.selectedDate!=null)
+ if (newSelectedDate!=null)
{
- var d = new Date(this.selectedDate);
- if (d.getMonth()==this.currentDate.getMonth() && d.getFullYear()==this.currentDate.getFullYear())
+ if (newSelectedDate.getMonth()==this.currentDate.getMonth() && newSelectedDate.getFullYear()==this.currentDate.getFullYear())
{
+ this.selectedDate = newSelectedDate;
if (!oldSelectedDate || (oldSelectedDate - this.selectedDate))
{
// find cell and change style class
@@ -1934,9 +1934,12 @@
else
{
// change currentDate and call this.onUpdate();
- d.setDate(1);
- this.currentDate = d;
- if (noUpdate) this.render(); else this.onUpdate();
+ if (this.changeCurrentDate(newSelectedDate.getFullYear(), newSelectedDate.getMonth(), noUpdate))
+ {
+ this.selectedDate = newSelectedDate;
+ } else {
+ isDateChange = false;
+ }
}
}
else
@@ -1964,7 +1967,7 @@
}
// call user event
- if (isDateChanged)
+ if (isDateChange)
{
this.invokeEvent("dateselected", eventData.element, eventData.event, this.selectedDate);
if (!this.showApplyButton)
@@ -1974,7 +1977,7 @@
}
}
- return flag;
+ return isDateChange;
},
resetSelectedDate: function()
More information about the richfaces-svn-commits
mailing list