|
Lines 20-26
Link Here
|
| 20 |
use Modern::Perl; |
20 |
use Modern::Perl; |
| 21 |
|
21 |
|
| 22 |
use CGI qw ( -utf8 ); |
22 |
use CGI qw ( -utf8 ); |
| 23 |
use Encode; |
|
|
| 24 |
|
23 |
|
| 25 |
use C4::Auth qw( get_template_and_user ); |
24 |
use C4::Auth qw( get_template_and_user ); |
| 26 |
use C4::Biblio qw(GetMarcSubjects); |
25 |
use C4::Biblio qw(GetMarcSubjects); |
|
Lines 50-101
if ( $op eq "cud-send" && $email_add && $user_email ) {
Link Here
|
| 50 |
my $comment = $query->param('comment'); |
49 |
my $comment = $query->param('comment'); |
| 51 |
|
50 |
|
| 52 |
my @bibs = split( /\//, $bib_list ); |
51 |
my @bibs = split( /\//, $bib_list ); |
| 53 |
my $iso2709; |
|
|
| 54 |
foreach my $bib (@bibs) { |
| 55 |
$bib = int($bib); |
| 56 |
my $biblio = Koha::Biblios->find($bib) or next; |
| 57 |
$iso2709 .= $biblio->metadata_record( { interface => 'opac' } )->as_usmarc(); |
| 58 |
} |
| 59 |
|
52 |
|
| 60 |
if ( !defined $iso2709 ) { |
53 |
my %loops = ( biblio => \@bibs, ); |
| 61 |
$template->param( error => 'NO_BODY' ); |
54 |
|
| 62 |
} else { |
55 |
my %substitute = ( comment => $comment, ); |
| 63 |
my %loops = ( biblio => \@bibs, ); |
|
|
| 64 |
|
56 |
|
| 65 |
my %substitute = ( comment => $comment, ); |
57 |
my $letter = C4::Letters::GetPreparedLetter( |
|
|
58 |
module => 'catalogue', |
| 59 |
letter_code => 'CART', |
| 60 |
lang => $patron->lang, |
| 61 |
tables => { |
| 62 |
borrowers => $borrowernumber, |
| 63 |
}, |
| 64 |
message_transport_type => 'email', |
| 65 |
loops => \%loops, |
| 66 |
substitute => \%substitute, |
| 67 |
); |
| 66 |
|
68 |
|
| 67 |
my $letter = C4::Letters::GetPreparedLetter( |
69 |
my $message_id = C4::Letters::EnqueueLetter( |
| 68 |
module => 'catalogue', |
70 |
{ |
| 69 |
letter_code => 'CART', |
71 |
letter => $letter, |
| 70 |
lang => $patron->lang, |
|
|
| 71 |
tables => { |
| 72 |
borrowers => $borrowernumber, |
| 73 |
}, |
| 74 |
message_transport_type => 'email', |
72 |
message_transport_type => 'email', |
| 75 |
loops => \%loops, |
73 |
to_address => $email_add, |
| 76 |
substitute => \%substitute, |
74 |
reply_address => $user_email, |
| 77 |
); |
75 |
} |
| 78 |
|
76 |
); |
| 79 |
my $attachment = { |
77 |
|
| 80 |
filename => 'basket.iso2709', |
78 |
C4::Letters::SendQueuedMessages( { message_id => $message_id } ) if $message_id; |
| 81 |
type => 'application/octet-stream', |
79 |
|
| 82 |
content => Encode::encode( "UTF-8", $iso2709 ), |
80 |
$template->param( SENT => 1 ); |
| 83 |
}; |
|
|
| 84 |
|
| 85 |
my $message_id = C4::Letters::EnqueueLetter( |
| 86 |
{ |
| 87 |
letter => $letter, |
| 88 |
message_transport_type => 'email', |
| 89 |
to_address => $email_add, |
| 90 |
reply_address => $user_email, |
| 91 |
attachments => [$attachment], |
| 92 |
} |
| 93 |
); |
| 94 |
|
| 95 |
C4::Letters::SendQueuedMessages( { message_id => $message_id } ) if $message_id; |
| 96 |
|
| 97 |
$template->param( SENT => 1 ); |
| 98 |
} |
| 99 |
|
81 |
|
| 100 |
$template->param( email_add => $email_add ); |
82 |
$template->param( email_add => $email_add ); |
| 101 |
output_html_with_http_headers $query, $cookie, $template->output, undef, |
83 |
output_html_with_http_headers $query, $cookie, $template->output, undef, |
| 102 |
- |
|
|