3 my $conf = new FS::Conf;
5 my($query)=$cgi->keywords;
6 $query ||= ''; #to avoid use of unitialized value errors
13 if ( $query =~ /^UN_(.*)$/ ) {
15 $cjoin = 'LEFT JOIN cust_svc USING ( svcnum )';
16 push @extra_sql, 'pkgnum IS NULL';
19 if ( $query eq 'svcnum' ) {
20 $orderby = 'ORDER BY svcnum';
22 eidiot('unimplemented');
27 ? ' WHERE '. join(' AND ', @extra_sql )
30 my $count_query = "SELECT COUNT(*) FROM svc_forward $cjoin $extra_sql";
32 'table' => 'svc_forward',
34 'select' => join(', ',
37 FS::UI::Web::cust_sql_fields(),
39 'extra_sql' => "$extra_sql $orderby",
40 'addl_from' => ' LEFT JOIN cust_svc USING ( svcnum ) '.
41 ' LEFT JOIN part_svc USING ( svcpart ) '.
42 ' LEFT JOIN cust_pkg USING ( pkgnum ) '.
43 ' LEFT JOIN cust_main USING ( custnum ) ',
46 # <TH>Service #<BR><FONT SIZE=-1>(click to view forward)</FONT></TH>
47 # <TH>Mail to<BR><FONT SIZE=-1>(click to view account)</FONT></TH>
48 # <TH>Forwards to<BR><FONT SIZE=-1>(click to view account)</FONT></TH>
50 my $link = [ "${p}view/svc_forward.cgi?", 'svcnum' ];
52 my $format_src = sub {
53 my $svc_forward = shift;
54 if ( $svc_forward->srcsvc_acct ) {
55 $svc_forward->srcsvc_acct->email;
57 my $src = $svc_forward->src;
58 $src = "<I>(anything)</I>$src" if $src =~ /^@/;
64 my $svc_forward = shift;
65 if ( $svc_forward->srcsvc_acct ) {
66 [ "${p}view/svc_acct.cgi?", 'srcsvc' ];
72 my $format_dst = sub {
73 my $svc_forward = shift;
74 if ( $svc_forward->dstsvc_acct ) {
75 $svc_forward->dstsvc_acct->email;
82 my $svc_forward = shift;
83 if ( $svc_forward->dstsvc_acct ) {
84 [ "${p}view/svc_acct.cgi?", 'dstsvc' ];
90 #smaller false laziness w/svc_*.cgi here
93 $svc_x->custnum ? [ "${p}view/cust_main.cgi?", 'custnum' ] : '';
96 %><%= include( 'elements/search.html',
97 'title' => "Mail forward Search Results",
98 'name' => 'mail forwards',
99 'query' => $sql_query,
100 'count_query' => $count_query,
105 FS::UI::Web::cust_header(),
107 'fields' => [ 'svcnum',
110 \&FS::UI::Web::cust_fields,
116 FS::UI::Web::cust_header()