Author: richter Date: Fri Sep 19 07:05:01 2014 New Revision: 1626134 URL: http://svn.apache.org/r1626134 Log: get_display_text fuer age control implemented
Modified: perl/embperl/trunk/Embperl/Form/Control/age.pm Modified: perl/embperl/trunk/Embperl/Form/Control/age.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/age.pm?rev=1626134&r1=1626133&r2=1626134&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/age.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/age.pm Fri Sep 19 07:05:01 2014 @@ -42,20 +42,32 @@ sub init # ------------------------------------------------------------------------------------------ # -# init_data - daten aufteilen +# get_sort_value - returns the value that should be used to sort # -sub init_data +sub get_sort_value { - my ($self, $req, $parentctrl, $force) = @_ ; + my ($self, $req, $value) = @_ ; - my $fdat = $req -> {docdata} || \%fdat ; - my $name = $self->{name} ; - my $val = $fdat->{$name} ; - return if ($val eq '' || ($req -> {"ef_age_init_done_$name"} && !$force)) ; + $value = $self -> get_value ($req) if (!defined ($value)) ; + return $value ; + } + +# ------------------------------------------------------------------------------------------ +# +# get_display_text - returns the text that should be displayed +# + +sub get_display_text + { + my ($self, $req, $time) = @_ ; + + $time = $self -> get_value ($req) if (!defined ($time)) ; + + return if ($time eq '') ; #20060914041444Z - my ($year, $mon, $mday, $hour, $min, $sec, $tz) = ($val =~ /^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(.)$/) ; + my ($year, $mon, $mday, $hour, $min, $sec, $tz) = ($time =~ /^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(.)$/) ; my ($sec2, $min2, $hour2, $mday2, $mon2, $year2) = gmtime ; $mon2++ ; $year2+=1900 ; @@ -63,8 +75,29 @@ sub init_data my ($Dd,$Dh,$Dm,$Ds) = eval { Delta_DHMS($year,$mon,$mday, $hour,$min,$sec, $year2,$mon2,$mday2, $hour2,$min2,$sec2) } ; - $fdat->{$name} = $Dd > 0?"${Dd}Tage":sprintf ('%d:%02dh', $Dh, $Dm) ; - $fdat->{'_tt_' . $name} = sprintf('%d.%02d.%04d %d:%02d', $mday, $mon, $year, $hour, $min) ; + my $age = $Dd > 0?"${Dd}Tage":sprintf ('%d:%02dh', $Dh, $Dm) ; + my $tooltip = sprintf('%d.%02d.%04d %d:%02d', $mday, $mon, $year, $hour, $min) ; + return wantarray?($age, $tooltip):$age ; + } + +# ------------------------------------------------------------------------------------------ +# +# init_data - daten aufteilen +# + +sub init_data + { + my ($self, $req, $parentctrl, $force) = @_ ; + + my $fdat = $req -> {docdata} || \%fdat ; + my $name = $self->{name} ; + my $val = $fdat->{$name} ; + return if ($val eq '' || ($req -> {"ef_age_init_done_$name"} && !$force)) ; + + my ($age, $tooltip) = $self -> $self -> get_display_text ($req, $val) ; + + $fdat->{$name} = $age; + $fdat->{'_tt_' . $name} = $tooltip ; $req -> {"ef_age_init_done_$name"} = 1 ; } --------------------------------------------------------------------- To unsubscribe, e-mail: embperl-cvs-unsubscr...@perl.apache.org For additional commands, e-mail: embperl-cvs-h...@perl.apache.org