diff options
author | levinse <levinse> | 2010-12-07 19:04:43 +0000 |
---|---|---|
committer | levinse <levinse> | 2010-12-07 19:04:43 +0000 |
commit | c58774a70c3326ad2ba5a7a38b174dfbd76a9f78 (patch) | |
tree | 0f07d6ce6fd140ea0985c5d066a8d620d13846dc /httemplate/search | |
parent | 663b89d06a2c97fb0e7915ba409310fbefefea98 (diff) |
-small svc_dsl UI and flow changes, RT7111
-finish basic qualifications, except prospect support, RT7111
Diffstat (limited to 'httemplate/search')
-rwxr-xr-x | httemplate/search/qual.cgi | 78 |
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> |