Summary: | Overdue notices: wrong encoding in e-mail in 'print' mode | ||
---|---|---|---|
Product: | Koha | Reporter: | Petr Svoboda <svoboda> |
Component: | Notices | Assignee: | Petr Svoboda <svoboda> |
Status: | RESOLVED FIXED | QA Contact: | Testopia <testopia> |
Severity: | normal | ||
Priority: | P5 - low | CC: | black23, fridolin.somers, m.de.rooy, tomascohen |
Version: | Main | ||
Hardware: | All | ||
OS: | All | ||
Change sponsored?: | --- | Patch complexity: | Trivial patch |
Documentation contact: | Documentation submission: | ||
Text to go in the release notes: | Version(s) released in: |
23.11.00,23.05.04,22.11.10
|
|
Circulation function: | |||
Attachments: |
PATCH - Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode
Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode Overdue notice - wrong coding in outlook in czech e-mail in “print” mode Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode |
Description
Petr Svoboda
2023-08-21 15:04:49 UTC
Created attachment 154695 [details] [review] PATCH - Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode Created attachment 154696 [details] [review] Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode Created attachment 154704 [details] [review] Overdue notice - wrong coding in outlook in czech e-mail in “print” mode Subject line: Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode Bug/feature description: Koha overdue notice “print” email in Outlook is incorrectly encoded in czech language. Tested in KohaTestingDocker - https://gitlab.com/koha-community/koha-testing-docker This patch fixes that error. Test plan: Overdue notice, set print in UI, https://snipboard.io/FLkIxf.jpg. Message body: <table style="padding:0; margin: 0; border-collapse: collapse; font-family: 'Trebuchet MS', Helvetica, sans-serif; width: 100%; "><tr><td style="vertical-align: top; padding: 0"> </td><td style="width: 75mm; vertical-align: top;"><table style="margin-top: 2.5cm; font-size: 11pt;"><tr><td><<borrowers.cardnumber>></td></tr><tr><td><<borrowers.firstname>> <<borrowers.surname>></td></tr><tr><td><<borrowers.address>> <<borrowers.streetnumber>></td></tr><tr><td><<borrowers.city>></td></tr><tr><td><<borrowers.zipcode>></td></tr></table></td></tr><tr><td colspan="2" style="padding: 0;"><table style="width: 100%; margin: 3cm 0 0 0;"><tr><td style="width: 5mm; height: 5mm; border-bottom: 1px dotted #000;"> </td><td style="height: 1mm;"></td><td style="width: 5mm; height: 1mm; border-bottom: 1px dotted #000;"> </td></tr></table></td></tr><tr><td colspan="2"><table><tr><td style="padding: 0.5cm 0.3cm">V Chrudimi dne <<today>></td></tr><tr><td style="padding: 0 0.3cm">Upozorňujeme Vás, že byla již o 30 dnů překročena doba, na kterou jsme Vám půjčili dokumenty (celkem<<count>>). Žádáme Vás o brzké vrácení těchto výpůjček:</td></tr><tr><td style="padding: 0.5cm 0.3cm;"><table><tr><th>Od</th><th>Do</th><th>Název</th><th>Autor</th><th>Částka</th></tr><item><tr><td><<issues.issuedate>></td><td><strong><<issues.date_due>></strong></td><td><<biblio.title>></td><td><<biblio.author>></td><td><<items.fine>> Kč</td></tr></item></table></td></tr><tr><td style="padding: 0 0.3cm">Zpozdné je účtováno dle ceníku knihovny.</td></tr><tr><td style="padding: 0 0.3cm">Dokumenty můžete vrátit na jakémkoli oddělení knihovny a pobočce v jejich provozní době.</td></tr><tr><td style="padding: 0 0.3cm">Nesplní-li čtenář svou povinnost vyrovnat závazky s knihovou, má knihovna právo postupovat podle příslušných ustanovení občanského zákoníku.</td></tr></table></td></tr></table> Set delay 1 day, https://snipboard.io/boAd3F.jpg. Checkout any book. Set in database issues->date_due = today() - 1 for checkouted book, https://snipboard.io/PrylGB.jpg. Run this scripts: koha-shell kohadev -c "/kohadevbox/koha/misc/cronjobs/overdue_notices.pl -v -t" You must have KOHA set up for sending e-mails (SMTP server). Replace xxx@email.cz to your e-mail and run this script: koha-shell kohadev -c "/kohadevbox/koha/misc/cronjobs/gather_print_notices.pl /var/spool/koha/kohadev/ --email xxx@email.cz" Signed-off-by: Michal Denar <black23@gmail.com> Signed-off-by: Michal Denar <black23@gmail.com> I updated the bug description to be a bit more general since this should apply to other languages and mail clients too. Processing additional checks * Commit title does not start with 'Bug XXXXX: ' - c044a4fccf * Signed-off-by line 'Signed-off-by:' seems invalid Tomas: I am kind of surprised that we should pass this flag to Koha::Email. Advertizing: The encoding defaults to utf-8. It can be set as part of the body_params hashref. See I<Email::Stuffer> and I<Email::MIME> for more details on the available options. git grep attach_file misc/cronjobs/gather_print_notices.pl: $email->attach_file( It is the only call in the codebase Created attachment 155069 [details] [review] Bug 34583: Overdue notice - wrong coding in outlook in czech e-mail in “print” mode Koha overdue notice “print” email in Outlook is incorrectly encoded in czech language. Tested in KohaTestingDocker - https://gitlab.com/koha-community/koha-testing-docker This patch fixes that error. Test plan: Overdue notice, set print in UI, https://snipboard.io/FLkIxf.jpg. Message body: <table style="padding:0; margin: 0; border-collapse: collapse; font-family: 'Trebuchet MS', Helvetica, sans-serif; width: 100%; "><tr><td style="vertical-align: top; padding: 0"> </td><td style="width: 75mm; vertical-align: top;"><table style="margin-top: 2.5cm; font-size: 11pt;"><tr><td><<borrowers.cardnumber>></td></tr><tr><td><<borrowers.firstname>> <<borrowers.surname>></td></tr><tr><td><<borrowers.address>> <<borrowers.streetnumber>></td></tr><tr><td><<borrowers.city>></td></tr><tr><td><<borrowers.zipcode>></td></tr></table></td></tr><tr><td colspan="2" style="padding: 0;"><table style="width: 100%; margin: 3cm 0 0 0;"><tr><td style="width: 5mm; height: 5mm; border-bottom: 1px dotted #000;"> </td><td style="height: 1mm;"></td><td style="width: 5mm; height: 1mm; border-bottom: 1px dotted #000;"> </td></tr></table></td></tr><tr><td colspan="2"><table><tr><td style="padding: 0.5cm 0.3cm">V Chrudimi dne <<today>></td></tr><tr><td style="padding: 0 0.3cm">Upozorňujeme Vás, že byla již o 30 dnů překročena doba, na kterou jsme Vám půjčili dokumenty (celkem<<count>>). Žádáme Vás o brzké vrácení těchto výpůjček:</td></tr><tr><td style="padding: 0.5cm 0.3cm;"><table><tr><th>Od</th><th>Do</th><th>Název</th><th>Autor</th><th>Částka</th></tr><item><tr><td><<issues.issuedate>></td><td><strong><<issues.date_due>></strong></td><td><<biblio.title>></td><td><<biblio.author>></td><td><<items.fine>> Kč</td></tr></item></table></td></tr><tr><td style="padding: 0 0.3cm">Zpozdné je účtováno dle ceníku knihovny.</td></tr><tr><td style="padding: 0 0.3cm">Dokumenty můžete vrátit na jakémkoli oddělení knihovny a pobočce v jejich provozní době.</td></tr><tr><td style="padding: 0 0.3cm">Nesplní-li čtenář svou povinnost vyrovnat závazky s knihovou, má knihovna právo postupovat podle příslušných ustanovení občanského zákoníku.</td></tr></table></td></tr></table> Set delay 1 day, https://snipboard.io/boAd3F.jpg. Checkout any book. Set in database issues->date_due = today() - 1 for checkouted book, https://snipboard.io/PrylGB.jpg. Run this scripts: koha-shell kohadev -c "/kohadevbox/koha/misc/cronjobs/overdue_notices.pl -v -t" You must have KOHA set up for sending e-mails (SMTP server). Replace xxx@email.cz to your e-mail and run this script: koha-shell kohadev -c "/kohadevbox/koha/misc/cronjobs/gather_print_notices.pl /var/spool/koha/kohadev/ --email xxx@email.cz" Signed-off-by: Michal Denar <black23@gmail.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Pushed to master for 23.11. Nice work everyone, thanks! Pushed to 23.05.x for 23.05.04 Nice work everyone! Pushed to oldstable for 22.11.x |