You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Kenneth Lee <kl...@hknet.com> on 2000/07/18 11:52:19 UTC

[OT] New element for CGI.pm (or StickyForms, etc.) (revised)

Better still,

  print date_field(
    -name =>"expiry", 
    -value=>"2000-12-25");

so that if value is omitted, the current value will be used.
But date format will be a great concern.

And how about time_field() also?

Sorry for the annoyance.


-------- Original Message --------
Subject: [OT] New element for CGI.pm (or StickyForms, etc.)
Date: Tue, 18 Jul 2000 17:45:21 +0800
From: Kenneth Lee <kl...@hknet.com>
To: "modperl@apache.org" <mo...@apache.org>

Hi all,

anyone thought of a 'date_field' element for CGI.pm (or StickyForms, etc.)?

this is my thought,

  use CGI qw/:standard/;
  print date_field(
    -name =>"expiry", 
    -year =>2000, 
    -month=>12, 
    -day  =>25);
  $expiry_date = param('expiry');

which is an elegant way to do

  use CGI qw/:standard/;
  print textfield(-name=>'expiry_year', -value=>2000);
  print popup_menu(-name=>'expiry_month', -values=>[1..12], -default=>12);
  print popup_menu(-name=>'expiry_day', -values=>[1..31], -default=>25);
  $expiry_date = sprintf "%d-%d-%d", param('expiry_year'), 
                  param('expiry_month'), param('expiry_day');

and the date validation can be done in query string parsing too.

Thanks for any input.
Kenneth

Re: [OT] New element for CGI.pm (or StickyForms, etc.) (revised)

Posted by Ian Struble <ia...@broken.net>.
I think that both the date_field and the time_field idea are good ones 
but how are you going to localize them?  The different formats for date 
and time might be a bit of a hassle.  But you might be able to have 
date_field return an array of 3 fields as is done with the check box 
constructor.  So you could use it like this and then arrange the date 
components however you want it:

  my ($year, $month, $day) = date_field(-name =>"end_date",
					-value=>"2000-12-31")

  # I'm a farmer and I care most about the month...
  print "$month $day $year<br>\n";


Ian

On Tue, 18 Jul 2000, Kenneth Lee wrote:

> Better still,
> 
>   print date_field(
>     -name =>"expiry", 
>     -value=>"2000-12-25");
> 
> so that if value is omitted, the current value will be used.
> But date format will be a great concern.
> 
> And how about time_field() also?
> 
> Sorry for the annoyance.
> 
> 
> -------- Original Message --------
> Subject: [OT] New element for CGI.pm (or StickyForms, etc.)
> Date: Tue, 18 Jul 2000 17:45:21 +0800
> From: Kenneth Lee <kl...@hknet.com>
> To: "modperl@apache.org" <mo...@apache.org>
> 
> Hi all,
> 
> anyone thought of a 'date_field' element for CGI.pm (or StickyForms, etc.)?
> 
> this is my thought,
> 
>   use CGI qw/:standard/;
>   print date_field(
>     -name =>"expiry", 
>     -year =>2000, 
>     -month=>12, 
>     -day  =>25);
>   $expiry_date = param('expiry');
> 
> which is an elegant way to do
> 
>   use CGI qw/:standard/;
>   print textfield(-name=>'expiry_year', -value=>2000);
>   print popup_menu(-name=>'expiry_month', -values=>[1..12], -default=>12);
>   print popup_menu(-name=>'expiry_day', -values=>[1..31], -default=>25);
>   $expiry_date = sprintf "%d-%d-%d", param('expiry_year'), 
>                   param('expiry_month'), param('expiry_day');
> 
> and the date validation can be done in query string parsing too.
> 
> Thanks for any input.
> Kenneth
>