[ 
https://issues.apache.org/jira/browse/WICKET-2767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12867127#action_12867127
 ] 

martin kovacik commented on WICKET-2767:
----------------------------------------

The same issue is still present in 1.4.8 in DateTimeField component.

> DatePicker Calendar: wrong year format when 4 digits are used (yyyy), e.g. 
> 2010 --> 0010
> ----------------------------------------------------------------------------------------
>
>                 Key: WICKET-2767
>                 URL: https://issues.apache.org/jira/browse/WICKET-2767
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-datetime
>    Affects Versions: 1.4.7
>            Reporter: Giovanni
>            Assignee: Igor Vaynberg
>             Fix For: 1.4.8, 1.5-M1
>
>         Attachments: wicket-2767.patch
>
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> I found that there is still a bug in Wicket 1.4.7 in case that the 
> datePattern is "dd/MM/yyyy".
> For example, if you use the DatePicker and select a date such as
> 23/02/2010 from the calendar GUI, the date selected in the DateTextField is 
> "23/02/0010".
> This is the example Java code:
>                 // define the date text field for the data decorrenza
>                 DateTextField dataDecorrenzaDaTextField = new 
> DateTextField("dataDecorrenzaDa",
>                         new PropertyModel(this.accordo, "dataDecorrenzaDa"),
>                         new PatternDateConverter("dd/MM/yyyy", true)
>                 );
>                 // add the graphical calendar date picker
>                 dataDecorrenzaDaTextField.add(new DatePicker() {
>                         @Override
>                         protected boolean enableMonthYearSelection() {
>  
>                             // enable month/year selection
>                             return true;
>                         } // end enableMonthYearSelection
>                     } // end DatePicker
>                 );
> I found that the bug is still in the "wicket-date.js", line 137.
> The wrong code is:
> if(datePattern.match(/yy+/)) year = Wicket.DateTime.padDateFragment(year % 
> 100);
> This line also makes the module 100 on the year, when the year pattern is 
> "yyyy".
> The fixed code is:
> if(datePattern.match(/yyyy+/)) {
>     year = year;
> } else if(datePattern.match(/yy+/)) year = 
> Wicket.DateTime.padDateFragment(year % 100);

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to