@@ -, +, @@ --- basket/sendbasket.pl | 2 + .../bug_3150_-_add_LIST_and_CART_notices.perl | 298 +++++++++++++++++++++ .../data/mysql/en/mandatory/sample_notices.yml | 7 + opac/opac-sendshelf.pl | 85 +++--- virtualshelves/sendshelf.pl | 2 + 5 files changed, 343 insertions(+), 51 deletions(-) create mode 100644 installer/data/mysql/atomicupdate/bug_3150_-_add_LIST_and_CART_notices.perl --- a/basket/sendbasket.pl +++ a/basket/sendbasket.pl @@ -66,6 +66,7 @@ if ( $email_add ) { my $marcflavour = C4::Context->preference('marcflavour'); foreach my $biblionumber (@bibs) { $template2->param( biblionumber => $biblionumber ); + my $biblio = Koha::Biblios->find($biblionumber); my $dat = GetBiblioData($biblionumber); next unless $dat; @@ -88,6 +89,7 @@ if ( $email_add ) { $dat->{HASAUTHORS} = $hasauthors; $dat->{'biblionumber'} = $biblionumber; $dat->{ITEM_RESULTS} = \@items; + $dat->{biblio} = $biblio; $iso2709 .= $record->as_usmarc(); --- a/installer/data/mysql/atomicupdate/bug_3150_-_add_LIST_and_CART_notices.perl +++ a/installer/data/mysql/atomicupdate/bug_3150_-_add_LIST_and_CART_notices.perl @@ -0,0 +1,298 @@ +$DBversion = 'XXX'; +if( CheckVersion( $DBversion ) ) { + $dbh->do(q{ INSERT IGNORE INTO letter (module, code, branchcode, name, is_html, title, content, message_transport_type, lang) VALUES + ('catalogue','LIST','','Send list',1,'Your list: [% listname %]'," +
Hi,
+ +[% borrower.firstname %] [% borrower.surname %] sent you a list from our online catalog called: [% listname %].
+ +Please note that the attached file is a MARC bibliographic records file which can be imported into personal bibliographic software like EndNote, Reference Manager or ProCite.
+<
+ [% IF ( BIBLIO_RESULT.HASAUTHORS ) %]
+ Author(s): [% IF ( BIBLIO_RESULT.author ) %][% BIBLIO_RESULT.author | $raw %][% 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 | $raw %][% MARCAUTHOR_SUBFIELDS_LOO.value | $raw %]
+ [% END %]
+ [% UNLESS ( loop.last ) %];[% END %]
+ [% END %]
+ [% END %]
+
+ [% END %]
+
+ [% SET record = biblio.metadata.record %]
+
+ [% SET marcflavour = Koha.Preference('marcflavour') %]
+ [% IF marcflavour == 'UNIMARC' %]
+ [% SET maxtag = 712 %]
+ [% ELSE %]
+ [% SET maxtag = 720 %]
+ [% END %]
+
+ Author(s): [% IF ( biblio.author ) %][% biblio.author | $raw %][% END %]
+ [% FOREACH field IN record.fields('7..') %]
+ [% IF ( biblio.author ) %]; [% END %]
+ [% UNLESS ( field.tag < 700 || field.tag > maxtag ) %]
+ [% SET separator = Koha.Preference('AuthoritySeparator') %]
+ [% IF ( separator ) %][% separator | $raw %][% ELSE %] [% END %][% field.as_string | $raw %]
+ [% END %]
+ [% UNLESS ( loop.last ) %];[% END %]
+ [% END %]
+
+
+ [% SET biblioitem = biblio.biblioitem %]
+
+ [% IF ( biblioitem.isbn ) %]
+
+ ISBN: [% FOREACH isbn IN biblioitem.isbn %]
+ [% isbn | $raw %]
+ [% UNLESS ( loop.last ) %]; [% END %]
+ [% END %]
+
+ [% END %]
+
+ [% IF ( biblioitem.publishercode ) %]
+
+ Published by: [% biblioitem.publishercode | $raw %]
+ [% IF ( biblioitem.publicationyear ) %]
+ in [% biblioitem.publicationyear | $raw %]
+ [% END %]
+ [% IF ( biblioitem.pages ) %]
+ , [% biblioitem.pages | $raw %]
+ [% END %]
+ [% IF BIBLIO_RESULT.item('size') %]
+ , [% BIBLIO_RESULT.item('size') | html %]
+ [% END %]
+
+ [% END %]
+
+ [% IF ( biblio.seriestitle ) %]
+
+ Collection: [% biblio.seriestitle | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.copyrightdate ) %]
+
+ Copyright year: [% biblio.copyrightdate | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.notes ) %]
+
+ Notes: [% biblio.notes | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.unititle ) %]
+
+ Unified title: [% biblio.unititle | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.serial ) %]
+
+ Serial: [% biblio.serial | $raw %]
+
+ [% END %]
+
+ [% IF ( biblioitem.lccn ) %]
+
+ LCCN: [% biblioitem.lccn | $raw %]
+
+ [% END %]
+
+ [% IF ( biblioitem.url ) %]
+
+ URL: [% biblioitem.url | html %]
+
+ [% END %]
+
In online catalog: [% OPACBaseURL | $raw %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% biblio.biblionumber | html %]
+ [% END %] + + [% IF ( biblio.items.size ) %] +Items: +
Hi,
+ +[% borrower.firstname | $raw %] [% borrower.surname | $raw %] sent you a cart from our online catalog.
+ +Please note that the attached file is a MARC bibliographic records file which can be imported into personal bibliographic software like EndNote, Reference Manager or ProCite.
+<
+ [% IF ( BIBLIO_RESULT.HASAUTHORS ) %]
+ Author(s): [% IF ( BIBLIO_RESULT.author ) %][% BIBLIO_RESULT.author | $raw %][% 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 | $raw %][% MARCAUTHOR_SUBFIELDS_LOO.value | $raw %]
+ [% END %]
+ [% UNLESS ( loop.last ) %];[% END %]
+ [% END %]
+ [% END %]
+
+ [% END %]
+
+ [% SET record = biblio.metadata.record %]
+ Author(s): [% IF ( biblio.author ) %][% biblio.author | $raw %][% END %]
+ [% FOREACH field IN record.fields('7..') %]
+ [% IF ( biblio.author ) %]; [% END %]
+ [% UNLESS ( field.tag < 700 || field.tag > 720 ) %]
+ [% SET separator = Koha.Preference('AuthoritySeparator') %]
+ [% IF ( separator ) %][% separator | $raw %][% ELSE %] [% END %][% field.as_string | $raw %]
+ [% END %]
+ [% UNLESS ( loop.last ) %];[% END %]
+ [% END %]
+
+
+ [% SET biblioitem = biblio.biblioitem %]
+
+ [% IF ( biblioitem.isbn ) %]
+
+ ISBN: [% FOREACH isbn IN biblioitem.isbn %]
+ [% isbn | $raw %]
+ [% UNLESS ( loop.last ) %]; [% END %]
+ [% END %]
+
+ [% END %]
+
+ [% IF ( biblioitem.publishercode ) %]
+
+ Published by: [% biblioitem.publishercode | $raw %]
+ [% IF ( biblioitem.publicationyear ) %]
+ in [% biblioitem.publicationyear | $raw %]
+ [% END %]
+ [% IF ( biblioitem.pages ) %]
+ , [% biblioitem.pages | $raw %]
+ [% END %]
+ [% IF BIBLIO_RESULT.item('size') %]
+ , [% BIBLIO_RESULT.item('size') | html %]
+ [% END %]
+
+ [% END %]
+
+ [% IF ( biblio.seriestitle ) %]
+
+ Collection: [% biblio.seriestitle | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.copyrightdate ) %]
+
+ Copyright year: [% biblio.copyrightdate | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.notes ) %]
+
+ Notes: [% biblio.notes | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.unititle ) %]
+
+ Unified title: [% biblio.unititle | $raw %]
+
+ [% END %]
+
+ [% IF ( biblio.serial ) %]
+
+ Serial: [% biblio.serial | $raw %]
+
+ [% END %]
+
+ [% IF ( biblioitem.lccn ) %]
+
+ LCCN: [% biblioitem.lccn | $raw %]
+
+ [% END %]
+
+ [% IF ( biblioitem.url ) %]
+
+ URL: [% biblioitem.url | html %]
+
+ [% END %]
+
In online catalog: [% OPACBaseURL | $raw %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% biblio.biblionumber | html %]
+ [% END %] + + [% IF ( biblio.items.size ) %] +Items: +