From c897c77b266638cd2e17ba09f5708f6be4fb03bd Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Tue, 18 May 2021 16:15:53 +0100 Subject: [PATCH] Bug 28373: Convert printreceipt to use GetPreparedLetter This patch converts the point of sale receipt printer controller to using GetPreparedLetter instead of calling getletter directly. Test plan 1/ Try printing a point of sale receipt before and after applying the patch 2/ No change should result. https://bugs.koha-community.org/show_bug.cgi?id=28374 --- .../prog/en/modules/pos/printreceipt.tt | 19 +++++++++--- pos/printreceipt.pl | 30 ++++++++++++------- 2 files changed, 35 insertions(+), 14 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/pos/printreceipt.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/pos/printreceipt.tt index 4aa936de8e..f0f7180be4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/pos/printreceipt.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/pos/printreceipt.tt @@ -1,14 +1,15 @@ [% USE raw %] [% USE Asset %] [% USE Koha %] -[% USE KohaDates %] -[% USE Branches %] -[% USE Price %] [% SET footerjs = 1 %] [% INCLUDE 'doc-head-open.inc' %] Print receipt [% INCLUDE 'doc-head-close.inc' %] + + + + [% Asset.css("css/printreceiptinvoice.css") | $raw %] [% INCLUDE 'blocking_errors.inc' %] @@ -16,7 +17,17 @@
- [% letter.content | $raw | evaltt %] + [% IF slip %] + [% IF plain %] +
+      [% slip | html %]
+    
+ [% ELSE %] + [% slip | $raw %] + [% END %] + [% ELSE %] + No print template found + [% END %]
[% MACRO jsinclude BLOCK %] diff --git a/pos/printreceipt.pl b/pos/printreceipt.pl index 8f18f6bc6b..ae65281029 100755 --- a/pos/printreceipt.pl +++ b/pos/printreceipt.pl @@ -30,9 +30,9 @@ my $input = CGI->new; my ( $template, $loggedinuser, $cookie ) = get_template_and_user( { - template_name => "pos/printreceipt.tt", - query => $input, - type => "intranet", + template_name => "pos/printreceipt.tt", + query => $input, + type => "intranet", } ); @@ -52,15 +52,25 @@ output_and_exit_if_error( ) if $patron; # Payment could have been anonymous my $lang = $patron ? $patron->lang : $template->lang; -my $letter = C4::Letters::getletter( 'pos', 'RECEIPT', - C4::Context::mybranch, 'print', $lang ); +my $letter = C4::Letters::GetPreparedLetter( + module => 'pos', + letter_code => 'RECEIPT', + branchcode => C4::Context::mybranch, + message_transport_type => 'print', + lang => $lang, + tables => { + credits => $payment_id, + borrowers => $patron ? $patron->borrowernumber : undef + }, + substitute => { + tendered => scalar $input->param('tendered'), + change => scalar $input->param('change') + } +); $template->param( - letter => $letter, - payment => $payment, - - tendered => scalar $input->param('tendered'), - change => scalar $input->param('change') + slip => $letter->{content}, + plain => !$letter->{is_html} ); output_html_with_http_headers $input, $cookie, $template->output; -- 2.20.1