X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fsearch%2Fcust_pkg.cgi;h=bd4a9466fb9c7ca2644e4520f4a0c82784b9b3c6;hb=bfd85806a865e8428c99aadbe4fd11a7af19f731;hp=7a651c4bfe9248ca6582899f531384b718053f19;hpb=0c2f4bccc3810426d4b9e31dca645711c32f0b63;p=freeside.git diff --git a/httemplate/search/cust_pkg.cgi b/httemplate/search/cust_pkg.cgi index 7a651c4bf..bd4a9466f 100755 --- a/httemplate/search/cust_pkg.cgi +++ b/httemplate/search/cust_pkg.cgi @@ -1,224 +1,12 @@ -% -% -%# my %part_pkg = map { $_->pkgpart => $_ } qsearch('part_pkg', {}); -% -%my($query) = $cgi->keywords; -% -%my @where = (); -% -%## -%# parse agent -%## -% -%if ( $cgi->param('agentnum') =~ /^(\d+)$/ and $1 ) { -% push @where, -% "agentnum = $1"; -%} -% -%## -%# parse status -%## -% -%if ( $cgi->param('magic') eq 'active' -% || $cgi->param('status') eq 'active' ) { -% -% push @where, FS::cust_pkg->active_sql(); -% -%} elsif ( $cgi->param('magic') eq 'inactive' -% || $cgi->param('status') eq 'inactive' ) { -% -% push @where, FS::cust_pkg->inactive_sql(); -% -% -%} elsif ( $cgi->param('magic') eq 'suspended' -% || $cgi->param('status') eq 'suspended' ) { -% -% push @where, FS::cust_pkg->suspended_sql(); -% -%} elsif ( $cgi->param('magic') =~ /^cancell?ed$/ -% || $cgi->param('status') =~ /^cancell?ed$/ ) { -% -% push @where, FS::cust_pkg->cancelled_sql(); -% -%} elsif ( $cgi->param('status') =~ /^(one-time charge|inactive)$/ ) { -% -% push @where, FS::cust_pkg->inactive_sql(); -% -%} -% -%### -%# parse package class -%### -% -%#false lazinessish w/graph/cust_bill_pkg.cgi -%my $classnum = 0; -%my @pkg_class = (); -%if ( exists($cgi->Vars->{'classnum'}) -% && $cgi->param('classnum') =~ /^(\d*)$/ -% ) -%{ -% $classnum = $1; -% if ( $classnum ) { #a specific class -% push @where, "classnum = $classnum"; -% -% #@pkg_class = ( qsearchs('pkg_class', { 'classnum' => $classnum } ) ); -% #die "classnum $classnum not found!" unless $pkg_class[0]; -% #$title .= $pkg_class[0]->classname.' '; -% -% } elsif ( $classnum eq '' ) { #the empty class -% -% push @where, "classnum IS NULL"; -% #$title .= 'Empty class '; -% #@pkg_class = ( '(empty class)' ); -% } elsif ( $classnum eq '0' ) { -% #@pkg_class = qsearch('pkg_class', {} ); # { 'disabled' => '' } ); -% #push @pkg_class, '(empty class)'; -% } else { -% die "illegal classnum"; -% } -%} -%#eslaf -% -%### -%# parse part_pkg -%### -% -%my $pkgpart = join (' OR pkgpart=', -% grep {$_} map { /^(\d+)$/; } ($cgi->param('pkgpart'))); -%push @where, '(pkgpart=' . $pkgpart . ')' if $pkgpart; -% -%### -%# parse magic, legacy, etc. -%### -% -%my $orderby; -%if ( $cgi->param('magic') && $cgi->param('magic') eq 'bill' ) { -% $orderby = 'ORDER BY bill'; -% -% my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi); -% push @where, -% #"bill >= $beginning ", -% #"bill <= $ending", -% "CASE WHEN bill IS NULL THEN 0 ELSE bill END >= $beginning ", -% "CASE WHEN bill IS NULL THEN 0 ELSE bill END <= $ending", -% #'( cancel IS NULL OR cancel = 0 )' -% ; -% -%} else { -% -% if ( $cgi->param('magic') && -% $cgi->param('magic') =~ /^(active|inactive|suspended|cancell?ed)$/ -% ) { -% -% $orderby = 'ORDER BY pkgnum'; -% -% if ( $cgi->param('pkgpart') =~ /^(\d+)$/ ) { -% push @where, "pkgpart = $1"; -% } -% -% } elsif ( $query eq 'pkgnum' ) { -% -% $orderby = 'ORDER BY pkgnum'; -% -% } elsif ( $query eq 'APKG_pkgnum' ) { -% -% $orderby = 'ORDER BY pkgnum'; -% -% push @where, '0 < ( -% SELECT count(*) FROM pkg_svc -% WHERE pkg_svc.pkgpart = cust_pkg.pkgpart -% AND pkg_svc.quantity > ( SELECT count(*) FROM cust_svc -% WHERE cust_svc.pkgnum = cust_pkg.pkgnum -% AND cust_svc.svcpart = pkg_svc.svcpart -% ) -% )'; -% -% } else { -% die "Empty or unknown QUERY_STRING!"; -% } -% -%} -% -%## -%# setup queries, links, subs, etc. for the search -%## -% -%# here is the agent virtualization -%push @where, $FS::CurrentUser::CurrentUser->agentnums_sql; -% -%my $extra_sql = scalar(@where) ? ' WHERE '. join(' AND ', @where) : ''; -% -%my $addl_from = 'LEFT JOIN cust_main USING ( custnum ) '. -% 'LEFT JOIN part_pkg USING ( pkgpart ) '. -% 'LEFT JOIN pkg_class USING ( classnum ) '; -% -%my $count_query = "SELECT COUNT(*) FROM cust_pkg $addl_from $extra_sql"; -% -%my $sql_query = { -% 'table' => 'cust_pkg', -% 'hashref' => {}, -% 'select' => join(', ', -% 'cust_pkg.*', -% ( map "part_pkg.$_", qw( pkg freq ) ), -% 'pkg_class.classname', -% 'cust_main.custnum as cust_main_custnum', -% FS::UI::Web::cust_sql_fields( -% $cgi->param('cust_fields') -% ), -% ), -% 'extra_sql' => "$extra_sql $orderby", -% 'addl_from' => $addl_from, -%}; -% -%my $link = sub { -% [ "${p}view/cust_main.cgi?".shift->custnum.'#cust_pkg', 'pkgnum' ]; -%}; -% -%my $clink = sub { -% my $cust_pkg = shift; -% $cust_pkg->cust_main_custnum -% ? [ "${p}view/cust_main.cgi?", 'custnum' ] -% : ''; -%}; -% -%#if ( scalar(@cust_pkg) == 1 ) { -%# print $cgi->redirect("${p}view/cust_main.cgi?". $cust_pkg[0]->custnum. -%# "#cust_pkg". $cust_pkg[0]->pkgnum ); -% -%# my @cust_svc = qsearch( 'cust_svc', { 'pkgnum' => $pkgnum } ); -%# my $rowspan = scalar(@cust_svc) || 1; -% -%# my $n2 = ''; -%# foreach my $cust_svc ( @cust_svc ) { -%# my($label, $value, $svcdb) = $cust_svc->label; -%# my $svcnum = $cust_svc->svcnum; -%# my $sview = $p. "view"; -%# print $n2,qq!
$label | !, +# qq!$value | !; +# $n2="