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

(-)a/C4/Circulation.pm (+2 lines)
Lines 1038-1043 sub CanBookBeIssued { Link Here
1038
                    $needsconfirmation{'resborrowernumber'} = $patron->borrowernumber;
1038
                    $needsconfirmation{'resborrowernumber'} = $patron->borrowernumber;
1039
                    $needsconfirmation{'resbranchcode'} = $res->{branchcode};
1039
                    $needsconfirmation{'resbranchcode'} = $res->{branchcode};
1040
                    $needsconfirmation{'reswaitingdate'} = $res->{'waitingdate'};
1040
                    $needsconfirmation{'reswaitingdate'} = $res->{'waitingdate'};
1041
                    $needsconfirmation{'reserve_id'} = $res->{reserve_id};
1041
                }
1042
                }
1042
                elsif ( $restype eq "Reserved" ) {
1043
                elsif ( $restype eq "Reserved" ) {
1043
                    # The item is on reserve for someone else.
1044
                    # The item is on reserve for someone else.
Lines 1048-1053 sub CanBookBeIssued { Link Here
1048
                    $needsconfirmation{'resborrowernumber'} = $patron->borrowernumber;
1049
                    $needsconfirmation{'resborrowernumber'} = $patron->borrowernumber;
1049
                    $needsconfirmation{'resbranchcode'} = $patron->branchcode;
1050
                    $needsconfirmation{'resbranchcode'} = $patron->branchcode;
1050
                    $needsconfirmation{'resreservedate'} = $res->{reservedate};
1051
                    $needsconfirmation{'resreservedate'} = $res->{reservedate};
1052
                    $needsconfirmation{'reserve_id'} = $res->{reserve_id};
1051
                }
1053
                }
1052
            }
1054
            }
1053
        }
1055
        }
(-)a/C4/Reserves.pm (-30 / +6 lines)
Lines 604-610 sub GetOtherReserves { Link Here
604
            ModReserveStatus($itemnumber,'W');
604
            ModReserveStatus($itemnumber,'W');
605
        }
605
        }
606
606
607
        $nextreservinfo = $checkreserves->{'borrowernumber'};
607
        $nextreservinfo = $checkreserves;
608
    }
608
    }
609
609
610
    return ( $messages, $nextreservinfo );
610
    return ( $messages, $nextreservinfo );
Lines 1173-1179 sub ModReserveCancelAll { Link Here
1173
    #step 2 launch the subroutine of the others reserves
1173
    #step 2 launch the subroutine of the others reserves
1174
    ( $messages, $nextreservinfo ) = GetOtherReserves($itemnumber);
1174
    ( $messages, $nextreservinfo ) = GetOtherReserves($itemnumber);
1175
1175
1176
    return ( $messages, $nextreservinfo );
1176
    return ( $messages, $nextreservinfo->{borrowernumber} );
1177
}
1177
}
1178
1178
1179
=head2 ModReserveMinusPriority
1179
=head2 ModReserveMinusPriority
Lines 2037-2072 available within the slip: Link Here
2037
sub ReserveSlip {
2037
sub ReserveSlip {
2038
    my ($args) = @_;
2038
    my ($args) = @_;
2039
    my $branchcode     = $args->{branchcode};
2039
    my $branchcode     = $args->{branchcode};
2040
    my $borrowernumber = $args->{borrowernumber};
2040
    my $reserve_id = $args->{reserve_id};
2041
    my $biblionumber   = $args->{biblionumber};
2042
    my $itemnumber     = $args->{itemnumber};
2043
    my $barcode        = $args->{barcode};
2044
2045
2046
    my $patron = Koha::Patrons->find($borrowernumber);
2047
2048
    my $hold;
2049
    if ($itemnumber || $barcode ) {
2050
        $itemnumber ||= Koha::Items->find( { barcode => $barcode } )->itemnumber;
2051
2052
        $hold = Koha::Holds->search(
2053
            {
2054
                biblionumber   => $biblionumber,
2055
                borrowernumber => $borrowernumber,
2056
                itemnumber     => $itemnumber
2057
            }
2058
        )->next;
2059
    }
2060
    else {
2061
        $hold = Koha::Holds->search(
2062
            {
2063
                biblionumber   => $biblionumber,
2064
                borrowernumber => $borrowernumber
2065
            }
2066
        )->next;
2067
    }
2068
2041
2042
    my $hold = Koha::Holds->find($reserve_id);
2069
    return unless $hold;
2043
    return unless $hold;
2044
2045
    my $patron = $hold->borrower;
2070
    my $reserve = $hold->unblessed;
2046
    my $reserve = $hold->unblessed;
2071
2047
2072
    return  C4::Letters::GetPreparedLetter (
2048
    return  C4::Letters::GetPreparedLetter (
(-)a/circ/circulation.pl (-1 / +2 lines)
Lines 419-425 if (@$barcodes) { Link Here
419
419
420
    if ($question->{RESERVE_WAITING} or $question->{RESERVED}){
420
    if ($question->{RESERVE_WAITING} or $question->{RESERVED}){
421
        $template->param(
421
        $template->param(
422
            reserveborrowernumber => $question->{'resborrowernumber'}
422
            reserveborrowernumber => $question->{'resborrowernumber'},
423
            reserve_id => $question->{reserve_id},
423
        );
424
        );
424
    }
425
    }
425
426
(-)a/circ/hold-transfer-slip.pl (-8 / +2 lines)
Lines 35-44 my $input = new CGI; Link Here
35
my $sessionID = $input->cookie("CGISESSID");
35
my $sessionID = $input->cookie("CGISESSID");
36
my $session = get_session($sessionID);
36
my $session = get_session($sessionID);
37
37
38
my $biblionumber = $input->param('biblionumber');
38
my $reserve_id = $input->param('reserve_id');
39
my $borrowernumber = $input->param('borrowernumber');
40
my $itemnumber = $input->param('itemnumber');
41
my $barcode = $input->param('barcode');
42
39
43
my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
40
my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
44
    {
41
    {
Lines 55-64 my $userenv = C4::Context->userenv; Link Here
55
my ($slip, $is_html);
52
my ($slip, $is_html);
56
if ( my $letter = ReserveSlip ({
53
if ( my $letter = ReserveSlip ({
57
    branchcode     => $session->param('branch') || $userenv->{branch},
54
    branchcode     => $session->param('branch') || $userenv->{branch},
58
    borrowernumber => $borrowernumber,
55
    reserve_id => $reserve_id,
59
    biblionumber   => $biblionumber,
60
    itemnumber     => $itemnumber,
61
    barcode        => $barcode,
62
}) ) {
56
}) ) {
63
    $slip = $letter->{content};
57
    $slip = $letter->{content};
64
    $is_html = $letter->{is_html};
58
    $is_html = $letter->{is_html};
(-)a/circ/returns.pl (-9 / +2 lines)
Lines 77-85 my $session = get_session($sessionID); Link Here
77
if ( $query->param('print_slip') ) {
77
if ( $query->param('print_slip') ) {
78
    $template->param(
78
    $template->param(
79
        print_slip     => 1,
79
        print_slip     => 1,
80
        borrowernumber => scalar $query->param('borrowernumber'), # FIXME We should send a Koha::Patron and raise an error if not exist.
80
        reserve_id => scalar $query->param('reserve_id'),
81
        biblionumber   => scalar $query->param('biblionumber'),
82
        itemnumber     => scalar $query->param('itemnumber'),
83
    );
81
    );
84
}
82
}
85
83
Lines 419-433 if ( $messages->{'ResFound'}) { Link Here
419
        my $diffBranchSend = !$branchCheck ? $reserve->{branchcode} : undef;
417
        my $diffBranchSend = !$branchCheck ? $reserve->{branchcode} : undef;
420
        ModReserveAffect( $reserve->{itemnumber}, $reserve->{borrowernumber}, $diffBranchSend, $reserve->{reserve_id} );
418
        ModReserveAffect( $reserve->{itemnumber}, $reserve->{borrowernumber}, $diffBranchSend, $reserve->{reserve_id} );
421
        my ( $messages, $nextreservinfo ) = GetOtherReserves($reserve->{itemnumber});
419
        my ( $messages, $nextreservinfo ) = GetOtherReserves($reserve->{itemnumber});
422
423
        my $patron = Koha::Patrons->find( $nextreservinfo );
424
425
        $template->param(
420
        $template->param(
426
            hold_auto_filled => 1,
421
            hold_auto_filled => 1,
427
            print_slip       => C4::Context->preference('HoldsAutoFillPrintSlip'),
422
            print_slip       => C4::Context->preference('HoldsAutoFillPrintSlip'),
428
            patron           => $patron,
423
            reserve_id       => $nextreservinfo->{reserve_id},
429
            borrowernumber   => $patron->id,
430
            biblionumber     => $biblio->id,
431
        );
424
        );
432
425
433
        if ( $messages->{'transfert'} ) {
426
        if ( $messages->{'transfert'} ) {
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt (-2 / +2 lines)
Lines 263-269 Link Here
263
                                    <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
263
                                    <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
264
                                    <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
264
                                    <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
265
                                    <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
265
                                    <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
266
                                    <button class="print" type="submit" onclick="Dopop('hold-transfer-slip.pl?borrowernumber=[% reserveborrowernumber | uri %]&amp;biblionumber=[% itembiblionumber | uri %]&amp;itemnumber=[% item.itemnumber | uri %]&amp;op=slip');this.form.submit();"><i class="fa fa-print"></i> Don't check out and print slip (P)</button>
266
                                    <button class="print" type="submit" onclick="Dopop('hold-transfer-slip.pl?reserve_id=[% reserve_id | uri %]');this.form.submit();"><i class="fa fa-print"></i> Don't check out and print slip (P)</button>
267
                                </form>
267
                                </form>
268
                            [% END %]
268
                            [% END %]
269
269
Lines 273-279 Link Here
273
                                    <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
273
                                    <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
274
                                    <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
274
                                    <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
275
                                    <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
275
                                    <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
276
                                    <button class="print" type="submit" onclick="Dopop('hold-transfer-slip.pl?borrowernumber=[% reserveborrowernumber | uri %]&amp;biblionumber=[% itembiblionumber | uri %]&amp;itemnumber=[% item.itemnumber | uri %]&amp;op=slip');this.form.submit();"><i class="fa fa-print"></i> Don't check out and print slip (P)</button>
276
                                    <button class="print" type="submit" onclick="Dopop('hold-transfer-slip.pl?reserve_id=[% reserve_id | uri %]');this.form.submit();"><i class="fa fa-print"></i> Don't check out and print slip (P)</button>
277
                                </form>
277
                                </form>
278
                            [% END %]
278
                            [% END %]
279
279
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt (-3 / +2 lines)
Lines 936-946 Link Here
936
936
937
            $(".print-slip").on('click', function(e) {
937
            $(".print-slip").on('click', function(e) {
938
                e.preventDefault();
938
                e.preventDefault();
939
                Dopop('hold-transfer-slip.pl?borrowernumber=[% patron.borrowernumber | uri %]&amp;biblionumber=[% biblionumber | uri %]');
939
                Dopop('hold-transfer-slip.pl?reserve_id=[% reserve_id | uri %]');
940
            });
940
            });
941
941
942
            [% IF print_slip %]
942
            [% IF print_slip %]
943
                Dopop('hold-transfer-slip.pl?borrowernumber=[% borrowernumber | uri %]&amp;biblionumber=[% biblionumber | uri %]&amp;itemnumber=[% itemnumber | uri %]');
943
                Dopop('hold-transfer-slip.pl?reserve_id=[% reserve_id | uri %]');
944
            [% END %]
944
            [% END %]
945
945
946
            var columns_settings = [% ColumnsSettings.GetColumns( 'circ', 'returns', 'checkedintable', 'json' ) | $raw %]
946
            var columns_settings = [% ColumnsSettings.GetColumns( 'circ', 'returns', 'checkedintable', 'json' ) | $raw %]
947
- 

Return to bug 24612