[
https://issues.apache.org/jira/browse/CLK-612?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12801753#action_12801753
]
Malcolm Edgar commented on CLK-612:
-----------------------------------
I think having a lenientValidation property is excellent, as we can introduce
this new behaviour without effecting the existing behaviour. I am assuming by
default lenientValidation would be false.
regards Malcolm Edgar
> Better user experience with DateField (and CalendarField).
> ----------------------------------------------------------
>
> Key: CLK-612
> URL: https://issues.apache.org/jira/browse/CLK-612
> Project: Click
> Issue Type: Improvement
> Affects Versions: 2.1.0, 2.1.0 RC1
> Reporter: Andrey Rybin
>
> Current DateField.validate() is too strict.
> My suggestion is:
> Add two properties:
> 1) String prop similarDelimiters:
> its format: [oldChar1][newChar1] [oldChar2][newChar2].... if odd then
> ignore last char.
> 2) boolean prop lenientValidation //def false
> 3) Modify setValue (not tested):
> public void setValue(String value) {
> if (value != null && value.length() > 0) {
> value = value.trim();
> if (similarDelimiters != null && similarDelimiters.length > 0) {
> for (int i=0; i<similarDelimiters.length-1; i+=2) {
> value = value.replace(similarDelimiters.charAt(i),
> similarDelimiters.charAt(i+1));
> }//f
> }//i
> try {
> Date parsedDate = getDateFormat().parse(value);
> // Cache date for subsequent retrievals
> date = new Date(parsedDate.getTime());
> } catch (ParseException pe) {
> date = null;
> }
> } else {
> date = null;
> }
> super.setValue(value);
> }//setValue
> Because people in Russia use different characters (ex: /,-, .(dot)) as date
> delimiters, not one.
> So I will set similarDelimiters to "-/\\/./" and pattern to dd/MM/yyyy - and
> it will work.
> 4) Modify validate()
> dateFormat.setLenient(lenientValidation);
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.