X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fselect-table.html;h=a52fdfaaa505692ac8a0b5ffd22668eafeca0d59;hb=49ff577b9fbb4b017f0652cdfe567b023d7ea4de;hp=10cc8b995073f8a13fde7bfeb054e541fee18eaa;hpb=1a033848671cad2cbe7687b37fc718b3b2a68b83;p=freeside.git diff --git a/httemplate/elements/select-table.html b/httemplate/elements/select-table.html index 10cc8b995..a52fdfaaa 100644 --- a/httemplate/elements/select-table.html +++ b/httemplate/elements/select-table.html @@ -1,45 +1,233 @@ -<% - - ##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'} || {} ) ); - } +<%doc> + +Example: + + include( '/elements/select-table.html', + + ## + # required + ## + 'table' => 'table_name', + 'name_col' => 'name_column', #or method if you pass an order_by + + #strongly recommended (you want your forms to be "sticky" on errors, right?) + 'curr_value' => 'current_value', + #'value' => #deprecated form of 'curr_value', + + ## + # optional + ## + + #search params + 'hashref' => {}, + 'addl_from' => '', + 'extra_sql' => '', + 'agent_virt' => 0, #set true and make sure the result is JOINed to + #something with agentnum (usually cust_main) + 'agent_null' => 0, #set true to always show un-agented entries + 'agent_null_right' => '', #right to see un-agented entries + #or + 'records' => \@records, #instead of search params + 'presorted' => 0, #set true to disable sorting the records on name_col + + #instead of the primary key... only for special cases + 'value_col' => 'columnname', + + #basic params controlling the resulting + 'element_name' => '', #HTML element name, defaults to the name of + # the primary key column + 'field' => '', #synonym for element_name + 'element_etc' => '', #additional attributes (i.e. "DISABLED") for the + # + #debugging + 'debug' => 0, #set true to enable - + ) - <% foreach my $record ( sort { $a->$name_col() cmp $b->$name_col() } - @records - ) - { - %> + +% unless ( $opt{'js_only'} ) { -