[freeside-commits] branch master updated. 3f11e4f54ca1ab9506884c32fc5f5dfb07db26f4

Mark Wells mark at 420.am
Tue Jun 30 12:38:59 PDT 2015


The branch, master has been updated
       via  3f11e4f54ca1ab9506884c32fc5f5dfb07db26f4 (commit)
      from  39501b4ff6c6cd9ac3cfe7ad313affe049e18994 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 3f11e4f54ca1ab9506884c32fc5f5dfb07db26f4
Author: Mark Wells <mark at freeside.biz>
Date:   Tue Jun 30 12:38:28 2015 -0700

    add a useful debugging tool

diff --git a/httemplate/view/cust_bill-tex.cgi b/httemplate/view/cust_bill-tex.cgi
new file mode 100755
index 0000000..8133769
--- /dev/null
+++ b/httemplate/view/cust_bill-tex.cgi
@@ -0,0 +1,51 @@
+<% $tex %>
+<%init>
+
+use File::Slurp 'slurp';
+
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('View invoices');
+
+my( $invnum, $mode, $template, $notice_name );
+my($query) = $cgi->keywords;
+if ( $query =~ /^((.+)-)?(\d+)(.pdf)?$/ ) { #probably not necessary anymore?
+  $template = $2;
+  $invnum = $3;
+  $notice_name = 'Invoice';
+} else {
+  $invnum = $cgi->param('invnum');
+  $invnum =~ s/\.pdf//i; #probably not necessary anymore
+  $template = $cgi->param('template');
+  $notice_name = ( $cgi->param('notice_name') || 'Invoice' );
+  $mode = $cgi->param('mode');
+}
+
+my $conf = new FS::Conf;
+
+my %opt = (
+  'unsquelch_cdr' => $conf->exists('voip-cdr_email'),
+  'template'      => $template,
+  'notice_name'   => $notice_name,
+  'no_coupon'     => ($cgi->param('no_coupon') || 0)
+);
+
+my $cust_bill = qsearchs({
+  'select'    => 'cust_bill.*',
+  'table'     => 'cust_bill',
+  'addl_from' => 'LEFT JOIN cust_main USING ( custnum )',
+  'hashref'   => { 'invnum' => $invnum },
+  'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
+});
+die "Invoice #$invnum not found!" unless $cust_bill;
+
+$cust_bill->set(mode => $mode);
+
+my ($file) = $cust_bill->print_latex(\%opt);
+my $tex = slurp("$file.tex");
+
+http_header('Content-Type' => 'text/plain' );
+http_header('Content-Disposition' => "filename=$invnum.tex" );
+http_header('Content-Length' => length($tex) );
+http_header('Cache-control' => 'max-age=60' );
+
+</%init>

-----------------------------------------------------------------------

Summary of changes:
 .../cust_bill-typeset => cust_bill-tex.cgi}        |   24 ++++++++------------
 1 file changed, 10 insertions(+), 14 deletions(-)
 copy httemplate/view/{elements/cust_bill-typeset => cust_bill-tex.cgi} (71%)
 mode change 100644 => 100755




More information about the freeside-commits mailing list