Author: richter Date: Tue Jan 3 08:23:36 2012 New Revision: 1226698 URL: http://svn.apache.org/viewvc?rev=1226698&view=rev Log: Support for multiple Forms
Modified: perl/embperl/trunk/Embperl/Form.pm perl/embperl/trunk/Embperl/Form/Control.pm perl/embperl/trunk/Embperl/Form/Control/checkbox.pm perl/embperl/trunk/Embperl/Form/Control/datetime.pm perl/embperl/trunk/Embperl/Form/Control/grid.pm perl/embperl/trunk/Embperl/Form/Control/mult.pm perl/embperl/trunk/Embperl/Form/Control/radio.pm Modified: perl/embperl/trunk/Embperl/Form.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form.pm?rev=1226698&r1=1226697&r2=1226698&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form.pm (original) +++ perl/embperl/trunk/Embperl/Form.pm Tue Jan 3 08:23:36 2012 @@ -302,7 +302,7 @@ sub new_controls } $self -> {controlids}{$control->{id}} = $control ; - next if ($control -> is_disabled) ; + next if ($control -> is_disabled ()) ; push @{$validate_rules}, $control -> get_validate_rules ; if ($control -> {sublines}) { @@ -389,7 +389,7 @@ sub layout my $num = 0 ; foreach my $control (@$controls) { - next if ($control -> is_disabled) ; + next if ($control -> is_disabled ()) ; if ($control -> is_hidden) { $control -> {width_percent} = 0 ; @@ -476,10 +476,11 @@ sub layout sub show_controls { - my ($self, $req, $activeid) = @_ ; + my ($self, $req, $activeid, $options) = @_ ; if ($self -> {toplevel}) { + $req -> {form_options_masks} = ($options && $options -> {masks}) || {} ; $self -> {unique_id} = '_' . $$ . '_' . $form_cnt++ ; } else @@ -504,7 +505,7 @@ sub show_controls { # my $newactivesubid = $control -> {subobjects} && $visible?$control -> get_active_id ($req):'-' ; my $newactivesubid = ($control -> {subobjects} || $control -> {sublines}) && $visible?$control -> get_active_id ($req):'' ; - $control -> show ($req); + $control -> show ($req) if (!$control -> is_disabled ($req)) ; $activesubid[$control -> {level}] = $newactivesubid if ($newactivesubid) ; if ($control -> {subobjects}) { @@ -538,7 +539,7 @@ sub show_controls sub show { - my ($self, $req, $activeid) = @_ ; + my ($self, $req, $activeid, $options) = @_ ; if ($self -> {toplevel}) { @@ -547,7 +548,7 @@ sub show } #$self -> validate ($req) if ($self -> {toplevel}); - $self -> show_controls ($req, $activeid) ; + $self -> show_controls ($req, $activeid, $options) ; $self -> show_form_end ($req) if ($self -> {toplevel}); } Modified: perl/embperl/trunk/Embperl/Form/Control.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control.pm?rev=1226698&r1=1226697&r2=1226698&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control.pm Tue Jan 3 08:23:36 2012 @@ -86,7 +86,7 @@ sub is_disabled { my ($self, $req) = @_ ; - return $self -> {disable} ; + return $self -> {disable} || $req -> {form_options_masks}{$self->{name}}{disable} || $req -> {form_options_masks}{'*'}{disable} ; } # --------------------------------------------------------------------------- @@ -99,7 +99,7 @@ sub is_readonly { my ($self, $req) = @_ ; - return $self -> {readonly} ; + return $self -> {readonly} || $req -> {form_options_masks}{$self->{name}}{readonly} || $req -> {form_options_masks}{'*'}{readonly} ; } # --------------------------------------------------------------------------- @@ -406,7 +406,7 @@ $] [$ sub show_control_cell ($self, $req, $x) - my $ro = $self -> is_readonly ; + my $ro = $self -> is_readonly ($req) ; my $addclass = 'ef-control-box-width-' . ($self->{width_percent} || 50 ) ; $addclass .= ' ef-control-box-readonly' if ($ro) ; $] Modified: perl/embperl/trunk/Embperl/Form/Control/checkbox.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/checkbox.pm?rev=1226698&r1=1226697&r2=1226698&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/checkbox.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/checkbox.pm Tue Jan 3 08:23:36 2012 @@ -90,7 +90,7 @@ __EMBPERL__ push @{$self -> form -> {fields2empty}}, $name ; $] -<input type="checkbox" name="[+ $self -> {force_name} || $self -> {name} +]" [+ do { local $escmode = 0 ; $self -> {eventattrs} } +] value="[+ $val +]" +<input type="checkbox" name="[+ $self -> {force_name} || $self -> {name} +]" [+ do { local $escmode = 0 ; $self -> get_std_control_attr() } +] value="[+ $val +]" [$if ($self -> {sublines} || $self -> {subobjects}) $] OnClick="[+ $nsprefix +]show_checked(document, this)" [$endif$] > [$endsub$] Modified: perl/embperl/trunk/Embperl/Form/Control/datetime.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/datetime.pm?rev=1226698&r1=1226697&r2=1226698&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/datetime.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/datetime.pm Tue Jan 3 08:23:36 2012 @@ -88,7 +88,7 @@ sub prepare_fdat { my ($self, $req) = @_ ; - return if ($self -> {readonly}) ; + return if ($self -> is_readonly ($req)) ; my $fdat = $req -> {form} || \%fdat ; my $name = $self->{name} ; Modified: perl/embperl/trunk/Embperl/Form/Control/grid.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/grid.pm?rev=1226698&r1=1226697&r2=1226698&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/grid.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/grid.pm Tue Jan 3 08:23:36 2012 @@ -156,7 +156,7 @@ sub prepare_fdat { my ($self, $req) = @_ ; - return if ($self -> {readonly}) ; + return if ($self -> is_readonly ($req)) ; my $fdat = $req -> {form} || \%fdat ; my $ldap = $req->{ldap}; @@ -256,14 +256,14 @@ $]<table class="ef-element ef-element-wi [- $fdat{$name} = $self -> {default} if ($fdat{$name} eq '' && exists ($self -> {default})) ; my $span = 0 ; - $self -> show_grid_title (); + $self -> show_grid_title ($req); -] <input type="hidden" name="__[+ $self -> {name} +]_max" id="__[+ $self -> {fullid} +]_max"> <table class="cGridTable cBase" id="[+ $self -> {fullid} +]"> [- $self -> show_grid_header ($req); -] [- $self -> show_grid_table ($req) ; -] </table> - [- $self -> show_grid_title () + [- $self -> show_grid_title ($req) if ($max > $self -> {header_bottom}) -] <table id="__[+ $self -> {fullid} +]_newrow" style="display: none"> [- @@ -285,12 +285,12 @@ $]<table class="ef-element ef-element-wi # show_grid_title - Zeigt den Titel der Tabelle an #] -[$ sub show_grid_title ($self) +[$ sub show_grid_title ($self, $req) $] <table class="cBase cGridTitle"> <tr class="cTableRow"> <td class="cBase cGridLabelBox">[+ $self -> form -> convert_label ($self) +]</td> - [$if !($self -> {readonly}) $] + [$if !($self -> is_readonly ($req)) $] <td class="cBase cGridControlBox"> <div> <span class="ui-icon ui-icon-circle-triangle-n ef-icon" id="[+ $self -> {fullid} +]-up" title="Zeile Hoch"></span> @@ -334,14 +334,14 @@ $] my $id = $self -> {fullid}; my $name = $self -> {name} ; my $n = 0 ; - my $gridro = $self -> is_readonly () ; + my $gridro = $self -> is_readonly ($req) ; my $ro ; my $j = 0 ; $] <tr class="cGridRow" id="[+ "$id-row-$i" +]"> [$foreach $field (@$fields)$] - [- $ro = $gridro || $field -> is_readonly ; -] + [- $ro = $gridro || $field -> is_readonly () ; -] <td class="[+ $ro?'cGridCellReadonly':'cGridCell' +]">[$if $n++ == 0$]<input type="hidden" name="[+ "__${name}_#row#_$i" +]" value="[+ $i +]">[$endif$][- local $field -> {name} = "__${name}_${j}_$i" ; if ($ro) Modified: perl/embperl/trunk/Embperl/Form/Control/mult.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/mult.pm?rev=1226698&r1=1226697&r2=1226698&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/mult.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/mult.pm Tue Jan 3 08:23:36 2012 @@ -142,7 +142,7 @@ __EMBPERL__ $jsname .= 'Grid' ; my $on_grid_change = $self -> {on_grid_change} ; $] -[$ if ($max == 1 && $self -> is_readonly() ) $] +[$ if ($max == 1 && $self -> is_readonly($req) ) $] [- my $field = $self -> {fields}[0] ; local $field -> {name} = "__${name}__0" ; @@ -167,7 +167,7 @@ $] </table> </div> -[$if (! $self -> is_readonly ()) $] +[$if (! $self -> is_readonly ($req)) $] <[$if $noscript $]x-[$endif$]script> $('#[+ $self -> {fullid} +]').eplgrid ([$if $on_grid_change $]{'onchange': [+ $on_grid_change +] }[$endif$]) ; </[$if $noscript $]x-[$endif$]script> @@ -190,7 +190,7 @@ $] my $jsname = $name ; $jsname =~ s/[^a-zA-Z0-9]/_/g ; $jsname .= 'Grid' ; - my $ro = $self -> is_readonly () ; + my $ro = $self -> is_readonly ($req) ; $] <tr class="cGridRow" id="[+ "$id-row-$i" +]"> @@ -220,7 +220,7 @@ $] $] -[$if (! $self -> is_readonly ()) $] +[$if (! $self -> is_readonly ($req)) $] <span class="ui-icon ui-icon-circle-plus ef-icon" id="[+ $self -> {fullid} +]-add" title="Zeile Hinzufügen"></span> <span class="ui-icon ui-icon-circle-minus ef-icon" id="[+ $self -> {fullid} +]-del" title="Zeile Löschen"></span> Modified: perl/embperl/trunk/Embperl/Form/Control/radio.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/radio.pm?rev=1226698&r1=1226697&r2=1226698&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/radio.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/radio.pm Tue Jan 3 08:23:36 2012 @@ -68,11 +68,11 @@ else } $] -<table [+ do { local $escmode = 0 ; $self -> get_std_control_attr() } +]>[+ do { local $escmode = 0 ; $trglob }+] +<table class="ef-control-radiotab">[+ do { local $escmode = 0 ; $trglob }+] [$ foreach $val (@$values) $][- $x = ($val =~ /$filter/i) -] [- $fdat{$name} = $val, $set = 0 if ($set) ; $fdat{$name} = $val if ($ignorecase && lc($fdat{$name}) eq lc($val)) ; -] - [+ do { local $escmode = 0 ; $tr }+]<td><input type="radio" name="[+ $name +]" value="[+ $val +]" id="[+ "$name-_-$val" +]" + [+ do { local $escmode = 0 ; $tr }+]<td><input type="radio" name="[+ $self -> {force_name} || $self -> {name} +]" [+ do { local $escmode = 0 ; $self -> get_std_control_attr() } +] value="[+ $val +]" id="[+ "$name-_-$val" +]" [$if ($self -> {sublines} || $self -> {subobjects}) $] OnClick="[+ $nsprefix +]show_radio_checked(document, this,[+ $i +],[+ $max +])" [$endif$] ></td><td>[+ $options ->[$i] || $val +]</td>[+ do { local $escmode = 0 ; $trend }+] [* $i++ ; *] --------------------------------------------------------------------- To unsubscribe, e-mail: embperl-cvs-unsubscr...@perl.apache.org For additional commands, e-mail: embperl-cvs-h...@perl.apache.org