X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Felements%2Fcheckboxes-table.html;h=96d13033374be0524c292ad13bd5331a966d98a2;hp=671cd1f9bfe73722e270bd73c2b0d24a8ca47862;hb=11bbf29de447fe39e9d7155fe280a0df70fa8c3c;hpb=fb4ab1073f0d15d660c6cdc4e07afebf68ef3924 diff --git a/httemplate/elements/checkboxes-table.html b/httemplate/elements/checkboxes-table.html index 671cd1f9b..96d130333 100644 --- a/httemplate/elements/checkboxes-table.html +++ b/httemplate/elements/checkboxes-table.html @@ -69,6 +69,7 @@ % 'select' => $opt{'target_table'}. '.*', % 'addl_from' => "LEFT JOIN $opt{'link_table'} USING ( $target_pkey )", % 'extra_sql' => $extra_sql, +% 'order_by' => $opt{'order_by'}, % }) % ) { % @@ -83,7 +84,11 @@ % % } elsif ( !$sourcenum ) { # newly created object, has no links yet % -% $checked = $opt{'default'} ? 'CHECKED' : '' +% if ( ref($opt{'default'}) ) { +% $checked = $opt{'default'}->{$targetnum} ? 'CHECKED' : ''; +% } else { +% $checked = $opt{'default'} ? 'CHECKED' : '' +% } % % } else { % @@ -96,19 +101,23 @@ % % } % -% - - VALUE="ON"> -% if ( $opt{'target_link'} ) { +% ### use name sent to function else use target table and key. +% my $checkbox_name; +% if ($opt{'field'}) { $checkbox_name = $opt{'field'}; } else { $checkbox_name = "$target_pkey$targetnum"; } +% ### use values sent to function rather than values in table to determine CHECKED if values are sent. +% my $values; +% if (ref $opt{'value'} eq ref {} ) { $values = $opt{'value'}; } +% else { foreach my $value ( split(/\,/, $opt{'value'}) ) { $values->{$value} = $value; } } +% if ($values->{$targetnum}) { $checked = "CHECKED"; } +% my $color_col = $opt{'color_col'}; + VALUE="<% $targetnum %>">
+% if ( $opt{'target_link'} ) { -% -% % } % -<% $targetnum %>: % if ( $opt{'name_callback'} ) { @@ -118,7 +127,7 @@ % - <% $target_obj->$name_col() %><% $opt{'target_link'} ? '' : '' %> + <% $target_obj->$name_col() %>
<% $opt{'target_link'} ? '' : '' %> % } % if ( $opt{'disable-able'} ) {