diff options
author | ivan <ivan> | 2008-03-01 22:23:41 +0000 |
---|---|---|
committer | ivan <ivan> | 2008-03-01 22:23:41 +0000 |
commit | bd39db7a960f64d6a19e714aa8d74ccab1fd04c5 (patch) | |
tree | 8211e13c8ebfed934312c3393b488060982e8ad2 | |
parent | 162a742110ede26cbb904b1f38c6a99e4b692eef (diff) |
add payby selection to adv. customer search
-rw-r--r-- | httemplate/elements/select-payby.html | 40 | ||||
-rw-r--r-- | httemplate/elements/tr-select-payby.html | 37 | ||||
-rwxr-xr-x | httemplate/search/cust_main.html | 11 | ||||
-rwxr-xr-x | httemplate/search/report_cust_main.html | 11 |
4 files changed, 97 insertions, 2 deletions
diff --git a/httemplate/elements/select-payby.html b/httemplate/elements/select-payby.html new file mode 100644 index 000000000..3f19cb952 --- /dev/null +++ b/httemplate/elements/select-payby.html @@ -0,0 +1,40 @@ +<SELECT NAME="<% $opt{'field'} || 'payby' %>" + <% $opt{'multiple'} ? 'MULTIPLE' : '' %> + <% $onchange %> +> + +% unless ( $opt{'multiple'} ) { + <OPTION VALUE="" <% '' eq $value ? 'SELECTED' : '' %> >all +% } + +% foreach my $option ( keys %{ $opt{'paybys'} } ) { +% my $sel = ( ref($value) && $value->{$option} ) || $option eq $value; + + <OPTION VALUE="<% $option %>" + <% $sel ? 'SELECTED' : '' %> + ><% $opt{'paybys'}->{$option} %> + +% } + +</SELECT> + +<%init> + +my %opt = @_; + +my $method = 'payby'; +$method = 'cust_payby' if $opt{'payby_type'} eq 'cust'; +#$method = 'event_payby' if $opt{'payby_type'} eq 'event'; +#$method = 'pay_payby' if $opt{'payby_type'} eq 'pay'; + +unless ( $opt{'paybys'} ) { + tie %{ $opt{'paybys'} }, 'Tie::IxHash', FS::payby->$method(); +} + +my $onchange = $opt{'onchange'} + ? 'onChange="'. $opt{'onchange'}. '(this)"' + : ''; + +my $value = $opt{'curr_value'} || $opt{'value'}; + +</%init> diff --git a/httemplate/elements/tr-select-payby.html b/httemplate/elements/tr-select-payby.html new file mode 100644 index 000000000..354eb5580 --- /dev/null +++ b/httemplate/elements/tr-select-payby.html @@ -0,0 +1,37 @@ +<% include ('tr-td-label.html', 'label' => 'Payment type', @_ ) %> + + <TD <% $style %>> + + <% include( '/elements/select-payby.html', + 'curr_value' => $curr_value, + %opt + ) + %> + + </TD> + +</TR> + +<%init> + +my %opt = @_; + +#my $onchange = $opt{'onchange'} +# ? 'onChange="'. $opt{'onchange'}. '(this)"' +# : ''; + +my $style = $opt{'cell_style'} ? 'STYLE="'. $opt{'cell_style'}. '"' : ''; + +my $method = 'payby2longname'; +$method = 'cust_payby2longname' if $opt{'payby_type'} eq 'cust'; +#$method = 'event_payby2longname' if $opt{'payby_type'} eq 'event'; +#$method = 'pay_payby2longname' if $opt{'payby_type'} eq 'pay'; + +unless ( $opt{'paybys'} ) { + tie %{ $opt{'paybys'} }, 'Tie::IxHash', FS::payby->$method(); +} + +my $curr_value = $opt{'curr_value'} || $opt{'value'}; + +</%init> + diff --git a/httemplate/search/cust_main.html b/httemplate/search/cust_main.html index 00fd1531a..5fb5ddad9 100755 --- a/httemplate/search/cust_main.html +++ b/httemplate/search/cust_main.html @@ -68,6 +68,17 @@ foreach my $field (qw( signupdate )) { } +### +# payby +### + +my @payby = grep /^([A-Z]{4})$/, $cgi->param('payby'); +if ( @payby ) { + push @where, '( '. join(' OR ', map "cust_main.payby = '$_'", @payby). ' )'; +} + +### + ## # amounts ## diff --git a/httemplate/search/report_cust_main.html b/httemplate/search/report_cust_main.html index 50bc67b3d..758c26923 100755 --- a/httemplate/search/report_cust_main.html +++ b/httemplate/search/report_cust_main.html @@ -29,9 +29,16 @@ </TR> % } + + <% include( '/elements/tr-select-payby.html', + 'payby_type' => 'cust', + 'multiple' => 1, + 'curr_value' => { map { $_ => 1 } FS::payby->cust_payby }, + ) + %> <% include( '/elements/tr-input-lessthan_greaterthan.html', - label => 'Current Balance', + label => 'Current balance', field => 'current_balance', ) %> @@ -69,7 +76,7 @@ die "access denied" <%once> my %label = ( - 'signupdate' => 'Signup Date', + 'signupdate' => 'Signup date', ); </%once> |