View | Details | Raw Unified | Return to bug 28634
Collapse All | Expand All

(-)a/Koha/Illrequest.pm (-14 / +32 lines)
Lines 1329-1339 sub generic_confirm { Link Here
1329
        my $to = $params->{partners};
1329
        my $to = $params->{partners};
1330
        if ( defined $to ) {
1330
        if ( defined $to ) {
1331
            $to =~ s/^\x00//;       # Strip leading NULLs
1331
            $to =~ s/^\x00//;       # Strip leading NULLs
1332
            $to =~ s/\x00/; /;      # Replace others with '; '
1333
        }
1332
        }
1334
        Koha::Exceptions::Ill::NoTargetEmail->throw(
1333
        Koha::Exceptions::Ill::NoTargetEmail->throw(
1335
            "No target email addresses found. Either select at least one partner or check your ILL partner library records.")
1334
            "No target email addresses found. Either select at least one partner or check your ILL partner library records.")
1336
          if ( !$to );
1335
          if ( !$to );
1336
1337
        # Take the null delimited string that we receive and create
1338
        # an array of associated patron objects
1339
        my @to_patrons = map {
1340
            Koha::Patrons->find({ borrowernumber => $_ })
1341
        } split(/\x00/, $to);
1342
1337
        # Create the from, replyto and sender headers
1343
        # Create the from, replyto and sender headers
1338
        my $from = $branch->from_email_address;
1344
        my $from = $branch->from_email_address;
1339
        my $replyto = $branch->inbound_ill_address;
1345
        my $replyto = $branch->inbound_ill_address;
Lines 1350-1374 sub generic_confirm { Link Here
1350
        $letter->{title} = $params->{subject};
1356
        $letter->{title} = $params->{subject};
1351
        $letter->{content} = $params->{body};
1357
        $letter->{content} = $params->{body};
1352
1358
1353
        # Queue the notice
1354
        my $params = {
1355
            letter                 => $letter,
1356
            borrowernumber         => $self->borrowernumber,
1357
            message_transport_type => 'email',
1358
            to_address             => $to,
1359
            from_address           => $from,
1360
            reply_address          => $replyto
1361
        };
1362
1363
        if ($letter) {
1359
        if ($letter) {
1364
            my $result = C4::Letters::EnqueueLetter($params);
1360
1365
            if ( $result ) {
1361
            # Keep track of who received this notice
1362
            my @queued = ();
1363
            # Iterate our array of recipient patron objects
1364
            foreach my $patron(@to_patrons) {
1365
                # Create the params we pass to the notice
1366
                my $params = {
1367
                    letter                 => $letter,
1368
                    borrowernumber         => $patron->borrowernumber,
1369
                    message_transport_type => 'email',
1370
                    to_address             => $patron->email,
1371
                    from_address           => $from,
1372
                    reply_address          => $replyto
1373
                };
1374
                my $result = C4::Letters::EnqueueLetter($params);
1375
                if ( $result ) {
1376
                    push @queued, $patron->email;
1377
                }
1378
            }
1379
1380
            # If all notices were queued successfully,
1381
            # store that
1382
            if (scalar @queued == scalar @to_patrons) {
1366
                $self->status("GENREQ")->store;
1383
                $self->status("GENREQ")->store;
1367
                $self->_backend_capability(
1384
                $self->_backend_capability(
1368
                    'set_requested_partners',
1385
                    'set_requested_partners',
1369
                    {
1386
                    {
1370
                        request => $self,
1387
                        request => $self,
1371
                        to => $to
1388
                        to => join("; ", @queued)
1372
                    }
1389
                    }
1373
                );
1390
                );
1374
                return {
1391
                return {
Lines 1380-1385 sub generic_confirm { Link Here
1380
                    next    => 'illview',
1397
                    next    => 'illview',
1381
                };
1398
                };
1382
            }
1399
            }
1400
1383
        }
1401
        }
1384
        return {
1402
        return {
1385
            error   => 1,
1403
            error   => 1,
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/ill/ill-requests.tt (-2 / +1 lines)
Lines 323-329 Link Here
323
                                        <select size="5" multiple="true" id="partners" name="partners" required="required">
323
                                        <select size="5" multiple="true" id="partners" name="partners" required="required">
324
                                            [% FOREACH partner IN whole.value.partners %]
324
                                            [% FOREACH partner IN whole.value.partners %]
325
                                                [% IF partner.email && partner.email.length > 0 %]
325
                                                [% IF partner.email && partner.email.length > 0 %]
326
                                                    <option data-partner-id="[% partner.id | html %]" value=[% partner.email | html %]>
326
                                                    <option data-partner-id="[% partner.id | html %]" value=[% partner.borrowernumber | html %]>
327
                                                        [% partner.branchcode _ " - " _ partner.surname %]
327
                                                        [% partner.branchcode _ " - " _ partner.surname %]
328
                                                    </option>
328
                                                    </option>
329
                                                [% END %]
329
                                                [% END %]
330
- 

Return to bug 28634