diff options
Diffstat (limited to 'htdocs/browse/part_svc.cgi')
-rwxr-xr-x | htdocs/browse/part_svc.cgi | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/htdocs/browse/part_svc.cgi b/htdocs/browse/part_svc.cgi new file mode 100755 index 000000000..71a556421 --- /dev/null +++ b/htdocs/browse/part_svc.cgi @@ -0,0 +1,81 @@ +#!/usr/bin/perl -Tw +# +# part_svc.cgi: browse part_svc +# +# ivan@sisd.com 97-nov-14, 97-dec-9 +# +# Changes to allow page to work at a relative position in server +# bmccane@maxbaud.net 98-apr-3 +# +# lose background, FS::CGI ivan@sisd.com 98-sep-2 + +use strict; +use CGI::Base; +use FS::UID qw(cgisuidsetup swapuid); +use FS::Record qw(qsearch); +use FS::part_svc qw(fields); +use FS::CGI qw(header menubar); + +my($cgi) = new CGI::Base; +$cgi->get; + +&cgisuidsetup($cgi); + +SendHeaders(); # one guess. +print header('Service Part Listing', menubar( + 'Main Menu' => '../', + 'Add new service' => "../edit/part_svc.cgi", +)),<<END; + <BR>Click on service part number to edit. + <TABLE BORDER> + <TR> + <TH>Part #</TH> + <TH>Service</TH> + <TH>Table</TH> + <TH>Field</TH> + <TH>Action</TH> + <TH>Value</TH> + </TR> +END + +my($part_svc); +foreach $part_svc ( sort { + $a->getfield('svcpart') <=> $b->getfield('svcpart') +} qsearch('part_svc',{}) ) { + my($hashref)=$part_svc->hashref; + my($svcdb)=$hashref->{svcdb}; + my(@rows)= + grep $hashref->{${svcdb}.'__'.$_.'_flag'}, + map { /^${svcdb}__(.*)$/; $1 } + grep ! /_flag$/, + grep /^${svcdb}__/, + fields('part_svc') + ; + my($rowspan)=scalar(@rows); + print <<END; + <TR> + <TD ROWSPAN=$rowspan><A HREF="../edit/part_svc.cgi?$hashref->{svcpart}"> + $hashref->{svcpart} + </A></TD> + <TD ROWSPAN=$rowspan>$hashref->{svc}</TD> + <TD ROWSPAN=$rowspan>$hashref->{svcdb}</TD> +END + my($row); + foreach $row ( @rows ) { + my($flag)=$part_svc->getfield($svcdb.'__'.$row.'_flag'); + print "<TD>$row</TD><TD>"; + if ( $flag eq "D" ) { print "Default"; } + elsif ( $flag eq "F" ) { print "Fixed"; } + else { print "(Unknown!)"; } + print "</TD><TD>",$part_svc->getfield($svcdb."__".$row),"</TD></TR><TR>"; + } +print "</TR>"; +} + +print <<END; + </TABLE> + </CENTER> + </BODY> +</HTML> +END + |