$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>",
;
'plan' => 'send_agent',
'plandata' => { 'op' => '~',
'value' => "(^|\n)agentnum ".
+ '([0-9]*, )*'.
$self->cust_main->agentnum.
+ '(, [0-9]*)*'.
"(\n|\$)",
},
},
}
my $returnaddress;
- if ( length($conf->config_orbase('invoice_latexreturnaddress', $template) ) {
+ if ( length($conf->config_orbase('invoice_latexreturnaddress', $template)) ) {
$returnaddress = join("\n",
$conf->config_orbase('invoice_latexreturnaddress', $template)
);
'city' => _latex_escape($cust_main->city),
'state' => _latex_escape($cust_main->state),
'zip' => _latex_escape($cust_main->zip),
- 'footer' => join("\n", $conf->config('invoice_latexfooter') ),
- 'smallfooter' => join("\n", $conf->config('invoice_latexsmallfooter') ),
+ 'footer' => join("\n", $conf->config_orbase('invoice_latexfooter', $template) ),
+ 'smallfooter' => join("\n", $conf->config_orbase('invoice_latexsmallfooter', $template) ),
'returnaddress' => $returnaddress,
'quantity' => 1,
'terms' => $conf->config('invoice_default_terms') || 'Payable upon receipt',
'terms' => $conf->config('invoice_default_terms')
|| 'Payable upon receipt',
'cid' => $cid,
+ 'template' => $template,
# 'conf_dir' => "$FS::UID::conf_dir/conf.$FS::UID::datasrc",
);
# $conf->config_orbase('invoice_latexnotes', $suffix)
# );
- $invoice_data{'footer'} = $conf->exists('invoice_htmlfooter')
- ? join("\n", $conf->config('invoice_htmlfooter') )
- : join("\n", map { s/~/ /g; s/\\\\\*?\s*$/<BR>/; $_; }
- $conf->config('invoice_latexfooter')
- );
+ $invoice_data{'footer'} =
+ length($conf->config_orbase('invoice_htmlfooter', $template))
+ ? join("\n", $conf->config_orbase('invoice_htmlfooter', $template) )
+ : join("\n", map { s/~/ /g; s/\\\\\*?\s*$/<BR>/; $_; }
+ $conf->config_orbase('invoice_latexfooter', $template)
+ );
$invoice_data{'po_line'} =
( $cust_main->payby eq 'BILL' && $cust_main->payinfo )