$args{'from'} =~ /\@([\w\.\-]+)/ or $1 = 'example.com';
my $content_id = join('.', rand()*(2**32), $$, time). "\@$1";
+ my $path = "$FS::UID::conf_dir/conf.$FS::UID::datasrc";
+ my $file;
+ if ( [ -e "$path/logo_". $args{'_template'}. ".png" ] ) {
+ $file = "$path/logo_". $args{'_template'}. ".png";
+ } else {
+ $file = "$path/logo.png";
+ }
+
my $image = build MIME::Entity
'Type' => 'image/png',
'Encoding' => 'base64',
- 'Path' => "$FS::UID::conf_dir/conf.$FS::UID::datasrc/logo.png",
+ 'Path' => $file,
'Filename' => 'logo.png',
'Content-ID' => "<$content_id>",
;
'terms' => $conf->config('invoice_default_terms')
|| 'Payable upon receipt',
'cid' => $cid,
+ 'template' => $template,
# 'conf_dir' => "$FS::UID::conf_dir/conf.$FS::UID::datasrc",
);
<table class="invoice_header" width="100%">
<tr>
- <td><img src="<%= $cid ? "cid:$cid" : 'cust_bill-logo.cgi' %>"></td>
+ <td><img src="<%= $cid ? "cid:$cid" : "cust_bill-logo.cgi?$template" %>"></td>
<td align="left"><%= $returnaddress %></td>
<td align="right">
<table CLASS="invoice_headerright" cellspacing=0>
<%
-##untaint invnum
-#my($query) = $cgi->keywords;
-#$query =~ /^((.+)-)?(\d+)$/;
-#my $templatename = $2;
-#my $invnum = $3;
-
-my $templatename = '';
+my($query) = $cgi->keywords;
+$query =~ /^([^\.\/]*)$/;
+my $templatename = $1;
+$templatename = "_$templatename" if $templatename;
my $conf = new FS::Conf;
http_header('Content-Type' => 'image/png' );