summaryrefslogtreecommitdiff
path: root/httemplate/search
diff options
context:
space:
mode:
authorlevinse <levinse>2010-12-07 19:04:43 +0000
committerlevinse <levinse>2010-12-07 19:04:43 +0000
commitc58774a70c3326ad2ba5a7a38b174dfbd76a9f78 (patch)
tree0f07d6ce6fd140ea0985c5d066a8d620d13846dc /httemplate/search
parent663b89d06a2c97fb0e7915ba409310fbefefea98 (diff)
-small svc_dsl UI and flow changes, RT7111
-finish basic qualifications, except prospect support, RT7111
Diffstat (limited to 'httemplate/search')
-rwxr-xr-xhttemplate/search/qual.cgi78
1 files changed, 78 insertions, 0 deletions
diff --git a/httemplate/search/qual.cgi b/httemplate/search/qual.cgi
new file mode 100755
index 000000000..58e011406
--- /dev/null
+++ b/httemplate/search/qual.cgi
@@ -0,0 +1,78 @@
+<% include( 'elements/search.html',
+ 'title' => 'Qualifications',
+ 'name_singular' => 'qualification',
+ 'query' => { 'table' => 'qual',
+ 'hashref' => $hashref,
+ 'extra_sql' => $extra_sql,
+ 'order_by' => 'ORDER BY qualnum DESC',
+ },
+ 'count_query' => "$count_query $extra_sql",
+ 'header' => [ 'Qualification',
+ 'Status',
+ 'Customer or Prospect',
+ 'Service Telephone Number',
+ 'Address',
+ 'Qualified Using',
+ 'Vendor Qualification #',
+ ],
+ 'align' => 'rcccccc',
+ 'fields' => [ 'qualnum',
+ sub {
+ my $self = shift;
+ $self->status_long;
+ },
+ sub {
+ my $self = shift;
+ my $cust_or_prospect = $self->cust_or_prospect;
+ return $cust_or_prospect->name
+ if $cust_or_prospect->get('custnum');
+ return "Prospect #".$cust_or_prospect->prospectnum
+ if $cust_or_prospect->get('prospectnum');
+ '';
+ },
+ 'phonenum',
+ sub {
+ my $self = shift;
+ my %location_hash = $self->location;
+ # ugh...
+ if ( %location_hash ) {
+ my $loc = new FS::cust_location(\%location_hash);
+ return $loc->location_label;
+ }
+ '';
+ },
+ sub {
+ my $self = shift;
+ my $export = $self->export;
+ my $result = '(manual)';
+ $result = $export->exportname if $export;
+ $result;
+ },
+ 'vendor_qual_id',
+ ],
+ 'links' => [
+ [ "${p}view/qual.cgi?qualnum=", 'qualnum' ],
+ '',
+ '',
+ '',
+ '',
+ '',
+ '',
+ ],
+ )
+%>
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Qualify service');
+
+my $hashref = {};
+my $count_query = 'SELECT COUNT(*) FROM qual';
+
+my $extra_sql = '';
+if ( $cgi->param('custnum') && $cgi->param('custnum') =~ /^(\d+)$/ ) {
+ $extra_sql = " where custnum = $1 or locationnum in "
+ . " (select locationnum from cust_location where custnum = $1)";
+}
+
+</%init>