% # 'fields' => [
% # 'columname',
% # { 'field' => 'another_columname',
-% # 'type' => 'text', #text, fixed, hidden, checkbox
-% # #eventually more for <SELECT>, etc.
-% # 'value' => 'Y', #only for checkbox
+% # 'type' => 'text', #text
+% # #checkbox
+% # #select
+% # #hidden - hidden value from object
+% # #fixed - display fixed value from here
+% # #fixedhidden - hidden value from here
+% # 'value' => 'Y', #for checkbox, fixed, fixedhidden
% # },
% # ]
% #
% # # ...
% # "html_string";
% # },
+% #
+% # # overrides default popurl(1)."process/$table.html"
+% # 'post_url' => popurl(1).'process/something',
%
% my(%opt) = @_;
%
%
% } elsif ( $cgi->keywords || $cgi->param($pkey) ) { #editing
%
-% my( $query ) = $cgi->keywords;
-% $query = $cgi->param($pkey) unless $query;
-% $query =~ /^(\d+)$/;
+% my $value;
+% if ( $cgi->param($pkey) ) {
+% $value = $cgi->param($pkey)
+% } else {
+% my( $query ) = $cgi->keywords;
+% $value = $query;
+% }
+% $value =~ /^(\d+)$/ or die "unparsable $pkey";
% $object = qsearchs( $table, { $pkey => $1 } );
% warn "$table $pkey => $1"
% if $opt{'debug'};
<BR><BR>
% }
+% my $url = $opt{'post_url'} || popurl(1)."process/$table.html";
-<FORM ACTION="<% popurl(1) %>process/<% $table %>.html" METHOD=POST>
+<FORM ACTION="<% $url %>" METHOD=POST>
+<INPUT TYPE="hidden" NAME="svcdb" VALUE="<% $table %>">
<INPUT TYPE="hidden" NAME="<% $pkey %>" VALUE="<% $object->$pkey() %>">
<% ( $opt{labels} && exists $opt{labels}->{$pkey} )
? $opt{labels}->{$pkey}
: $field
%>
</TD>
-% if ( $type eq 'fixed' ) {
+% if ( $type eq 'fixed' ) {
<TD BGCOLOR="#dddddd"><% $f->{'value'} %></TD>
<INPUT TYPE="hidden" NAME="<% $field %>" VALUE="<% $f->{'value'} %>">
-% } elsif ( $type eq 'fixedhidden' ) {
+% } elsif ( $type eq 'fixedhidden' ) {
<INPUT TYPE="hidden" NAME="<% $field %>" VALUE="<% $f->{'value'} %>">
-% } elsif ( $type eq 'checkbox' ) {
+% } elsif ( $type eq 'checkbox' ) {
<TD>
<INPUT TYPE="checkbox" NAME="<% $field %>" VALUE="<% $f->{'value'} %>" <% $object->$field() eq $f->{'value'} ? ' CHECKED' : '' %>>
</TD>
+
% } elsif ( $type eq 'select' ) {
+
<TD>
<SELECT NAME="<% $field %>"
% my $aref = $f->{'value'}{'values'};
% }
</SELECT>
</TD>
-% } else {
+% } else {
<TD>
<INPUT TYPE="<% $type %>" NAME="<% $field %>" VALUE="<% $object->$field() %>">
<TD>
-% }
+% }
</TR>
-% }
+% }
<% ref( $opt{'html_table_bottom'} )
? &{ $opt{'html_table_bottom'} }( $object )