2 #<!-- $Id: part_pkg.cgi,v 1.4 2001-09-04 14:44:06 ivan Exp $ -->
5 use vars qw( $cgi $p $part_pkg );
7 use CGI::Carp qw(fatalsToBrowser);
8 use FS::UID qw(cgisuidsetup);
9 use FS::Record qw(qsearch qsearchs);
10 use FS::CGI qw(header menubar popurl table);
21 print $cgi->header( '-expires' => 'now' ), header("Package Definition Listing",menubar(
23 )), "One or more services are grouped together into a package and given",
24 " pricing information. Customers purchase packages, not services.<BR><BR>",
28 <TH COLSPAN=2>Package</TH>
30 <TH><FONT SIZE=-1>Setup Fee</FONT></TH>
31 <TH><FONT SIZE=-1>Freq.</FONT></TH>
32 <TH><FONT SIZE=-1>Recur. Fee</FONT></TH>
34 <TH><FONT SIZE=-1>Quan.</FONT></TH>
38 foreach $part_pkg ( sort {
39 $a->getfield('pkgpart') <=> $b->getfield('pkgpart')
40 } qsearch('part_pkg',{}) ) {
41 my($hashref)=$part_pkg->hashref;
42 my(@pkg_svc)=grep $_->getfield('quantity'),
43 qsearch('pkg_svc',{'pkgpart'=> $hashref->{pkgpart} });
44 my($rowspan)=scalar(@pkg_svc);
47 <TD ROWSPAN=$rowspan><A HREF="${p}edit/part_pkg.cgi?$hashref->{pkgpart}">
50 <TD ROWSPAN=$rowspan><A HREF="${p}edit/part_pkg.cgi?$hashref->{pkgpart}">$hashref->{pkg}</A></TD>
51 <TD ROWSPAN=$rowspan>$hashref->{comment}</TD>
52 <TD ROWSPAN=$rowspan>$hashref->{setup}</TD>
53 <TD ROWSPAN=$rowspan>$hashref->{freq}</TD>
54 <TD ROWSPAN=$rowspan>$hashref->{recur}</TD>
59 foreach $pkg_svc ( @pkg_svc ) {
60 my($svcpart)=$pkg_svc->getfield('svcpart');
61 my($part_svc) = qsearchs('part_svc',{'svcpart'=> $svcpart });
62 print $n,qq!<TD><A HREF="${p}edit/part_svc.cgi?$svcpart">!,
63 $part_svc->getfield('svc'),"</A></TD><TD>",
64 $pkg_svc->getfield('quantity'),"</TD></TR>\n";
72 <TR><TD COLSPAN=8><I><A HREF="${p}edit/part_pkg.cgi">Add a new package definition</A></I></TD></TR>