X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Felements%2Fselect-month_year.html;h=ad84b915d301f852d28326b2021b63ac8bacb380;hp=34476bc9453a3ce0db6167a1e21be762f3bfe128;hb=c3da5cf1caa244937d280e0f406927103beef148;hpb=63a268637b2d51a8766412617724b9436439deb6 diff --git a/httemplate/elements/select-month_year.html b/httemplate/elements/select-month_year.html index 34476bc94..ad84b915d 100644 --- a/httemplate/elements/select-month_year.html +++ b/httemplate/elements/select-month_year.html @@ -1,45 +1,3 @@ -% -% -% my %opt = @_; -% -% my $prefix = $opt{'prefix'} || ''; -% my $disabled = $opt{'disabled'} || ''; -% my $empty = $opt{'empty_option'} || ''; -% my $start_year = $opt{'start_year'}; -% my $end_year = $opt{'end_year'} || '2037'; -% -% my @mon; -% if ( $opt{'show_month_abbr'} ) { -% @mon = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec); -% } else { -% @mon = ( 1 .. 12 ); -% } -% -% my $date = $opt{'selected_date'} || ''; -% $date = '' if $date eq '-'; -% #$date ||= '01-2000' unless $empty; -% -% my $mon = $opt{'selected_mon'} || 0; -% my $year = $opt{'selected_year'} || 0; -% if ( $date ) { -% if ( $date =~ /^(\d{4})-(\d{1,2})-\d{1,2}$/ ) { #PostgreSQL date format -% ( $mon, $year ) = ( $2, $1 ); -% } elsif ( $date =~ /^(\d{1,2})-(\d{1,2}-)?(\d{4}$)/ ) { -% ( $mon, $year ) = ( $1, $3 ); -% } else { -% die "unrecognized expiration date format: $date"; -% } -% } -% -% unless ( $start_year ) { -% my @t = localtime; -% $start_year = $t[5] + 1900; -% } -% $start_year = $year if $start_year > $year && $year > 0; -% -% - - +<%init> + my %opt = @_; + + my $prefix = $opt{'prefix'} || ''; + my $disabled = $opt{'disabled'} || ''; + my $empty = $opt{'empty_option'} || ''; + my $start_year = $opt{'start_year'}; + my $end_year = $opt{'end_year'} || '2037'; + + my @mon; + if ( $opt{'show_month_abbr'} ) { + @mon = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec); + # XXX: localization + } else { + @mon = ( ( map "0$_", 1 .. 9 ), 10 .. 12 ), + } + + my $date = $opt{'selected_date'} || ''; + $date = '' if $date eq '-'; + + my $mon = $opt{'selected_mon'} || 0; + my $year = $opt{'selected_year'} || 0; + if ( $date ) { + if ( $date =~ /^(\d{4})-(\d{1,2})-\d{1,2}$/ ) { #PostgreSQL date format + ( $mon, $year ) = ( $2, $1 ); + } elsif ( $date =~ /^(\d{1,2})-(\d{1,2}-)?(\d{4}$)/ ) { + ( $mon, $year ) = ( $1, $3 ); + } else { + die "unrecognized expiration date format: $date"; + } + } + + unless ( $start_year ) { + my @t = localtime; + $start_year = $t[5] + 1900; + } + $start_year = $year if $start_year > $year && $year > 0; + +