combine ticket notification scrips, #15353
[freeside.git] / httemplate / search / cust_main-zip.html
index 333a1e0..e87b214 100644 (file)
@@ -1,4 +1,17 @@
-<%
+<% include( 'elements/search.html',
+                 'title'       => 'Zip code Search Results',
+                 'name'        => 'zip codes',
+                 'query'       => $sql_query,
+                 'count_query' => $count_sql,
+                 'header'      => [ 'Zip code', 'Customers', ],
+                 #'fields'      => [ 'zip', 'num_cust', ],
+                 'links'       => [ '', sub { 'somewhere'; }  ],
+             )
+%>
+<%init>
+
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('List zip codes');
 
 # XXX link to customers
 
@@ -19,6 +32,17 @@ if ( $cgi->param('agentnum') =~ /^(\d+)$/ ) {
   $agentnum = $1;
   push @where, "cust_main.agentnum = $agentnum";
 }
+
+# select svcdb
+
+if ( $cgi->param('svcdb') =~ /^(\w+)$/ ) {
+  my $svcdb = $1;
+  push @where, "EXISTS( SELECT 1 FROM $svcdb LEFT JOIN cust_svc USING ( svcnum )
+                                             LEFT JOIN cust_pkg USING ( pkgnum )
+                          WHERE cust_pkg.custnum = cust_main.custnum
+                      )";
+}
+
 my $where = scalar(@where) ? 'WHERE '. join(' AND ', @where) : '';
 
 # bill zip vs ship zip
@@ -83,13 +107,4 @@ my $count_sql = "select count(distinct $czip) from cust_main $where";
 
 # XXX should link...
 
-%><%= include( 'elements/search.html',
-                 'title'       => 'Zip code Search Results',
-                 'name'        => 'zip codes',
-                 'query'       => $sql_query,
-                 'count_query' => $count_sql,
-                 'header'      => [ 'Zip code', 'Customers', ],
-                 #'fields'      => [ 'zip', 'num_cust', ],
-                 'links'       => [ '', sub { 'somewhere'; }  ],
-             )
-%>
+</%init>