Mailing List Archive

svn commit: r1594119 - in /perl/embperl/trunk/Embperl/Form: Control/checkbox.pm Control/checkboxes.pm Control/datetime.pm Control/dynctrl.pm Control/grid.pm Control/number.pm ControlMultValue.pm
Author: richter
Date: Tue May 13 04:17:34 2014
New Revision: 1594119

URL: http://svn.apache.org/r1594119
Log:
add get_sort_value for controls

Modified:
perl/embperl/trunk/Embperl/Form/Control/checkbox.pm
perl/embperl/trunk/Embperl/Form/Control/checkboxes.pm
perl/embperl/trunk/Embperl/Form/Control/datetime.pm
perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm
perl/embperl/trunk/Embperl/Form/Control/grid.pm
perl/embperl/trunk/Embperl/Form/Control/number.pm
perl/embperl/trunk/Embperl/Form/ControlMultValue.pm

Modified: perl/embperl/trunk/Embperl/Form/Control/checkbox.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/checkbox.pm?rev=1594119&r1=1594118&r2=1594119&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl/Form/Control/checkbox.pm (original)
+++ perl/embperl/trunk/Embperl/Form/Control/checkbox.pm Tue May 13 04:17:34 2014
@@ -101,6 +101,7 @@ sub get_display_text
my $val = $self -> {value} ;
$val = 1 if ($val eq '') ;

+ return $value eq $val?'X':'-' if (defined ($value)) ;
return $fdat->{$name} eq $val?'X':'-' ;
}


Modified: perl/embperl/trunk/Embperl/Form/Control/checkboxes.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/checkboxes.pm?rev=1594119&r1=1594118&r2=1594119&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl/Form/Control/checkboxes.pm (original)
+++ perl/embperl/trunk/Embperl/Form/Control/checkboxes.pm Tue May 13 04:17:34 2014
@@ -28,7 +28,7 @@ use Embperl::Inline ;
# show_control_readonly - output readonly control
#

-sub show_control_readonly
+sub xshow_control_readonly
{
my ($self, $req) = @_ ;


Modified: perl/embperl/trunk/Embperl/Form/Control/datetime.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/datetime.pm?rev=1594119&r1=1594118&r2=1594119&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl/Form/Control/datetime.pm (original)
+++ perl/embperl/trunk/Embperl/Form/Control/datetime.pm Tue May 13 04:17:34 2014
@@ -84,6 +84,20 @@ sub get_display_text
return $date ;
}

+
+# ------------------------------------------------------------------------------------------
+#
+# get_sort_value - returns the value that should be used to sort
+#
+
+sub get_sort_value
+ {
+ my ($self, $req, $value) = @_ ;
+
+ $value = $self -> get_value ($req) if (!defined ($value)) ;
+ return $value ;
+ }
+
# ------------------------------------------------------------------------------------------
#
# init_data - daten aufteilen
@@ -102,6 +116,21 @@ sub init_data
$req -> {"ef_datetime_init_done_$name"} = 1 ;
}

+# ---------------------------------------------------------------------------
+#
+# init_markup - add any dynamic markup to the form data
+#
+
+sub init_markup
+
+ {
+ my ($self, $req, $parentctl, $method) = @_ ;
+
+ return if (!$self -> is_readonly($req) && (! $parentctl || ! $parentctl -> is_readonly($req))) ;
+
+ return $self -> init_data ($req, $parentctl) ;
+ }
+
# ------------------------------------------------------------------------------------------
#
# prepare_fdat - daten zusammenfuehren

Modified: perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm?rev=1594119&r1=1594118&r2=1594119&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm (original)
+++ perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm Tue May 13 04:17:34 2014
@@ -42,7 +42,7 @@ sub create_ctrl
my $ctrlattr = $self -> {ctrlattr} ;
if (ref $ctrlattr eq 'CODE')
{
- $ctrl = &{$ctrlattr}($self, $fdat) ;
+ $ctrl = &{$ctrlattr}($self, $fdat, $req) ;
}
else
{
@@ -52,7 +52,7 @@ sub create_ctrl
my $val = $ctrlattr -> {$f} ;
if (ref $val eq 'CODE')
{
- $val = &{$val}($self, $fdat) ;
+ $val = &{$val}($self, $fdat, $req) ;
}

$ctrl -> {$f} = $val ;
@@ -197,8 +197,8 @@ Embperl::Form::Control::dynctrl - A dyna
name => 'foo',
ctrlattr =>
{
- type => sub { my ($ctrl, $fdat) = @_ ; return $fdat{foo} },
- size => sub { my ($ctrl, $fdat) = @_ ; return $fdat{bar} },
+ type => sub { my ($ctrl, $fdat, $req) = @_ ; return $fdat{foo} },
+ size => sub { my ($ctrl, $fdat, $req) = @_ ; return $fdat{bar} },
}
}

@@ -208,7 +208,7 @@ or
type => 'dynctrl',
text => 'blabla',
name => 'foo',
- ctrlattr => sub { my ($ctrl, $fdat) = @_ ; return { type => $fdat{foo}, size => $fdat{bar} },
+ ctrlattr => sub { my ($ctrl, $fdat, $req) = @_ ; return { type => $fdat{foo}, size => $fdat{bar} },
}



Modified: perl/embperl/trunk/Embperl/Form/Control/grid.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/grid.pm?rev=1594119&r1=1594118&r2=1594119&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl/Form/Control/grid.pm (original)
+++ perl/embperl/trunk/Embperl/Form/Control/grid.pm Tue May 13 04:17:34 2014
@@ -94,12 +94,12 @@ sub init

sub init_data_hash
{
- my ($rowno, $fdat, $name, $fields) = @_ ;
+ my ($rowno, $hashdata, $fields) = @_ ;

my $data ;
map
{
- $data = $fdat->{$name}{$_} ;
+ $data = $hashdata -> {$_} ;
my @data ;
if (ref $data eq 'HASH')
{
@@ -119,7 +119,7 @@ sub init_data_hash
}

[$rowno++, @data ]
- } keys %{$fdat->{$name}} ;
+ } keys %$hashdata ;

}

@@ -138,7 +138,7 @@ sub init_data
my $rowno = 1 ;
my $fields = $self -> {fields} ;
my @entries = ref $fdat->{$name} eq 'ARRAY'?@{$fdat->{$name}}:
- ref $fdat->{$name} eq 'HASH' ?init_data_hash ($rowno, $fdat, $name, $fields):
+ ref $fdat->{$name} eq 'HASH' ?init_data_hash ($rowno, $fdat->{$name}, $fields):
split("\t",$fdat->{$name});
my $line2 = $self -> {line2} ;
my $order = $self -> {order} ;
@@ -389,18 +389,25 @@ sub get_display_text
my @data ;
my $fieldname ;
my $j ;
- my @row ;
+ my @rows ;
my $field ;
my $text ;
- foreach $fieldname (@$showfields)
+ my @value ;
+ @value = (ref ($value) eq 'HASH')?init_data_hash (1, $value, $fields):@$value ;
+ foreach my $rowval (@value)
{
- $j = $allfields -> {$fieldname} ;
- $field = $fields -> [$j] ;
- next if $field -> is_hidden ;
- $text = $field -> get_display_text ($req, $value -> [$j+1]) ;
- push @row, $text if ($text ne '') ;
+ my @row ;
+ foreach $fieldname (@$showfields)
+ {
+ $j = $allfields -> {$fieldname} ;
+ $field = $fields -> [$j] ;
+ next if $field -> is_hidden ;
+ $text = $field -> get_display_text ($req, $rowval -> [$j+1]) ;
+ push @row, $text if ($text ne '') ;
+ }
+ push @rows, join (', ', @row) ;
}
- return join (', ', @row) ;
+ return join (' / ', @rows) ;
}
1 ;


Modified: perl/embperl/trunk/Embperl/Form/Control/number.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/number.pm?rev=1594119&r1=1594118&r2=1594119&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl/Form/Control/number.pm (original)
+++ perl/embperl/trunk/Embperl/Form/Control/number.pm Tue May 13 04:17:34 2014
@@ -31,6 +31,33 @@ sub get_std_control_attr
return $self -> SUPER::get_std_control_attr ($req, $id, $type, $type eq 'readonly'?'ef-control-number-readonly':$addclass) ;
}

+# ------------------------------------------------------------------------------------------
+#
+# get_display_text - returns the text that should be displayed
+#
+
+sub get_display_text
+ {
+ my ($self, $req, $value) = @_ ;
+
+ $value = $self -> get_value ($req) if (!defined ($value)) ;
+
+ return $value + 0 ;
+ }
+
+# ------------------------------------------------------------------------------------------
+#
+# get_sort_value - returns the value that should be used to sort
+#
+
+sub get_sort_value
+ {
+ my ($self, $req, $value) = @_ ;
+
+ $value = $self -> get_value ($req) if (!defined ($value)) ;
+ return $value + 0 ;
+ }
+

# ---------------------------------------------------------------------------
#

Modified: perl/embperl/trunk/Embperl/Form/ControlMultValue.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/ControlMultValue.pm?rev=1594119&r1=1594118&r2=1594119&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl/Form/ControlMultValue.pm (original)
+++ perl/embperl/trunk/Embperl/Form/ControlMultValue.pm Tue May 13 04:17:34 2014
@@ -322,11 +322,20 @@ sub is_with_id
sub get_display_text
{
my ($self, $req, $value) = @_ ;
-
+
$value = $self -> get_value ($req) if (!defined ($value)) ;
- $value = $self -> get_option_from_value ($value, $req) ;
+ if (!ref $value)
+ {
+ my @value = split (/\t/, $value) ;
+ $value = \@value ;
+ }
+ my @result ;
+ foreach my $val (@$value)
+ {
+ push @result, $self -> get_option_from_value ($val, $req) ;
+ }

- return $value ;
+ return join (', ', @result) ;
}

# ---------------------------------------------------------------------------
@@ -346,7 +355,7 @@ sub init_markup
{
my $name = $self -> {name} ;
my $fdat = $req -> {docdata} || \%Embperl::fdat ;
- $fdat -> {'_opt_' . $name} = $self -> get_option_from_value ($val, $req) ;
+ $fdat -> {'_opt_' . $name} = $self -> get_display_text ($req, $val) ;
$fdat -> {'_id_' . $name} = $self -> get_id_from_value ($val, $req) ;
}
}



---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-cvs-help@perl.apache.org