[OpenAjaxIDE] date formatting

Lori Hylan-Cho avocadoh at gmail.com
Wed Aug 19 22:40:42 PDT 2009


I agree with Kin that we shouldn't make widget developers (or oam.xml  
file writers, who may not be the same people) write extra JS when we  
can include a declarative format in the spec.

I agree with Jon and Scott that a separate attribute for the format  
string should be used for the reason Jon outlined.

As regards encouraging bad coding practices, I'd rather recognize  
reality and give dev tools a chance to support it than try to get  
everyone to conform to an ideal.

Lori

[brevity brought to you by iPhone.]

On Aug 19, 2009, at 9:55 PM, Jon Ferraiolo <jferrai at us.ibm.com> wrote:

> After thinking about things, I don't like either of the following:
>
> format="d/m/Y"
>
> or
>
> format="date(d/m/Y)"
>
> The 'format' attribute tells the tool what type of special editor to  
> display within the property editor in order for the user to enter a  
> value. For example, a tool might provide a calendar widget to edit a  
> property that has format="date", a clock dial widget to edit a  
> property that has format="time", and a color picker widget to edit a  
> property that has format="color". I don't think we want to try to co- 
> mingle the formatting instructions into the same attribute that  
> provides a hint about which editor widget to use within the property  
> editor UI.
>
> If we are going to offer date formatting, I think an additional  
> attribute such as what Scott has proposed is the way to go.
>
> Regarding whether we should include this feature or not, I won't  
> object if the majority think this is a necessary feature for version  
> 1.0, but at the moment I'm not sold that this is an appropriate  
> feature for the spec. Two things worry me:
>
> (1) So far, I haven't seen any JavaScript-free OAM files for OAM  
> files that wrap widgets from Ajax toolkits. If OAM authors need to  
> resort to JavaScript anyway, then for the YUI calendar widget (and  
> similar calendar widgets), the widget developer working on the  
> calendar widget can figure out how to format the date values  
> (perhaps by including Steve's 40 lines of JavaScript within that  
> particular widget)
>
> (2) I'm not sure that it is compelling easier for a widget developer  
> to discover and learn how to use the 'formatString' attribute versus  
> writing a little JavaScript to create the appropriate string before  
> calling the constructor.
>
> But nevertheless, if the majority want this feature, I'm OK with  
> adding it as Scott proposes below.
>
> Jon
>
>
> <graycol.gif>Kin Blas ---08/19/2009 03:21:31 PM---For the  
> datatype="Date" there are 2 supported format values, "date" and  
> "time": <property name="myDa
>
> <ecblank.gif>
> From:	<ecblank.gif>
> Kin Blas <jblas at adobe.com>
> <ecblank.gif>
> To:	<ecblank.gif>
> "ide at openajax.org" <ide at openajax.org>
> <ecblank.gif>
> Date:	<ecblank.gif>
> 08/19/2009 03:21 PM
> <ecblank.gif>
> Subject:	<ecblank.gif>
> Re: [OpenAjaxIDE] date formatting
> <ecblank.gif>
> Sent by:	<ecblank.gif>
> ide-bounces at openajax.org
>
>
>
> For the datatype=”Date” there are 2 supported format values,  
> “date” and “time”:
>
> <property name=”myDate” datatype=”Date” format=”date” />
> <property name=”myTime” datatype=”Date” format=”time” />
>
> Rather than introducing another attribute, as proposed in Scott’s ex 
> ample. Why not just leverage the existing @format attribute in conju 
> nction with the variables used by PHP:
>
> http://us.php.net/manual/en/function.date.php
>
> The current proposed values for the Date @format aren’t that useful  
> in my opinion. So I envision something like:
>
> <property name=”myDate” datatype=”Date” format=”d/m/Y” />
> <property name=”myTime” datatype=”Date” format=”g:i:s” />
>
> Regarding Jon’s comment about being able to work around this problem 
>  with additional code added to the <javascript> or <content> section 
> s … I really feel that if we want this OAM format to be adopted by t 
> he various frameworks and the industry, that we need to make it drop 
> -dead simple for them to support their formats/patterns so they don’ 
> t have to resort to writing extra-glue code to make up for our in-fl 
> exibility.
>
> --== Kin ==--
>
> From: ide-bounces at openajax.org [mailto:ide-bounces at openajax.org] On  
> Behalf Of Scott Richards
> Sent: Wednesday, August 19, 2009 3:00 PM
> To: Steve Repetti; 'Jon Ferraiolo'; ide at openajax.org
> Subject: Re: [OpenAjaxIDE] date formatting
>
> I think a lightweight solution that supports a very small set of  
> legacy formats would be all we need. Sounds like Steve’s 40+ lines o 
> f DateFormat code could handle this.
>
> I like a simple approach of adding an additional formatString=””  
> attribute or maybe call it formatPattern that enables you to format  
> in the value that is replaced using the @@variableName@@ notation in 
>  either the <javascript> or <content> sections. Here is an example.
>
> <property datatype=”date” format=”date” formatString=”YYYY- 
> MM-DD” />
> where:
> YYYY = four-digit year
> MM = two-digit month (01=January, etc.)
> DD = two-digit day of month (01 through 31)
> hh = two digits of hour (00 through 23) (am/pm NOT allowed)
> mm = two digits of minute (00 through 59)
> ss = two digits of second (00 through 59)
>
>
>
> The formats from YUI Calendar takes Javascript Date Object or a  
> string formatted as “mm/yyyy” and “mm/dd/yyyy”. The selected  
> property can only be specified with a string not a Javascript date o 
> bject and it does not support ISO 8601 format. See this link
>
> http://developer.yahoo.com/yui/calendar/#config
>
> Here is an example of how we could support YUI Calendar date strings  
> using formatString.
>
>
> var cal1 = new YAHOO.widget.Calendar("cal1",
> "cal1Container",
> { pagedate:"5/2007",
> selected:"5/5/2007-5/27/2007" });
>
> This would look like the following in the oam.xml file:
>
> <javascript>
> var cal1 = new YAHOO.widget.Calendar("cal1",
> "cal1Container",
> { pagedate:"@@pageDate@@",
> selected:"@@selectDateStart@@-@@selectDateEnd@@" });
> </javascript>
>
> <property name=”pageDate” datatype=”date” format=”date”  
> formatString=”MM/YYYY” />
> <property name=” selectDateStart” datatype=”date”  
> format=”date” formatString=”MM/DD/YYYY” />
> <property name=” selectDateEnd” datatype=”date”  
> format=”date” formatString=”MM/DD/YYYY” />
>
>
> Not sure if we should support dropping out leading 0’s, do we need t 
> o support this? We could do with just M or D. But the YUI calendar w 
> orks specifying dates with or without leading 0’s. So this may be un 
> necessary.
>
>
>
> Here is the link for jQuery Date formats. They support multiple  
> formats including iso 8601. So with could support it as follows:
> _______________________________________________
> IDE mailing list
> IDE at openajax.org
> http://openajax.org/mailman/listinfo/ide
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://openajax.org/pipermail/ide/attachments/20090819/7ce41d85/attachment.html 


More information about the IDE mailing list