Author: hlship
Date: Fri Nov 11 14:35:35 2005
New Revision: 332659
URL: http://svn.apache.org/viewcvs?rev=332659&view=rev
Log:
TAPESTRY-669,TAPESTRY-233,TAPESTRY-690,TAPESTRY-228: Fix a number of bugs in
the DatePicker component's JavaScript
Added:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.js
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script
jakarta/tapestry/trunk/status.xml
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java
Fri Nov 11 14:35:35 2005
@@ -59,8 +59,6 @@
public abstract IAsset getIcon();
- private IScript _script;
-
private static final String SYM_NAME = "name";
private static final String SYM_FORMNAME = "formName";
@@ -81,6 +79,8 @@
private static final String SYM_INCL_WEEK = "includeWeek";
+ private static final String SYM_CLEAR_BUTTON_LABEL = "clearButtonLabel";
+
private static final String SYM_VALUE = "value";
private static final String SYM_BUTTONONCLICKHANDLER =
"buttonOnclickHandler";
@@ -90,25 +90,11 @@
*
* @since 4.0
*/
- public abstract IScriptSource getScriptSource();
+ public abstract IScript getScript();
/**
- * @see org.apache.tapestry.AbstractComponent#finishLoad()
- */
- protected void finishLoad()
- {
- super.finishLoad();
-
- IScriptSource source = getScriptSource();
-
- Resource location =
getSpecification().getSpecificationLocation().getRelativeResource(
- "DatePicker.script");
-
- _script = source.getScript(location);
- }
-
- /**
- * @see
org.apache.tapestry.form.AbstractFormComponent#renderFormComponent(org.apache.tapestry.IMarkupWriter,
org.apache.tapestry.IRequestCycle)
+ * @see
org.apache.tapestry.form.AbstractFormComponent#renderFormComponent(org.apache.tapestry.IMarkupWriter,
+ * org.apache.tapestry.IRequestCycle)
*/
protected void renderFormComponent(IMarkupWriter writer, IRequestCycle
cycle)
{
@@ -123,9 +109,9 @@
Calendar cal = Calendar.getInstance(locale);
String name = getName();
-
+
String value = getTranslatedFieldSupport().format(this, getValue());
-
+
Map symbols = new HashMap();
symbols.put(SYM_NAME, name);
@@ -138,10 +124,11 @@
symbols.put(SYM_SHORT_WEEKDAYNAMES,
makeStringList(dfs.getShortWeekdays(), 1, 8));
symbols.put(SYM_FIRSTDAYINWEEK, new Integer(cal.getFirstDayOfWeek() -
1));
symbols.put(SYM_MINDAYSINFIRSTWEEK, new
Integer(cal.getMinimalDaysInFirstWeek()));
+ symbols.put(SYM_CLEAR_BUTTON_LABEL, getMessages().getMessage("clear"));
symbols.put(SYM_FORMNAME, getForm().getName());
symbols.put(SYM_VALUE, getValue());
- _script.execute(cycle, pageRenderSupport, symbols);
+ getScript().execute(cycle, pageRenderSupport, symbols);
renderDelegatePrefix(writer, cycle);
@@ -184,18 +171,19 @@
}
/**
- * @see
org.apache.tapestry.form.AbstractFormComponent#rewindFormComponent(org.apache.tapestry.IMarkupWriter,
org.apache.tapestry.IRequestCycle)
+ * @see
org.apache.tapestry.form.AbstractFormComponent#rewindFormComponent(org.apache.tapestry.IMarkupWriter,
+ * org.apache.tapestry.IRequestCycle)
*/
protected void rewindFormComponent(IMarkupWriter writer, IRequestCycle
cycle)
{
String value = cycle.getParameter(getName());
-
+
try
{
Date date = (Date) getTranslatedFieldSupport().parse(this, value);
-
+
getValidatableFieldSupport().validate(this, writer, cycle, date);
-
+
setValue(date);
}
catch (ValidatorException e)
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.js
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.js?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
Binary files - no diff available.
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc
Fri Nov 11 14:35:35 2005
@@ -33,7 +33,7 @@
<asset name="defaultIcon" path="DatePickerIcon.png"/>
- <inject property="scriptSource" object="infrastructure:scriptSource"/>
+ <inject property="script" type="script" object="DatePicker.script"/>
<inject property="translatedFieldSupport"
object="service:tapestry.form.TranslatedFieldSupport"/>
<inject property="validatableFieldSupport"
object="service:tapestry.form.ValidatableFieldSupport"/>
Added:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties?rev=332659&view=auto
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties
(added)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties
Fri Nov 11 14:35:35 2005
@@ -0,0 +1,15 @@
+# Copyright 2005 The Apache Software Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+clear=Clear
\ No newline at end of file
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script
Fri Nov 11 14:35:35 2005
@@ -33,6 +33,7 @@
<input-symbol key="minimalDaysInFirstWeek" required="yes"/>
<input-symbol key="format" required="yes"/>
<input-symbol key="includeWeek" required="yes"/>
+<input-symbol key="clearButtonLabel" required="yes"/>
<input-symbol key="value" required="no"/>
<let key="calendarObject" unique="yes">
@@ -47,26 +48,18 @@
var ${calendarObject};
</body>
-<initialization>
-
+<initialization>
<if expression="value == null">
${calendarObject} = new Calendar();
</if>
<if expression="value != null">
${calendarObject} = new Calendar(${value.time});
-</if>
-
-${calendarObject}.setMonthNames(new Array(${monthNames}));
-${calendarObject}.setShortMonthNames(new Array(${shortMonthNames}));
-${calendarObject}.setWeekDayNames(new Array(${weekDayNames}));
-${calendarObject}.setShortWeekDayNames(new Array(${shortWeekDayNames}));
-${calendarObject}.setFormat("${format}");
-${calendarObject}.setFirstDayOfWeek(${firstDayInWeek});
-${calendarObject}.setMinimalDaysInFirstWeek(${minimalDaysInFirstWeek});
-${calendarObject}.setIncludeWeek(${includeWeek});
-
-${calendarObject}.create();
-
+</if>
+${calendarObject}.initialize([${monthNames}],
+ [${shortMonthNames}],
+ [${weekDayNames}],
+ [${shortWeekDayNames}],
+ "${format}", ${firstDayInWeek}, ${includeWeek}, ${minimalDaysInFirstWeek},
"${clearButtonLabel}");
${calendarObject}.onchange = function() {
var field = document.${formName}.${name};
var value = ${calendarObject}.formatDate();
@@ -75,7 +68,6 @@
if (field.onchange) field.onchange();
}
}
-
</initialization>
</script>
Modified: jakarta/tapestry/trunk/status.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/status.xml?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
--- jakarta/tapestry/trunk/status.xml (original)
+++ jakarta/tapestry/trunk/status.xml Fri Nov 11 14:35:35 2005
@@ -57,6 +57,7 @@
<action type="fix" dev="HLS" fixes-bug="TAPESTRY-742">LinkSubmit renders
overly verbose JavaScript</action>
<action type="fix" dev="HLS" fixes-bug="TAPESTRY-620">Expose the current
IRequestCycle as an injectable service</action>
<action type="fix" dev="HLS" fixes-bug="TAPESTRY-517">Using a FieldLabel
component after the decorated form component causes the FieldLabel's id
attribute to be wrong</action>
+ <action type="fix" dev="HLS"
fixes-bug="TAPESTRY-669,TAPESTRY-233,TAPESTRY-690,TAPESTRY-228">Fix a number of
bugs in the DatePicker component's JavaScript</action>
</release>
<release version="4.0-beta-12" date="Oct 30 2005">
<action type="fix" dev="HLS" fixes-bug="TAPESTRY-718">Asset injection
makes assets appear as null inside finishLoad()</action>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]