Bug 11248: fix encoding issue on emailing a list (INTRANET)
Test plan: - send a list via email with the english version. - translate templates and retry with another language. Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de> Sending an intranet list from translated templates requires a new list template for the intranet. I have added the needed changes in a follow-up. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com> (cherry picked from commit9181636874) Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> (cherry picked from commit5e1e2c2d18)
This commit is contained in:
parent
3c8be0709f
commit
80d7b61c14
|
|
@ -2,44 +2,165 @@
|
|||
Your List : [% shelfname %]
|
||||
<END_SUBJECT>
|
||||
|
||||
[% USE HtmlToText %]
|
||||
[% myhtml FILTER html2text(leftmargin => 0, rightmargin => 0) %]
|
||||
[% myhtmltext | html2text %]
|
||||
|
||||
<HEADER>
|
||||
Hi,
|
||||
[% FILTER html2text %]
|
||||
<p>Hi,</p>
|
||||
|
||||
Here is your list called [% shelfname %], sent from our online catalog.
|
||||
<p>Here is your list called [% shelfname %], sent from our online catalog.</p>
|
||||
|
||||
<p>Please note that the attached file is a MARC bibliographic records file
|
||||
which can be imported into a Personal Bibliographic Software like EndNote,
|
||||
Reference Manager or ProCite.</p>
|
||||
<hr/>
|
||||
[% END %]
|
||||
|
||||
Please note that the attached file is a MARC bibliographic records file
|
||||
which can be imported into a Personal Bibliographic Software like EndNote,
|
||||
Reference Manager or ProCite.
|
||||
<END_HEADER>
|
||||
|
||||
<MESSAGE>
|
||||
---------------------------------------------
|
||||
[% IF ( comment ) %]
|
||||
[% comment %]
|
||||
[% END %]
|
||||
[% FOREACH BIBLIO_RESULT IN BIBLIO_RESULTS %][% BIBLIO_RESULT.title %][% IF ( BIBLIO_RESULT.subtitle.size ) %] [% FOREACH subtitle IN BIBLIO_RESULT.subtitle %][% subtitle.subfield %][% END %][% END %][% IF ( BIBLIO_RESULT.author ) %]
|
||||
[% FILTER html2text %]
|
||||
|
||||
by [% BIBLIO_RESULT.author %][% END %]
|
||||
[% IF ( BIBLIO_RESULT.MARCAUTHORS.size ) %]
|
||||
Additional author(s): [% FOREACH MARCAUTHOR IN BIBLIO_RESULT.MARCAUTHORS %][% FOREACH MARCAUTHOR_SUBFIELDS_LOO IN MARCAUTHOR.MARCAUTHOR_SUBFIELDS_LOOP %][% MARCAUTHOR_SUBFIELDS_LOO.separator %] [% MARCAUTHOR_SUBFIELDS_LOO.value %][% END %][% UNLESS ( loop.last ) %];[% END %][% END %][% END %][% IF ( BIBLIO_RESULT.ISBN ) %]
|
||||
ISBN: [% BIBLIO_RESULT.ISBN %][% END %]
|
||||
[% IF ( BIBLIO_RESULT.publishercode ) %]Published by: [% BIBLIO_RESULT.publishercode %][% END %][% IF ( BIBLIO_RESULT.publicationyear ) %] in [% END %][% BIBLIO_RESULT.publicationyear %][% IF ( BIBLIO_RESULT.pages ) %], [% END %][% BIBLIO_RESULT.pages %][% IF ( BIBLIO_RESULT.size ) %], [% END %][% BIBLIO_RESULT.size %][% IF ( BIBLIO_RESULT.collection ) %]
|
||||
Collection: [% BIBLIO_RESULT.seriestitle %][% END %][% IF ( BIBLIO_RESULT.subject ) %]
|
||||
Subject: [% BIBLIO_RESULT.subject %][% END %][% IF ( BIBLIO_RESULT.copyrightdate ) %]
|
||||
Copyright year: [% BIBLIO_RESULT.copyrightdate %][% END %][% IF ( BIBLIO_RESULT.notes ) %]
|
||||
Notes : [% BIBLIO_RESULT.notes %][% END %][% IF ( BIBLIO_RESULT.unititle ) %]
|
||||
Unified title: [% BIBLIO_RESULT.unititle %][% END %][% IF ( BIBLIO_RESULT.serial ) %]
|
||||
Serial: [% BIBLIO_RESULT.serial %][% END %][% IF ( BIBLIO_RESULT.dewey ) %]
|
||||
Dewey: [% BIBLIO_RESULT.dewey %][% END %][% IF ( BIBLIO_RESULT.classification ) %]
|
||||
Classification: [% BIBLIO_RESULT.classification %][% END %][% IF ( BIBLIO_RESULT.lccn ) %]
|
||||
LCCN: [% BIBLIO_RESULT.lccn %][% END %][% IF ( BIBLIO_RESULT.url ) %]
|
||||
URL : [% BIBLIO_RESULT.url %][% END %][% IF ( OPACBaseURL ) %]
|
||||
In the online catalog:
|
||||
http://[% OPACBaseURL %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% BIBLIO_RESULT.biblionumber |url %][% END %]
|
||||
Items : [% FOREACH ITEM_RESULT IN BIBLIO_RESULT.ITEM_RESULTS %]
|
||||
[% ITEM_RESULT.branchname %] [% ITEM_RESULT.location %] [% IF ( ITEM_RESULT.itemcallnumber ) %]([% ITEM_RESULT.itemcallnumber %])[% END %] [% ITEM_RESULT.barcode %][% END %]
|
||||
[% IF comment %]
|
||||
<p>[% comment %]</p>
|
||||
<hr/>
|
||||
[% END %]
|
||||
<ol>
|
||||
[% FOREACH BIBLIO_RESULT IN BIBLIO_RESULTS %]
|
||||
<li>
|
||||
<span>
|
||||
[% BIBLIO_RESULT.title %]
|
||||
[% IF ( BIBLIO_RESULT.subtitle.size ) %]
|
||||
[% FOREACH subtitle IN BIBLIO_RESULT.subtitle %]
|
||||
[% subtitle.subfield %]
|
||||
[% END %]
|
||||
[% END %]
|
||||
</span>
|
||||
|
||||
---------------------------------------------
|
||||
<p>
|
||||
[% IF ( BIBLIO_RESULT.HASAUTHORS ) %]
|
||||
<span>Author(s): [% IF ( BIBLIO_RESULT.author ) %][% BIBLIO_RESULT.author %][% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.MARCAUTHORS ) %]
|
||||
[% IF ( BIBLIO_RESULT.author ) %]; [% END %]
|
||||
[% FOREACH MARCAUTHOR IN BIBLIO_RESULT.MARCAUTHORS %]
|
||||
[% FOREACH MARCAUTHOR_SUBFIELDS_LOO IN MARCAUTHOR.MARCAUTHOR_SUBFIELDS_LOOP %]
|
||||
[% MARCAUTHOR_SUBFIELDS_LOO.separator %][% MARCAUTHOR_SUBFIELDS_LOO.value %]
|
||||
[% END %]
|
||||
[% UNLESS ( loop.last ) %];[% END %]
|
||||
[% END %]
|
||||
[% END %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.ISBN && BIBLIO_RESULT.size > 0 ) %]
|
||||
<span>
|
||||
ISBN: [% FOREACH isbn IN BIBLIO_RESULT.ISBN %]
|
||||
[% isbn.marcisbn %]
|
||||
[% UNLESS ( loop.last ) %]; [% END %]
|
||||
[% END %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF BIBLIO_RESULT.publishercode %]
|
||||
<span>
|
||||
Published by: [% BIBLIO_RESULT.publishercode %]
|
||||
[% IF ( BIBLIO_RESULT.publicationyear ) %]
|
||||
in [% BIBLIO_RESULT.publicationyear %]
|
||||
[% END %]
|
||||
[% IF ( BIBLIO_RESULT.pages ) %]
|
||||
, [% BIBLIO_RESULT.pages %]
|
||||
[% END %]
|
||||
[% IF BIBLIO_RESULT.size %]
|
||||
, [% BIBLIO_RESULT.size %]
|
||||
[% END %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF BIBLIO_RESULT.collection %]
|
||||
<span>
|
||||
Collection: [% BIBLIO_RESULT.seriestitle %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.subject ) %]
|
||||
<span>
|
||||
Subject: [% BIBLIO_RESULT.subject %]
|
||||
<span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.copyrightdate ) %]
|
||||
<span>
|
||||
Copyright year: [% BIBLIO_RESULT.copyrightdate %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.notes ) %]
|
||||
<span>
|
||||
Notes : [% BIBLIO_RESULT.notes %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.unititle ) %]
|
||||
<span>
|
||||
Unified title: [% BIBLIO_RESULT.unititle %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.serial ) %]
|
||||
<span>
|
||||
Serial: [% BIBLIO_RESULT.serial %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.dewey ) %]
|
||||
<span>
|
||||
Dewey: [% BIBLIO_RESULT.dewey %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.classification ) %]
|
||||
<span>
|
||||
Classification: [% BIBLIO_RESULT.classification %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
|
||||
[% IF ( BIBLIO_RESULT.lccn ) %]
|
||||
<span>
|
||||
LCCN: [% BIBLIO_RESULT.lccn %]
|
||||
</span><br/>
|
||||
[% END %]
|
||||
[% IF ( BIBLIO_RESULT.url ) %]
|
||||
<span>
|
||||
URL: [% BIBLIO_RESULT.url %]
|
||||
</span>
|
||||
[% END %]
|
||||
</p>
|
||||
|
||||
[% IF ( OPACBaseURL ) %]
|
||||
<p>
|
||||
In online catalog: [% OPACBaseURL %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% BIBLIO_RESULT.biblionumber %]
|
||||
</p>
|
||||
[% END %]
|
||||
[% IF ( BIBLIO_RESULT.ITEM_RESULTS.size ) %]
|
||||
<p>Items:
|
||||
<ul>
|
||||
[% FOREACH ITEM_RESULT IN BIBLIO_RESULT.ITEM_RESULTS %]<li>
|
||||
[% ITEM_RESULT.branchname %]
|
||||
[% ITEM_RESULT.location %]
|
||||
[% IF ITEM_RESULT.itemcallnumber %]([% ITEM_RESULT.itemcallnumber %])[% END %]
|
||||
[% ITEM_RESULT.barcode %]
|
||||
</li>[% END %]
|
||||
</ul>
|
||||
</p>
|
||||
[% END %]
|
||||
<hr/>
|
||||
</li>
|
||||
[% END %]
|
||||
</ol>
|
||||
|
||||
[% END %]
|
||||
|
||||
<END_MESSAGE>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ use strict;
|
|||
use warnings;
|
||||
|
||||
use CGI;
|
||||
use Encode qw(encode);
|
||||
use Encode qw(decode encode);
|
||||
use Carp;
|
||||
|
||||
use Mail::Sendmail;
|
||||
|
|
@ -116,22 +116,29 @@ if ( $email ) {
|
|||
my $body;
|
||||
|
||||
# Analysing information and getting mail properties
|
||||
if ( $template_res =~ /<SUBJECT>\n(.*)\n<END_SUBJECT>/s ) {
|
||||
$mail{'subject'} = $1;
|
||||
if ( $template_res =~ /<SUBJECT>(.*)<END_SUBJECT>/s ) {
|
||||
$mail{subject} = $1;
|
||||
$mail{subject} =~ s|\n?(.*)\n?|$1|;
|
||||
}
|
||||
else { $mail{'subject'} = "no subject"; }
|
||||
|
||||
my $email_header = "";
|
||||
if ( $template_res =~ /<HEADER>\n(.*)\n<END_HEADER>/s ) {
|
||||
if ( $template_res =~ /<HEADER>(.*)<END_HEADER>/s ) {
|
||||
$email_header = $1;
|
||||
$email_header =~ s|\n?(.*)\n?|$1|;
|
||||
}
|
||||
|
||||
my $email_file = "basket.txt";
|
||||
if ( $template_res =~ /<FILENAME>\n(.*)\n<END_FILENAME>/s ) {
|
||||
my $email_file = "list.txt";
|
||||
if ( $template_res =~ /<FILENAME>(.*)<END_FILENAME>/s ) {
|
||||
$email_file = $1;
|
||||
$email_file =~ s|\n?(.*)\n?|$1|;
|
||||
}
|
||||
|
||||
if ( $template_res =~ /<MESSAGE>\n(.*)\n<END_MESSAGE>/s ) { $body = encode_qp($1); }
|
||||
if ( $template_res =~ /<MESSAGE>(.*)<END_MESSAGE>/s ) {
|
||||
$body = $1;
|
||||
$body =~ s|\n?(.*)\n?|$1|;
|
||||
$body = encode("UTF-8", encode_qp($body));
|
||||
}
|
||||
|
||||
my $boundary = "====" . time() . "====";
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue