% 
my %search;
if ( $cgi->param('showdisabled') ) {
  %search = ();
} else {
  %search = ( 'disabled' => '' );
}
my @part_svc =
  sort { $a->getfield('svcpart') <=> $b->getfield('svcpart') }
    qsearch('part_svc', \%search );
my $total = scalar(@part_svc);
%>
<%= header('Service Definition Listing', menubar( 'Main Menu' => $p) ) %>
    Service definitions are the templates for items you offer to your customers.
<%= $total %> service definitions
<%= $cgi->param('showdisabled')
      ? do { $cgi->param('showdisabled', 0);
             '( hide disabled services )'; }
      : do { $cgi->param('showdisabled', 1);
             '( show disabled services )'; }
%>
<%= table() %>
  
    | param('showdisabled') ? 2 : 3 %>>Service | 
    Table | 
    Export | 
    Field | 
    Modifier | 
  
<% foreach my $part_svc ( @part_svc ) {
     my $hashref = $part_svc->hashref;
     my $svcdb = $hashref->{svcdb};
     my $svc_x = "FS::$svcdb"->new( { svcpart => $part_svc->svcpart } );
     my @dfields = $svc_x->fields;
     push @dfields, 'usergroup' if $svcdb eq 'svc_acct'; #kludge
     my @fields =
       grep { $svc_x->pvf($_)
           or $_ ne 'svcnum' && $part_svc->part_svc_column($_)->columnflag }
            @dfields ;
     my $rowspan = scalar(@fields) || 1;
     my $url = "${p}edit/part_svc.cgi?$hashref->{svcpart}";
%>
  
    | >
      <%= $hashref->{svcpart} %> | 
<% unless ( $cgi->param('showdisabled') ) { %>
    >
      <%= $hashref->{disabled} ? 'DISABLED' : '' %> | 
<% } %>
    >
      <%= $hashref->{svc} %> | 
    >
      <%= $hashref->{svcdb} %> | 
    ><%= itable() %>
<%
#  my @part_export =
map { qsearchs('part_export', { exportnum => $_->exportnum } ) } qsearch('export_svc', { svcpart => $part_svc->svcpart } ) ;
  foreach my $part_export (
    map { qsearchs('part_export', { exportnum => $_->exportnum } ) } 
      qsearch('export_svc', { svcpart => $part_svc->svcpart } )
  ) {
%>
       | 
        | <%= $part_export->exportnum %>: <%= $part_export->exporttype %> to <%= $part_export->machine %> | 
<%  } %>
      
<%   my($n1)='';
     foreach my $field ( @fields ) {
       my $flag = $part_svc->part_svc_column($field)->columnflag;
%>
     <%= $n1 %><%= $field %> | 
<%     if ( $flag eq "D" ) { print "Default"; }
         elsif ( $flag eq "F" ) { print "Fixed"; }
         elsif ( not $flag ) { }
         else { print "(Unknown!)"; }
%>
        | <%= $part_svc->part_svc_column($field)->columnvalue%> | 
<%     $n1="";
     }
%>
  
<% } %>