diff options
author | ivan <ivan> | 2006-04-22 00:58:40 +0000 |
---|---|---|
committer | ivan <ivan> | 2006-04-22 00:58:40 +0000 |
commit | 1a033848671cad2cbe7687b37fc718b3b2a68b83 (patch) | |
tree | 01fc1ca352726cdc5786e0ccaf78515e9326ba84 /httemplate/elements/select-table.html | |
parent | 303cb4ce4b6ce634e108e3b7a0b43086a5e4f184 (diff) |
start of package class web UI (add/edit package classes, package class selection in package def edit)
Diffstat (limited to 'httemplate/elements/select-table.html')
-rw-r--r-- | httemplate/elements/select-table.html | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/httemplate/elements/select-table.html b/httemplate/elements/select-table.html new file mode 100644 index 000000000..10cc8b995 --- /dev/null +++ b/httemplate/elements/select-table.html @@ -0,0 +1,45 @@ +<% + + ##required + # 'table' => 'table_name', + # 'name_col' => 'name_column', + # + ##strongly recommended (you want your forms to be "sticky" on errors, right?) + # 'value' => 'current_value', + # + ##opt + # 'empty_label' => '', #better specify it though, the default might change + # 'hashref' => {}, + # 'records' => \@records, #instead of hashref + + my( %opt ) = @_; + + my $key = dbdef->table($opt{'table'})->primary_key; #? $opt{'primary_key'} || + + my $name_col = $opt{'name_col'}; + + my @records = (); + if ( $opt{'records'} ) { + @records = @{ $opt{'records'} }; + } else { + @records = qsearch( $opt{'table'}, ( $opt{'hashref'} || {} ) ); + } + +%> + +<SELECT NAME="<%= $key %>"> + + <OPTION VALUE=""><%= $opt{'empty_label'} || 'all' %></OPTION> + + <% foreach my $record ( sort { $a->$name_col() cmp $b->$name_col() } + @records + ) + { + %> + + <OPTION VALUE="<%= $record->$key() %>"<%= $opt{'value'} == $record->$key() ? ' SELECTED' : '' %>><%= $record->$name_col() %> + + <% } %> + +</SELECT> + |