Author: musachy Date: Fri Feb 16 13:56:50 2007 New Revision: 508605 URL: http://svn.apache.org/viewvc?view=rev&rev=508605 Log: WW-1729 Add "templateCssPath" attribute to DateTimePicker
Removed: struts/struts2/trunk/core/src/main/resources/template/css_xhtml/dropdowndatetimepicker.ftl Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/DateTimePicker.java struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTimePickerTag.java struts/struts2/trunk/core/src/main/resources/template/simple/datetimepicker.ftl struts/struts2/trunk/core/src/site/resources/tags/datetimepicker.html struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest.java struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest-1.txt Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/DateTimePicker.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/DateTimePicker.java?view=diff&rev=508605&r1=508604&r2=508605 ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/DateTimePicker.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/DateTimePicker.java Fri Feb 16 13:56:50 2007 @@ -127,7 +127,7 @@ public class DateTimePicker extends UIBean { final public static String TEMPLATE = "datetimepicker"; - final private static SimpleDateFormat RFC3399_FORMAT = new SimpleDateFormat( + final private static SimpleDateFormat RFC3339_FORMAT = new SimpleDateFormat( "yyyy-MM-dd'T'HH:mm:ss"); final protected static Log LOG = LogFactory.getLog(DateTimePicker.class); @@ -146,6 +146,7 @@ protected String staticDisplay; protected String dayWidth; protected String language; + protected String templateCssPath; public DateTimePicker(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { super(stack, request, response); @@ -191,7 +192,9 @@ addParameter("type", findString(type)); else addParameter("type", "date"); - + if(templateCssPath != null) + addParameter("templateCssPath", findString(templateCssPath)); + // format the value to RFC 3399 if(parameters.containsKey("value")) { parameters.put("nameValue", format(parameters.get("value"))); @@ -279,17 +282,22 @@ this.toggleType = toggleType; } + @StrutsTagAttribute(description="Template css path") + public void setTemplateCssPath(String templateCssPath) { + this.templateCssPath = templateCssPath; + } + private String format(Object obj) { if(obj == null) return null; if(obj instanceof Date) { - return RFC3399_FORMAT.format((Date) obj); + return RFC3339_FORMAT.format((Date) obj); } else { // try to parse a date String dateStr = obj.toString(); if(dateStr.equalsIgnoreCase("today")) - return RFC3399_FORMAT.format(new Date()); + return RFC3339_FORMAT.format(new Date()); try { Date date = null; @@ -297,7 +305,7 @@ SimpleDateFormat format = new SimpleDateFormat( this.displayFormat); date = format.parse(dateStr); - return RFC3399_FORMAT.format(date); + return RFC3339_FORMAT.format(date); } else { // last resource to assume already in correct/default format return dateStr; Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTimePickerTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTimePickerTag.java?view=diff&rev=508605&r1=508604&r2=508605 ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTimePickerTag.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTimePickerTag.java Fri Feb 16 13:56:50 2007 @@ -50,6 +50,7 @@ protected String toggleType; protected String toggleDuration; protected String type; + protected String templateCssPath; public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) { return new DateTimePicker(stack, req, res); @@ -73,6 +74,7 @@ dateTimePicker.setToggleType(toggleType); dateTimePicker.setToggleDuration(toggleDuration); dateTimePicker.setType(type); + dateTimePicker.setTemplateCssPath(templateCssPath); } public void setAdjustWeeks(String adjustWeeks) { @@ -129,5 +131,9 @@ public void setType(String type) { this.type = type; + } + + public void setTemplateCssPath(String templateCssPath) { + this.templateCssPath = templateCssPath; } } Modified: struts/struts2/trunk/core/src/main/resources/template/simple/datetimepicker.ftl URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/template/simple/datetimepicker.ftl?view=diff&rev=508605&r1=508604&r2=508605 ============================================================================== --- struts/struts2/trunk/core/src/main/resources/template/simple/datetimepicker.ftl (original) +++ struts/struts2/trunk/core/src/main/resources/template/simple/datetimepicker.ftl Fri Feb 16 13:56:50 2007 @@ -51,7 +51,7 @@ style="${parameters.cssStyle?html}"<#rt/> </#if> <#if parameters.iconPath?if_exists != ""> - iconURL="${parameters.iconPath}"<#rt/> + iconURL="<@s.url value='${parameters.iconPath}' encode="false" includeParams='none'/>"<#rt/> </#if> <#if parameters.formatLength?if_exists != ""> formatLength="${parameters.formatLength?html}"<#rt/> @@ -64,6 +64,9 @@ </#if> <#if parameters.toggleDuration?exists> containerToggleDuration="${parameters.toggleDuration?string?html}"<#rt/> + </#if> + <#if parameters.templateCssPath?exists> + templateCssPath="<@s.url value='${parameters.templateCssPath}' encode="false" includeParams='none'/>" </#if> saveFormat="rfc"<#rt/> <#include "/${parameters.templateDir}/simple/scripting-events.ftl" /> Modified: struts/struts2/trunk/core/src/site/resources/tags/datetimepicker.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/datetimepicker.html?view=diff&rev=508605&r1=508604&r2=508605 ============================================================================== --- struts/struts2/trunk/core/src/site/resources/tags/datetimepicker.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/datetimepicker.html Fri Feb 16 13:56:50 2007 @@ -324,6 +324,14 @@ <td align="left" valign="top">The template (other than default) to use for rendering the element</td> </tr> <tr> + <td align="left" valign="top">templateCssPath</td> + <td align="left" valign="top">false</td> + <td align="left" valign="top"></td> + <td align="left" valign="top">true</td> + <td align="left" valign="top">String</td> + <td align="left" valign="top">Template css path</td> + </tr> + <tr> <td align="left" valign="top">templateDir</td> <td align="left" valign="top">false</td> <td align="left" valign="top"></td> Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest.java?view=diff&rev=508605&r1=508604&r2=508605 ============================================================================== --- struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest.java (original) +++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest.java Fri Feb 16 13:56:50 2007 @@ -59,6 +59,7 @@ tag.setWeekStartsOn("g"); tag.setName("h"); tag.setLanguage("i"); + tag.setTemplateCssPath("j"); tag.doStartTag(); tag.doEndTag(); Modified: struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest-1.txt URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest-1.txt?view=diff&rev=508605&r1=508604&r2=508605 ============================================================================== --- struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest-1.txt (original) +++ struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest-1.txt Fri Feb 16 13:56:50 2007 @@ -16,6 +16,7 @@ endDate="d" weekStartsOn="g" staticDisplay="false" + templateCssPath="j" saveFormat="rfc"> </div> </td>