X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=httemplate%2Fview%2Fcust_main.cgi;h=22c4191021cf4fc67a89775942146ced12ec57fa;hb=657742d1118c350120ecac455ae013f1deed5b83;hp=a34ddc429ed83c499416d5636f52bfc5230d61ee;hpb=4ae85517a9c3a8a2f61e87bc27a74eb616e396a4;p=freeside.git
diff --git a/httemplate/view/cust_main.cgi b/httemplate/view/cust_main.cgi
index a34ddc429..22c419102 100755
--- a/httemplate/view/cust_main.cgi
+++ b/httemplate/view/cust_main.cgi
@@ -300,13 +300,25 @@ if ( defined $cust_main->dbdef_table->column('comments')
'';
}
-print '';
+%>
+
+
-print '
'.
- '
+
+<%
if ( $conf->config('payby-default') ne 'HIDE' ) {
@@ -570,6 +584,7 @@ print '';
my $target = "$payby$payinfo";
$payby =~ s/^BILL$/Check #/ if $payinfo;
+ $payby =~ s/^CHEK$/Electronic check /;
$payby =~ s/^BILL$//;
$payby =~ s/^(CARD|COMP)$/$1 /;
my $info = $payby ? " ($payby$payinfo)" : '';
@@ -625,17 +640,17 @@ print '';
my $refund = '';
my $refund_days = $conf->config('card_refund-days') || 120;
if ( $cust_pay->closed !~ /^Y/i
- && $cust_pay->payby eq 'CARD'
+ && $cust_pay->payby =~ /^(CARD|CHEK)$/
&& time-$cust_pay->_date < $refund_days*86400
&& $cust_pay->unrefunded > 0
) {
- $refund = qq! (paynum. qq!">refund)!;
}
my $void = '';
if ( $cust_pay->closed !~ /^Y/i
- && $cust_pay->payby ne 'CARD'
+ && $cust_pay->payby !~ /^(CARD|CHEK)$/
) {
$void = qq! ( $cust_pay_void->_date,
- 'desc' => "Payment $info voided ".
+ 'desc' => "Payment $info voided ".
time2str("%D", $cust_pay_void->void_date).
" by ". $cust_pay_void->otaker. '',
'void_payment' => $cust_pay_void->paid,
@@ -783,6 +799,7 @@ print '';
: $cust_refund->payinfo;
$payby =~ s/^BILL$/Check #/ if $payinfo;
+ $payby =~ s/^CHEK$/Electronic check /;
$payby =~ s/^(CARD|COMP)$/$1 /;
push @history, {
@@ -897,28 +914,14 @@ sub get_packages {
$pkg{expire} = $cust_pkg->getfield('expire');
$pkg{cancel} = $cust_pkg->getfield('cancel');
- my %svcparts = ();
-
- foreach my $pkg_svc (
- qsearch('pkg_svc', { 'pkgpart' => $part_pkg->pkgpart })
- ) {
-
- next if ($pkg_svc->quantity == 0);
-
- my $part_svc = qsearchs('part_svc', { 'svcpart' => $pkg_svc->svcpart });
-
- my $svcpart = {};
- $svcpart->{svcpart} = $part_svc->svcpart;
- $svcpart->{svc} = $part_svc->svc;
- $svcpart->{svcdb} = $part_svc->svcdb;
- $svcpart->{quantity} = $pkg_svc->quantity;
- $svcpart->{count} = 0;
-
- $svcpart->{services} = [];
-
- $svcparts{$svcpart->{svcpart}} = $svcpart;
-
- }
+ my %svcparts = map {
+ $_->svcpart => {
+ $_->part_svc->hash,
+ 'quantity' => $_->quantity,
+ 'count' => $cust_pkg->num_cust_svc($_->svcpart),
+ #'services' => [],
+ };
+ } $part_pkg->pkg_svc;
foreach my $cust_svc ( $cust_pkg->cust_svc ) {
#warn "svcnum ". $cust_svc->svcnum. " / svcpart ". $cust_svc->svcpart. "\n";
@@ -930,18 +933,14 @@ sub get_packages {
#false laziness with above, to catch extraneous services. whole
#damn thing should be OO...
my $svcpart = ( $svcparts{$cust_svc->svcpart} ||= {
- 'svcpart' => $cust_svc->svcpart,
- 'svc' => $cust_svc->part_svc->svc,
- 'svcdb' => $cust_svc->part_svc->svcdb,
+ $cust_svc->part_svc->hash,
'quantity' => 0,
- 'count' => 0,
- 'services' => [],
+ 'count' => $cust_pkg->num_cust_svc($cust_svc->svcpart),
+ #'services' => [],
} );
push @{$svcpart->{services}}, $svc;
- $svcpart->{count}++;
-
}
$pkg{svcparts} = [ values %svcparts ];