X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fview%2Fcust_bill-logo.cgi;h=85b5d720f00a8d0fd2d8d85035fff4601c9f098d;hp=ad2ff5430937d586e041e487e2c3ebbb7e5d5caa;hb=7ecaf988ed810746534bf85abde34022f2b5d6b2;hpb=0fb307c305e4bc2c9c27dc25a3308beae3a4d33c diff --git a/httemplate/view/cust_bill-logo.cgi b/httemplate/view/cust_bill-logo.cgi index ad2ff5430..85b5d720f 100755 --- a/httemplate/view/cust_bill-logo.cgi +++ b/httemplate/view/cust_bill-logo.cgi @@ -3,18 +3,30 @@ die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('View invoices') + or $FS::CurrentUser::CurrentUser->access_right('View quotations') or $FS::CurrentUser::CurrentUser->access_right('Configuration'); -my $conf = new FS::Conf; +my $conf; my $templatename; my $agentnum = ''; -if ( $cgi->param('invnum') ) { +if ( $cgi->param('invnum') =~ /^(\d+)$/ ) { + my $invnum = $1; $templatename = $cgi->param('template') || $cgi->param('templatename'); - my $cust_bill = qsearchs('cust_bill', { 'invnum' => $cgi->param('invnum') } ) - or die 'unknown invnum'; + my $cust_bill = FS::cust_bill->by_key($invnum) + || FS::cust_bill_void->by_key($invnum) + || die 'unknown invnum'; + $conf = $cust_bill->conf; $agentnum = $cust_bill->cust_main->agentnum; +} elsif ( $cgi->param('quotationnum') =~ /^(\d+)$/ ) { + my $quotationnum = $1; + my $quotation = FS::quotation->by_key($quotationnum) + or die 'unknown quotationnum'; + $conf = $quotation->conf; + $agentnum = $quotation->agentnum; } else { + # assume the default config + $conf = FS::Conf->new; my($query) = $cgi->keywords; $query =~ /^([^\.\/]*)$/ or die 'illegal query'; $templatename = $1;