From 0d88550934e2f46be8a1b5cdbbf4b570ecd25c06 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 | 55 +++++++++++++++++++++++++++++++ 1 file changed, 55 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..30150162e4 --- /dev/null +++ b/misc/devel/get-prepared-letter.pl @@ -0,0 +1,55 @@ +#!/usr/bin/perl + +# Copyright 2020 BibLibre +# +# This file is part of Koha. +# +# Koha is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 3 of the License, or (at your option) any later +# version. +# +# Koha is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with Koha; if not, see . + +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