From 74b5baafc4b984764ad6c9111e5dbddb38c542d8 Mon Sep 17 00:00:00 2001 From: The Minh Luong Date: Tue, 8 Feb 2022 17:22:30 -0500 Subject: [PATCH] Bug 28556: Guarantor's information is available in notice This patch adds the guarantor's information when sending sending overdue notice. To test: 1. Make sure that there is an overdue letter. a) Go in Tools/Notices & Slips. b) Search for the code "ODUE" and note the "Name" of the letter. c) Click on "Edit". d) Click on "Email" and make sure that there is text inside the box. e) Add the following code in the textbox: C/O <> <>
f) Click on "Save". 2. Set up the status trigger. a) Go in Tools/Overdue notice/status triggers. b) In "First" tab, put a number of days in the "Delay" column (ex: 1). c) In the column "Letter", put the "Name" of the letter of step 1a) . d) Check "Email". e) Click "Save". 3. Create a patron with a guarantor. a) Go in Administration/Patron categories. b) Create a child category AND a adult category. c) Create an adult patron. d) Create a child patron. e) Go in the child patron's page and click "Edit". f) In the "Patron guarantor" section, click add guarantor. g) Search for your adult patron and click "Select". h) Select a relationship for the guarantor (ex: Mother). i) Click on "Save". 4. Borrow an overdue item. a) Click on the arrow next to "Search button" (Top of the screen). b) Click on "Items search". c) Click on search. d) Copy a barcode in the list. e) Search for your child patron. f) Go in his page and click on "Checkout". g) Paste the barcode copied at step 4d) . h) Click on "Checkout settings". i) Put a date in the past greater than the number of days that you put on step 2b). j) Click on "Check out". k) Click on "Yes" Notice tht there is a message saying that Patron has ITEMS OVERDUE. 5. Test the patch. a) In the terminal, run ./misc/cronjobs/overdue_notices.pl b) Return in your child patron's page. c) Click on "Notice" and you should see a letter. d) Click on the letter to see the content. c) Notice that you can't see the guarantor's informations (Adult patron). d) Apply the patch. e) Reapeat steps a) to d) f) Notice that you can see the guarantor's informations. NOTE: If you want to delete the letters, do in your terminal: - my - delete from message_queue; --- C4/Letters.pm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/C4/Letters.pm b/C4/Letters.pm index c36553ac9a..21c4273b25 100644 --- a/C4/Letters.pm +++ b/C4/Letters.pm @@ -693,6 +693,13 @@ sub GetPreparedLetter { } } + my $patron = Koha::Patrons->find($tables->{borrowers}); + my @guarantors; + if ( $patron->guarantor_relationships->count ) { + @guarantors = $patron->guarantor_relationships->guarantors; + } + my $guarantor = $guarantors[0]; + $$tables{guarantor}=$guarantor->unblessed; if (%$tables) { _substitute_tables( $letter, $tables ); } -- 2.25.1