Bug 17981: Add a 'letter' param to GetPreparedLetter
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Tue, 24 Jan 2017 10:18:46 +0000 (11:18 +0100)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Thu, 12 Apr 2018 13:51:50 +0000 (10:51 -0300)
This will allow us to call GetPreparedLetter with a letter content that
does not exist in the DB

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
C4/Letters.pm

index d4664d0..79eae47 100644 (file)
@@ -688,18 +688,22 @@ sub SendAlerts {
 sub GetPreparedLetter {
     my %params = @_;
 
 sub GetPreparedLetter {
     my %params = @_;
 
-    my $module      = $params{module} or croak "No module";
-    my $letter_code = $params{letter_code} or croak "No letter_code";
-    my $branchcode  = $params{branchcode} || '';
-    my $mtt         = $params{message_transport_type} || 'email';
-    my $lang        = $params{lang} || 'default';
-
-    my $letter = getletter( $module, $letter_code, $branchcode, $mtt, $lang );
+    my $letter = $params{letter};
 
     unless ( $letter ) {
 
     unless ( $letter ) {
-        $letter = getletter( $module, $letter_code, $branchcode, $mtt, 'default' )
-            or warn( "No $module $letter_code letter transported by " . $mtt ),
-               return;
+        my $module      = $params{module} or croak "No module";
+        my $letter_code = $params{letter_code} or croak "No letter_code";
+        my $branchcode  = $params{branchcode} || '';
+        my $mtt         = $params{message_transport_type} || 'email';
+        my $lang        = $params{lang} || 'default';
+
+        $letter = getletter( $module, $letter_code, $branchcode, $mtt, $lang );
+
+        unless ( $letter ) {
+            $letter = getletter( $module, $letter_code, $branchcode, $mtt, 'default' )
+                or warn( "No $module $letter_code letter transported by " . $mtt ),
+                    return;
+        }
     }
 
     my $tables = $params{tables} || {};
     }
 
     my $tables = $params{tables} || {};