WW-1917 Tag datetimepicker gives "Invalid field value for field xxx:" on form submit when browser locale does not match request_locale

git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@536393 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Musachy Barroso
2007-05-09 02:04:20 +00:00
parent 2b03d06aab
commit bf2301aad5
6 changed files with 459 additions and 408 deletions
@@ -28,6 +28,27 @@ dojo.widget.defineWidget(
}
},
_syncValueNode:function () {
var date = this.datePicker.value;
var value = "";
switch (this.saveFormat.toLowerCase()) {
case "rfc":
case "iso":
case "":
value = dojo.date.toRfc3339(date);
break;
case "posix":
case "unix":
value = Number(date);
break;
default:
if (date) {
value = dojo.date.format(date, {datePattern:this.saveFormat, selector:"dateOnly", locale:this.lang});
}
}
this.valueNode.value = value;
},
_updateText : function() {
struts.widget.StrutsDatePicker.superclass._updateText.apply(this, arguments);
if(this.valueNotifyTopicsArray != null) {
@@ -19,8 +19,6 @@ dojo.widget.defineWidget(
postCreate: function() {
struts.widget.StrutsTimePicker.superclass.postCreate.apply(this, arguments);
this.inputNode.name = this.name;
//set cssClass
if(this.extraArgs["class"]) {
dojo.html.setClass(this.inputNode, this.extraArgs["class"]);
@@ -31,8 +29,6 @@ dojo.widget.defineWidget(
dojo.html.setStyleText(this.inputNode, this.extraArgs.style);
}
this.valueNode.name = this.inputName;
//value topics
if(!dojo.string.isBlank(this.valueNotifyTopics)) {
this.valueNotifyTopicsArray = this.valueNotifyTopics.split(",");
File diff suppressed because it is too large Load Diff
@@ -26980,8 +26980,6 @@ dojo.widget.defineWidget(
postCreate: function() {
struts.widget.StrutsTimePicker.superclass.postCreate.apply(this, arguments);
this.inputNode.name = this.name;
//set cssClass
if(this.extraArgs["class"]) {
dojo.html.setClass(this.inputNode, this.extraArgs["class"]);
@@ -26992,8 +26990,6 @@ dojo.widget.defineWidget(
dojo.html.setStyleText(this.inputNode, this.extraArgs.style);
}
this.valueNode.name = this.inputName;
//value topics
if(!dojo.string.isBlank(this.valueNotifyTopics)) {
this.valueNotifyTopicsArray = this.valueNotifyTopics.split(",");
@@ -27788,6 +27784,27 @@ dojo.widget.defineWidget(
}
},
_syncValueNode:function () {
var date = this.datePicker.value;
var value = "";
switch (this.saveFormat.toLowerCase()) {
case "rfc":
case "iso":
case "":
value = dojo.date.toRfc3339(date);
break;
case "posix":
case "unix":
value = Number(date);
break;
default:
if (date) {
value = dojo.date.format(date, {datePattern:this.saveFormat, selector:"dateOnly", locale:this.lang});
}
}
this.valueNode.value = value;
},
_updateText : function() {
struts.widget.StrutsDatePicker.superclass._updateText.apply(this, arguments);
if(this.valueNotifyTopicsArray != null) {
@@ -15,8 +15,8 @@
lang="${parameters.language?html}"<#rt/>
</#if>
<#if parameters.name?if_exists != "">
name="dojo.${parameters.name?html}"<#rt/>
inputName="${parameters.name?html}"<#rt/>
name="${parameters.name?html}"<#rt/>
inputName="dojo.${parameters.name?html}"<#rt/>
</#if>
<#if parameters.displayWeeks?if_exists != "">
displayWeeks="${parameters.displayWeeks?html}"<#rt/>
@@ -2,8 +2,8 @@
id="id"
value="l"
lang="i"
name="dojo.h"
inputName="h"
name="h"
inputName="dojo.h"
displayWeeks="true"
adjustWeeks="true"
startDate="01-01-2007"