X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=opac%2Fopac-sendshelf.pl;h=80b54e2a6c28511935d33f7bf29f8ecab4dc1c78;hb=9c5e40e4923179bf0b2b630d3e09797dc4c1fdb0;hp=b571e07185517a0bc10d9024902551434320fe65;hpb=6be9d2b27dd47c859eb6ab0cfd873b2059206986;p=koha.git diff --git a/opac/opac-sendshelf.pl b/opac/opac-sendshelf.pl index b571e07185..80b54e2a6c 100755 --- a/opac/opac-sendshelf.pl +++ b/opac/opac-sendshelf.pl @@ -21,7 +21,7 @@ use strict; use warnings; use CGI; -use Encode qw(encode); +use Encode; use Carp; use Mail::Sendmail; @@ -41,7 +41,7 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user ( template_name => "opac-sendshelfform.tmpl", query => $query, type => "opac", - authnotrequired => 1, + authnotrequired => 0, flagsrequired => { borrow => 1 }, } ); @@ -81,27 +81,35 @@ if ( $email ) { # retrieve biblios from shelf foreach my $biblio (@$items) { my $biblionumber = $biblio->{biblionumber}; - + my $fw = GetFrameworkCode($biblionumber); my $dat = GetBiblioData($biblionumber); my $record = GetMarcBiblio($biblionumber); my $marcnotesarray = GetMarcNotes( $record, $marcflavour ); my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour ); my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour ); + my $subtitle = GetRecordValue('subtitle', $record, $fw); my @items = GetItemsInfo( $biblionumber ); + $dat->{ISBN} = GetMarcISBN($record, $marcflavour); $dat->{MARCNOTES} = $marcnotesarray; $dat->{MARCSUBJCTS} = $marcsubjctsarray; $dat->{MARCAUTHORS} = $marcauthorsarray; $dat->{'biblionumber'} = $biblionumber; $dat->{ITEM_RESULTS} = \@items; + $dat->{subtitle} = $subtitle; + $dat->{HASAUTHORS} = $dat->{'author'} || @$marcauthorsarray; $iso2709 .= $record->as_usmarc(); push( @results, $dat ); } - my $user = GetMember(borrowernumber => $borrowernumber); + my $user = GetMember(borrowernumber => $borrowernumber); + + if (C4::Context->preference('OPACBaseURL')){ + $template2->param( OPACBaseURL => C4::Context->preference('OPACBaseURL') ); + } $template2->param( BIBLIO_RESULTS => \@results, @@ -114,25 +122,19 @@ if ( $email ) { # Getting template result my $template_res = $template2->output(); - my $body; # Analysing information and getting mail properties - if ( $template_res =~ /\n(.*)\n/s ) { - $mail{'subject'} = $1; - } - else { $mail{'subject'} = "no subject"; } + $mail{'subject'} = $template_res =~ /\n(.*)\n?/s + ? $1 : "no subject"; - my $email_header = ""; - if ( $template_res =~ /
\n(.*)\n/s ) { - $email_header = $1; - } + my ($email_header) = $template_res =~ /
\n(.*)\n?/s; - my $email_file = "basket.txt"; - if ( $template_res =~ /\n(.*)\n/s ) { - $email_file = $1; - } + my $email_file = $template_res =~ /\n(.*)\n?/s + ? $1 + : "list.txt"; - if ( $template_res =~ /\n(.*)\n/s ) { $body = encode_qp($1); } + my ($body) = $template_res =~ /\n(.*)\n?/s; + $body = encode_qp($body); my $boundary = "====" . time() . "===="; @@ -144,15 +146,16 @@ if ( $email ) { $mail{body} = < "/cgi-bin/koha/opac-sendshelf.pl", ); output_html_with_http_headers $query, $cookie, $template->output; -} \ No newline at end of file +}