From 0fdf90a9f14f00f33ba8232367bd422e3c5ffc24 Mon Sep 17 00:00:00 2001 From: Julian Maurice Date: Wed, 5 Feb 2020 12:20:37 +0100 Subject: [PATCH] Bug 24591: Add developer script to preview a letter The script is very simple, it just calls GetPreparedLetter with arguments given on command line and print the resulting letter content Usage example: misc/devel/get-prepared-letter.pl --module circulation \ --letter_code ODUE --tables '{"borrowers":1,"branches":"CPL"}' \ --repeat '{"item":[{"biblio":1,"items":1}]}' \ --loops '{"overdues":[1]}' --- misc/devel/get-prepared-letter.pl | 39 +++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100755 misc/devel/get-prepared-letter.pl diff --git a/misc/devel/get-prepared-letter.pl b/misc/devel/get-prepared-letter.pl new file mode 100755 index 0000000000..db92f3300f --- /dev/null +++ b/misc/devel/get-prepared-letter.pl @@ -0,0 +1,39 @@ +#!/usr/bin/perl + +use Modern::Perl; + +use Getopt::Long; +use JSON; + +use C4::Letters; + +my ($module, $letter_code, $branchcode, $message_transport_type, $lang, $repeat, $tables, $loops); + +GetOptions( + 'module=s' => \$module, + 'letter-code=s' => \$letter_code, + 'branchcode=s' => \$branchcode, + 'message-transport-type=s' => \$message_transport_type, + 'lang=s' => \$lang, + 'repeat=s' => \$repeat, + 'tables=s' => \$tables, + 'loops=s' => \$loops, +) or die "Error in command line arguments\n"; + +$repeat = $repeat ? decode_json($repeat) : {}; +$tables = $tables ? decode_json($tables) : {}; +$loops = $loops ? decode_json($loops) : {}; + +my $letter = C4::Letters::GetPreparedLetter( + module => $module, + letter_code => $letter_code, + branchcode => $branchcode, + message_transport_type => $message_transport_type, + lang => $lang, + repeat => $repeat, + tables => $tables, + loops => $loops, +); + +print "Subject: " . $letter->{title} . "\n\n"; +print $letter->{content} . "\n"; -- 2.20.1