diff options
Diffstat (limited to 'httemplate/view')
-rwxr-xr-x | httemplate/view/cust_main.cgi | 17 | ||||
-rw-r--r-- | httemplate/view/cust_main/billing.html | 194 | ||||
-rw-r--r-- | httemplate/view/cust_main/cust_payby.html | 133 | ||||
-rwxr-xr-x | httemplate/view/cust_main/packages.html | 4 |
4 files changed, 164 insertions, 184 deletions
diff --git a/httemplate/view/cust_main.cgi b/httemplate/view/cust_main.cgi index d18c7f70f..081b96bed 100755 --- a/httemplate/view/cust_main.cgi +++ b/httemplate/view/cust_main.cgi @@ -169,14 +169,12 @@ function areyousure(href, message) { <TABLE BORDER=0> <TR> <TD VALIGN="top"> - <& cust_main/contacts.html, $cust_main &> + <& cust_main/misc.html, $cust_main &> + <BR><& cust_main/contacts.html, $cust_main &> </TD> <TD VALIGN="top" STYLE="padding-left: 54px"> - <& cust_main/misc.html, $cust_main &> -% if ( $conf->config('payby-default') ne 'HIDE' ) { - <BR><& cust_main/billing.html, $cust_main &> -% } - + <& cust_main/billing.html, $cust_main &> + <BR><& cust_main/cust_payby.html, $cust_main &> </TD> </TR> <TR> @@ -281,9 +279,7 @@ function areyousure(href, message) { % if ( $view eq 'payment_history' || $view eq 'jumbo' ) { -% if ( $conf->config('payby-default') ne 'HIDE' ) { - <& cust_main/payment_history.html, $cust_main &> -% } +<& cust_main/payment_history.html, $cust_main &> % } @@ -352,8 +348,7 @@ if ( $conf->config('ticket_system') ) { } $views{emt('Quotations')} = 'quotations'; $views{emt('Packages')} = 'packages'; -$views{emt('Payment History')} = 'payment_history' - unless $conf->config('payby-default' eq 'HIDE'); +$views{emt('Payment History')} = 'payment_history'; $views{emt('Change History')} = 'change_history' if $curuser->access_right('View customer history'); $views{$conf->config('cust_main-custom_title') || emt('Custom')} = 'custom' diff --git a/httemplate/view/cust_main/billing.html b/httemplate/view/cust_main/billing.html index 64ec591a2..f1125c008 100644 --- a/httemplate/view/cust_main/billing.html +++ b/httemplate/view/cust_main/billing.html @@ -32,165 +32,25 @@ % } % if ( $conf->exists('cust_main-select-billday') -% && ($cust_main->payby eq 'CARD' || $cust_main->payby eq 'CHEK') ) { -<TR> - <TD ALIGN="right"><% mt('Billing day of month') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->billday %> - </TD> -</TR> -% } - -<TR> - <TD ALIGN="right"><% mt('Billing type') |h %></TD> - <TD BGCOLOR="#ffffff"> -% if ( $cust_main->payby eq 'CARD' || $cust_main->payby eq 'DCRD' ) { - -% my $autodemand = $cust_main->payby eq 'CARD' ? 'automatic' : 'on-demand'; - <% mt("Credit card ([_1])",$autodemand) |h %> - </TD> -</TR> -<TR> - <TD ALIGN="right"><% mt('Card number') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->paymask %></TD> -</TR> -% -%#false laziness w/elements/select-month_year.html & edit/cust_main/billing.html -%my( $mon, $year ); -%my $date = $cust_main->paydate || '12-2037'; -%if ( $date =~ /^(\d{4})-(\d{1,2})-\d{1,2}$/ ) { #PostgreSQL date format -% ( $mon, $year ) = ( $2, $1 ); -%} elsif ( $date =~ /^(\d{1,2})-(\d{1,2}-)?(\d{4}$)/ ) { -% ( $mon, $year ) = ( $1, $3 ); -%} else { -% warn "unrecognized expiration date format: $date"; -% ( $mon, $year ) = ( '', '' ); -%} -% - -<TR> - <TD ALIGN="right"><% mt('Expiration') |h %></TD> - <TD BGCOLOR="#ffffff"><% "$mon/$year" %></TD> -</TR> -% if ( $cust_main->paystart_month ) { - - <TR> - <TD ALIGN="right"><% mt('Start date') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->paystart_month. '/'. $cust_main->paystart_year %> - </TR> -% } elsif ( $cust_main->payissue ) { - - <TR> - <TD ALIGN="right"><% mt('Issue #') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->payissue %> - </TR> -% } - - -<TR> - <TD ALIGN="right"><% mt('Name on card') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->payname %></TD> -</TR> -% } elsif ( $cust_main->payby eq 'CHEK' || $cust_main->payby eq 'DCHK') { -% my( $account, $aba ) = split('@', $cust_main->paymask ); -% my $branch = ''; -% ($branch,$aba) = split('\.',$aba) if $conf->config('echeck-country') eq 'CA'; - - -% my $autodemand = $cust_main->payby eq 'CHEK' ? 'automatic' : 'on-demand'; - <% mt("Electronic check ([_1])",$autodemand) |h %> - </TD> -</TR> - -% #false laziness w/edit/cust_main/billing.html and misc/payment.cgi -% my $routing_label = $conf->config('echeck-country') eq 'US' -% ? 'ABA/Routing number' -% : 'Routing number'; - -<TR> - <TD ALIGN="right"><% mt($routing_label) |h %></TD> - <TD BGCOLOR="#ffffff"><% $aba %></TD> -</TR> - -% if ( $conf->config('echeck-country') eq 'CA' ) { -<TR> - <TD ALIGN="right"><% mt('Branch number') |h %></TD> - <TD BGCOLOR="#ffffff"><% $branch %></TD> -<TR> -% } - - <TD ALIGN="right"><% mt('Account number') |h %></TD> - <TD BGCOLOR="#ffffff"><% $account %></TD> -</TR> -<TR> - <TD ALIGN="right"><% mt('Account type') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->paytype %></TD> -</TR> -<TR> - <TD ALIGN="right"><% mt('Bank name') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->payname %></TD> -</TR> -% if ( $conf->exists('show_bankstate') ) { -<TR> - <TD ALIGN="right"><% $paystate_label %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->paystate || ' ' %></TD> -</TR> +% && qsearch({ 'table' => 'cust_payby', +% 'hashref' => { 'custnum' => $cust_main->custnum, }, +% 'extra_sql' => "AND payby IN ( 'CARD', 'CHEK' )", +% 'order_by' => 'LIMIT 1', +% }) +% ) +% { + <TR> + <TD ALIGN="right"><% mt('Payment day of month') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_main->billday %> + </TD> + </TR> % } -% } elsif ( $cust_main->payby eq 'LECB' ) { -% $cust_main->payinfo =~ /^(\d{3})(\d{3})(\d{4})$/; -% my $payinfo = "$1-$2-$3"; - - <% mt('Phone bill billing') |h %> - </TD> -</TR> -<TR> - <TD ALIGN="right"><% mt('Phone number') |h %></TD> - <TD BGCOLOR="#ffffff"><% $payinfo %></TD> -</TR> -% } elsif ( $cust_main->payby eq 'BILL' ) { - - <% mt('Billing') |h %> - </TD> -</TR> -% if ( $cust_main->payinfo ) { - -<TR> - <TD ALIGN="right"><% mt('P.O.') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->payinfo %></TD> -</TR> -% } - -<TR> - <TD ALIGN="right"><% mt('Attention') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->payname |h %></TD> -</TR> -% } elsif ( $cust_main->payby eq 'COMP' ) { - - <% mt('Complimentary') |h %> - </TD> -</TR> -<TR> - <TD ALIGN="right"><% mt('Authorized by') |h %></TD> - <TD BGCOLOR="#ffffff"><% $cust_main->payinfo %></TD> -</TR> -% -%#false laziness w/above etc. -%my( $mon, $year ); -%my $date = $cust_main->paydate || '12-2037'; -%if ( $date =~ /^(\d{4})-(\d{1,2})-\d{1,2}$/ ) { #PostgreSQL date format -% ( $mon, $year ) = ( $2, $1 ); -%} elsif ( $date =~ /^(\d{1,2})-(\d{1,2}-)?(\d{4}$)/ ) { -% ( $mon, $year ) = ( $1, $3 ); -%} else { -% warn "unrecognized expiration date format: $date"; -% ( $mon, $year ) = ( '', '' ); -%} -% - -<TR> - <TD ALIGN="right"><% mt('Expiration') |h %></TD> - <TD BGCOLOR="#ffffff"><% "$mon/$year" %></TD> -</TR> +% if ( $cust_main->po_number ) { + <TR> + <TD ALIGN="right"><% mt('Purchase Order #') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_main->po_number %></TD> + </TR> % } % my $yes = emt('yes'); @@ -230,13 +90,13 @@ <TR> <TD ALIGN="right"><% mt('Postal mail invoices') |h %></TD> <TD BGCOLOR="#ffffff"> - <% ( grep { $_ eq 'POST' } @invoicing_list ) ? $yes : $no %> - </TD> -</TR> -<TR> - <TD ALIGN="right"><% mt('Fax invoices') |h %></TD> - <TD BGCOLOR="#ffffff"> - <% ( grep { $_ eq 'FAX' } @invoicing_list ) ? $yes : $no %> + <% ( grep { $_ eq 'POST' } @invoicing_list ) + ? $yes. ( $cust_main->invoice_attn + ? ', attn: '. $cust_main->invoice_attn + : '' + ) + : $no + %> </TD> </TR> <TR> @@ -336,12 +196,6 @@ </TABLE> -<%once> - -my $paystate_label = FS::Msgcat::_gettext('paystate'); -$paystate_label = 'Bank state' if $paystate_label =~/^paystate$/; - -</%once> <%init> my( $cust_main ) = @_; diff --git a/httemplate/view/cust_main/cust_payby.html b/httemplate/view/cust_main/cust_payby.html new file mode 100644 index 000000000..3ebb0551d --- /dev/null +++ b/httemplate/view/cust_main/cust_payby.html @@ -0,0 +1,133 @@ +% if ( @cust_payby ) { + + <FONT CLASS="fsinnerbox-title"><% mt('Payment information') |h %></FONT> + <TABLE CLASS="fsinnerbox"> + +% my $num = 0; +% foreach my $cust_payby ( @cust_payby ) { + +% #one line per piece of info? maybe, but just getting something working +% # for now + +% if ( $cust_payby->payby eq 'CARD' || $cust_payby->payby eq 'DCRD' ) { + +% my $auto = $cust_payby->payby eq 'CARD' ? 'automatic' : 'on-demand'; + <TR> + <TD COLSPAN=2 ALIGN="center" BGCOLOR="#ffffff"> + <% mt("Credit card ([_1])",$auto) |h %> + </TD> + </TR> + <TR> + <TD ALIGN="right"><% mt('Card number') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_payby->paymask %></TD> + </TR> + +% my( $mon, $year ) = $cust_payby->paydate_mon_year; + <TR> + <TD ALIGN="right"><% mt('Expiration') |h %></TD> + <TD BGCOLOR="#ffffff"><% "$mon/$year" %></TD> + </TR> + +% if ( $cust_payby->paystart_month ) { + <TR> + <TD ALIGN="right"><% mt('Start date') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_payby->paystart_month. '/'. $cust_payby->paystart_year %> + </TR> +% } elsif ( $cust_payby->payissue ) { + <TR> + <TD ALIGN="right"><% mt('Issue #') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_payby->payissue %> + </TR> +% } + + <TR> + <TD ALIGN="right"><% mt('Name on card') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_payby->payname %></TD> + </TR> + +% } elsif ( $cust_payby->payby eq 'CHEK' || $cust_payby->payby eq 'DCHK') { + +% my $auto = $cust_payby->payby eq 'CHEK' ? 'automatic' : 'on-demand'; +% +% my( $account, $aba ) = split('@', $cust_payby->paymask ); +% my $branch = ''; +% ($branch,$aba) = split('\.',$aba) +% if $conf->config('echeck-country') eq 'CA'; + + <TR> + <TD COLSPAN=2 ALIGN="center" BGCOLOR="#ffffff"> + <% mt("Electronic check ([_1])",$auto) |h %> + </TD> + </TR> + +% #false laziness w/edit/cust_main/billing.html and misc/payment.cgi +% my $routing_label = $conf->config('echeck-country') eq 'US' +% ? 'ABA/Routing number' +% : 'Routing number'; + <TR> + <TD ALIGN="right"><% mt($routing_label) |h %></TD> + <TD BGCOLOR="#ffffff"><% $aba %></TD> + </TR> + +% if ( $conf->config('echeck-country') eq 'CA' ) { + <TR> + <TD ALIGN="right"><% mt('Branch number') |h %></TD> + <TD BGCOLOR="#ffffff"><% $branch %></TD> + </TR> +% } + + <TR> + <TD ALIGN="right"><% mt('Account number') |h %></TD> + <TD BGCOLOR="#ffffff"><% $account %></TD> + </TR> + <TR> + <TD ALIGN="right"><% mt('Account type') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_payby->paytype %></TD> + </TR> + <TR> + <TD ALIGN="right"><% mt('Bank name') |h %></TD> + <TD BGCOLOR="#ffffff"><% $cust_payby->payname %></TD> + </TR> + +% if ( $conf->exists('show_bankstate') ) { + <TR> + <TD ALIGN="right"><% $paystate_label %></TD> + <TD BGCOLOR="#ffffff"><% $cust_payby->paystate || ' ' %></TD> + </TR> +% } + +% } else { + <TR> + <TD COLSPAN="2"><FONT COLOR="#FF0000"> + Unknown cust_pay.payby <% $cust_payby->payby %> + </FONT></TD> + </TR> +% } + +% unless ( $num++ == $#cust_payby ) { + <TR> + <TD COLSPAN="2"></TD> + </TR> + <TR> + <TD COLSPAN="2" STYLE="border-top: 1px solid black; padding:2px"></TD> + </TR> +% } + +% } + + </TABLE> + +% } +<%once> + +my $paystate_label = FS::Msgcat::_gettext('paystate'); +$paystate_label = 'Bank state' if $paystate_label =~/^paystate$/; + +</%once> +<%init> + +my( $cust_main ) = @_; +my $conf = new FS::Conf; +my @cust_payby = $cust_main->cust_payby; + +</%init> diff --git a/httemplate/view/cust_main/packages.html b/httemplate/view/cust_main/packages.html index 9a2332ba8..90985110c 100755 --- a/httemplate/view/cust_main/packages.html +++ b/httemplate/view/cust_main/packages.html @@ -92,9 +92,7 @@ if ( el ) el.scrollIntoView(true); <& /elements/order_pkg_link.html, 'cust_main'=>$cust_main &> % } -% if ( $curuser->access_right('One-time charge') -% && $conf->config('payby-default') ne 'HIDE' -% ) { +% if ( $curuser->access_right('One-time charge') ) { <% $s++ ? ' | ' : '' %> <& /elements/one_time_charge_link.html, 'custnum'=>$cust_main->custnum &> % } |