From ac44c24787eb093e47b92ee9939d003acf8464e7 Mon Sep 17 00:00:00 2001 From: Jonathan Prykop Date: Wed, 8 Jun 2016 17:24:35 -0500 Subject: [PATCH] RT#40641: unprovisioning preserved cancelled services [fixed for cust_svc without cust_pkg] --- httemplate/search/cust_svc.html | 3 +++ httemplate/search/svc_acct.cgi | 3 +++ httemplate/search/svc_broadband.cgi | 3 +++ httemplate/search/svc_circuit.cgi | 3 +++ httemplate/search/svc_dish.cgi | 3 +++ httemplate/search/svc_domain.cgi | 3 +++ httemplate/search/svc_external.cgi | 3 +++ httemplate/search/svc_fiber.html | 3 +++ httemplate/search/svc_forward.cgi | 3 +++ httemplate/search/svc_hardware.cgi | 3 +++ httemplate/search/svc_phone.cgi | 3 +++ httemplate/search/svc_www.cgi | 3 +++ 12 files changed, 36 insertions(+) diff --git a/httemplate/search/cust_svc.html b/httemplate/search/cust_svc.html index 7000e3048..b2826309a 100644 --- a/httemplate/search/cust_svc.html +++ b/httemplate/search/cust_svc.html @@ -21,6 +21,7 @@ }, sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, # package? @@ -39,6 +40,8 @@ '', '', sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_acct.cgi b/httemplate/search/svc_acct.cgi index ef89f01c8..ecf37b42e 100755 --- a/httemplate/search/svc_acct.cgi +++ b/httemplate/search/svc_acct.cgi @@ -356,11 +356,14 @@ foreach my $pkg_field ( @pkg_fields ) { push @header, emt('Pkg. Status'); push @fields, sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status; }; push @links, ''; $align .= 'r'; push @color, sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }; diff --git a/httemplate/search/svc_broadband.cgi b/httemplate/search/svc_broadband.cgi index ff2538c93..8cdf29d1c 100755 --- a/httemplate/search/svc_broadband.cgi +++ b/httemplate/search/svc_broadband.cgi @@ -23,6 +23,7 @@ 'ip_addr', sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -46,6 +47,8 @@ (map '', @tower_fields), '', sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_circuit.cgi b/httemplate/search/svc_circuit.cgi index 2174734ea..3a85375ef 100644 --- a/httemplate/search/svc_circuit.cgi +++ b/httemplate/search/svc_circuit.cgi @@ -21,6 +21,7 @@ 'ip_addr', sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -38,6 +39,8 @@ 'color' => [ ('') x 6, sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_dish.cgi b/httemplate/search/svc_dish.cgi index 1e7330804..5c476085a 100755 --- a/httemplate/search/svc_dish.cgi +++ b/httemplate/search/svc_dish.cgi @@ -15,6 +15,7 @@ 'acctnum', sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -33,6 +34,8 @@ '', '', sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_domain.cgi b/httemplate/search/svc_domain.cgi index c8fca9fdc..23eeba6a7 100755 --- a/httemplate/search/svc_domain.cgi +++ b/httemplate/search/svc_domain.cgi @@ -15,6 +15,7 @@ 'domain', sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -33,6 +34,8 @@ '', '', sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_external.cgi b/httemplate/search/svc_external.cgi index 5f9056165..426ac1645 100755 --- a/httemplate/search/svc_external.cgi +++ b/httemplate/search/svc_external.cgi @@ -17,6 +17,7 @@ 'title', sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -38,6 +39,8 @@ '', '', sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_fiber.html b/httemplate/search/svc_fiber.html index 3960a1635..a07c5f541 100644 --- a/httemplate/search/svc_fiber.html +++ b/httemplate/search/svc_fiber.html @@ -23,6 +23,7 @@ 'ont_serial', sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -40,6 +41,8 @@ 'color' => [ ('') x 6, sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_forward.cgi b/httemplate/search/svc_forward.cgi index ca2c28808..c9b6012a7 100755 --- a/httemplate/search/svc_forward.cgi +++ b/httemplate/search/svc_forward.cgi @@ -17,6 +17,7 @@ $format_dst, sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -37,6 +38,8 @@ '', '', sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_hardware.cgi b/httemplate/search/svc_hardware.cgi index 78f413e30..c41cc5a6e 100644 --- a/httemplate/search/svc_hardware.cgi +++ b/httemplate/search/svc_hardware.cgi @@ -25,6 +25,7 @@ 'smartcard', sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -38,6 +39,8 @@ 'align' => 'rlllllllr' . FS::UI::Web::cust_aligns(), 'color' => [ ('') x 8, sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_phone.cgi b/httemplate/search/svc_phone.cgi index 29e745690..4c0b65487 100644 --- a/httemplate/search/svc_phone.cgi +++ b/httemplate/search/svc_phone.cgi @@ -19,6 +19,7 @@ @fields, sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -44,6 +45,8 @@ '', ( map '', @header ), sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status diff --git a/httemplate/search/svc_www.cgi b/httemplate/search/svc_www.cgi index 4f6611f17..6e9ba928e 100755 --- a/httemplate/search/svc_www.cgi +++ b/httemplate/search/svc_www.cgi @@ -23,6 +23,7 @@ }, sub { $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; $cust_pkg_cache{$_[0]->svcnum}->ucfirst_status }, \&FS::UI::Web::cust_fields, @@ -43,6 +44,8 @@ '', '', sub { + $cust_pkg_cache{$_[0]->svcnum} ||= $_[0]->cust_svc->cust_pkg; + return '' unless $cust_pkg_cache{$_[0]->svcnum}; my $c = FS::cust_pkg::statuscolors; $c->{$cust_pkg_cache{$_[0]->svcnum}->status }; }, # pkg status -- 2.11.0