From d9f0a98539cd8dd957ea9a4b5d77fbb739d43d2e Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Wed, 9 Mar 2016 11:17:03 -0800 Subject: package filters in a large package list, RT#39822 --- httemplate/elements/select-cust_location.html | 65 ++++++++++++++++++++++++ httemplate/elements/select-table.html | 2 +- httemplate/elements/tr-select-cust_location.html | 35 +++---------- 3 files changed, 74 insertions(+), 28 deletions(-) create mode 100644 httemplate/elements/select-cust_location.html (limited to 'httemplate/elements') diff --git a/httemplate/elements/select-cust_location.html b/httemplate/elements/select-cust_location.html new file mode 100644 index 000000000..29563c50e --- /dev/null +++ b/httemplate/elements/select-cust_location.html @@ -0,0 +1,65 @@ + +<%init> + +my $conf = new FS::Conf; +my $countrydefault = $conf->config('countrydefault') || 'US'; + +my %opt = @_; +my $cust_main = $opt{'cust_main'}; +my $locationnum = $opt{'curr_value'}; + +$opt{'cust_location'} ||= [ $cust_main ? $cust_main->cust_location : () ]; + +my $addnew = exists($opt{addnew}) ? $opt{addnew} + : $cust_main ? 1 : ( $locationnum>0 ? 0 : 1 ); + + diff --git a/httemplate/elements/select-table.html b/httemplate/elements/select-table.html index d7ec015f3..6fb6b388b 100644 --- a/httemplate/elements/select-table.html +++ b/httemplate/elements/select-table.html @@ -159,7 +159,7 @@ my $key = $opt{'value_col'} || $dbdef_table->primary_key; my $name_col = $opt{'name_col'}; -my $value = $opt{'curr_value'} || $opt{'value'}; +my $value = exists($opt{'curr_value'}) ? $opt{'curr_value'} : $opt{'value'}; $value = [ split(/\s*,\s*/, $value) ] if $opt{'multiple'} && $value =~ /,/; #my $addl_from = $opt{'addl_from'} || ''; diff --git a/httemplate/elements/tr-select-cust_location.html b/httemplate/elements/tr-select-cust_location.html index 7a5b43bb8..3078f2cbe 100644 --- a/httemplate/elements/tr-select-cust_location.html +++ b/httemplate/elements/tr-select-cust_location.html @@ -183,33 +183,14 @@ Example: <<%$th%> ALIGN="right"><% $opt{'label'} || emt('Service location') %>> - + + <& /elements/select-cust_location.html, + %opt, + 'curr_value' => $locationnum, + 'cust_location' => \@cust_location, + 'onchange' => 'locationnum_changed(this);', + &> + -- cgit v1.2.1