You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by iv...@apache.org on 2011/03/09 09:21:55 UTC

svn commit: r1079694 - in /wicket/trunk/wicket-datetime/src: main/java/org/apache/wicket/datetime/markup/html/form/ main/java/org/apache/wicket/extensions/yui/calendar/ test/java/org/apache/wicket/extensions/yui/calendar/

Author: ivaynberg
Date: Wed Mar  9 08:21:55 2011
New Revision: 1079694

URL: http://svn.apache.org/viewvc?rev=1079694&view=rev
Log:
WICKET-3510

Modified:
    wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
    wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
    wicket/trunk/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatePickerTest.java

Modified: wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java?rev=1079694&r1=1079693&r2=1079694&view=diff
==============================================================================
--- wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java (original)
+++ wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java Wed Mar  9 08:21:55 2011
@@ -132,7 +132,7 @@ public class DateTextField extends TextF
 	 */
 	public static DateTextField forShortStyle(String id)
 	{
-		return forShortStyle(id, null);
+		return forShortStyle(id, null, true);
 	}
 
 	/**
@@ -144,9 +144,10 @@ public class DateTextField extends TextF
 	 *            The model
 	 * @return DateTextField
 	 */
-	public static DateTextField forShortStyle(String id, IModel<Date> model)
+	public static DateTextField forShortStyle(String id, IModel<Date> model,
+		boolean applyTimeZoneDifference)
 	{
-		return new DateTextField(id, model, new StyleDateConverter(true));
+		return new DateTextField(id, model, new StyleDateConverter(applyTimeZoneDifference));
 	}
 
 	/**

Modified: wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java?rev=1079694&r1=1079693&r2=1079694&view=diff
==============================================================================
--- wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java (original)
+++ wicket/trunk/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java Wed Mar  9 08:21:55 2011
@@ -377,7 +377,7 @@ public class DateTimeField extends FormC
 	 */
 	protected DateTextField newDateTextField(String id, PropertyModel<Date> dateFieldModel)
 	{
-		return DateTextField.forShortStyle(id, dateFieldModel);
+		return DateTextField.forShortStyle(id, dateFieldModel, false);
 	}
 
 	/**

Modified: wicket/trunk/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatePickerTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatePickerTest.java?rev=1079694&r1=1079693&r2=1079694&view=diff
==============================================================================
--- wicket/trunk/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatePickerTest.java (original)
+++ wicket/trunk/wicket-datetime/src/test/java/org/apache/wicket/extensions/yui/calendar/DatePickerTest.java Wed Mar  9 08:21:55 2011
@@ -173,6 +173,49 @@ public class DatePickerTest extends Wick
 		assertSame(origJodaDef, newJodaDef);
 	}
 
+	public void testDifferentDateTimeZoneConversion() throws ParseException
+	{
+		log.error("=========== testDifferentDateTimeZoneConversion() =================");
+		TimeZone origJvmDef = TimeZone.getDefault();
+		DateTimeZone origJodaDef = DateTimeZone.getDefault();
+		TimeZone tzClient = TimeZone.getTimeZone("Australia/South");
+		TimeZone tzServer = TimeZone.getTimeZone("Europe/Berlin");
+
+		TimeZone.setDefault(tzServer);
+		DateTimeZone.setDefault(DateTimeZone.forTimeZone(tzServer));
+		// Locale.setDefault(Locale.GERMAN);
+
+		Class<? extends Page> pageClass = DatesPage2.class;
+		MutableDateTime dt = new MutableDateTime(DateTimeZone.forTimeZone(tzClient));
+		dt.setDateTime(2010, 11, 06, 0, 0, 0, 0);
+		Date date = new Date(dt.getMillis());
+
+		WebClientInfo clientInfo = (WebClientInfo)tester.getSession().getClientInfo();
+		clientInfo.getProperties().setTimeZone(tzClient);
+
+		tester.getSession().setLocale(Locale.GERMAN);
+		tester.startPage(pageClass);
+		tester.assertRenderedPage(pageClass);
+		FormTester formTester = tester.newFormTester("form");
+		formTester.setValue("dateTimeField:date", "06.11.2010");
+		formTester.setValue("dateTimeField:hours", "00");
+		formTester.setValue("dateTimeField:minutes", "00");
+		formTester.setValue("dateField:date", "06.11.2010");
+		formTester.submit();
+
+		DatesPage2 page = (DatesPage2)tester.getLastRenderedPage();
+
+		log.error("orig: " + date.getTime() + "; date: " + page.date.getTime() + "; dateTime: " +
+			page.dateTime.getTime());
+		log.error("orig: " + date + "; date: " + page.date + "; dateTime: " + page.dateTime);
+		assertEquals(0, date.compareTo(page.dateTime));
+		assertEquals(0, date.compareTo(page.date));
+
+		TimeZone.setDefault(origJvmDef);
+		DateTimeZone.setDefault(origJodaDef);
+	}
+
+
 	/**
 	 * 
 	 * @throws ParseException