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

(-)a/C4/Circulation.pm (-4 / +22 lines)
Lines 2472-2478 sub CanBookBeRenewed { Link Here
2472
2472
2473
    my $dbh       = C4::Context->dbh;
2473
    my $dbh       = C4::Context->dbh;
2474
    my $renews    = 1;
2474
    my $renews    = 1;
2475
    my $renewokay = 0;
2475
    my $renewokay = 1;
2476
    my $error;
2476
    my $error;
2477
2477
2478
    my $item      = GetItem($itemnumber)      or return ( 0, 'no_item' );
2478
    my $item      = GetItem($itemnumber)      or return ( 0, 'no_item' );
Lines 2486-2497 sub CanBookBeRenewed { Link Here
2486
2486
2487
    my $issuingrule = GetIssuingRule($borrower->{categorycode}, $item->{itype}, $branchcode);
2487
    my $issuingrule = GetIssuingRule($borrower->{categorycode}, $item->{itype}, $branchcode);
2488
2488
2489
    if ( ( $issuingrule->{renewalsallowed} > $itemissue->{renewals} ) || $override_limit ) {
2489
    if ( $issuingrule->{norenewalbefore} ) {
2490
        $renewokay = 1;
2490
2491
    } else {
2491
        # Get current time and add norenewalbefore. If this is smaller than date_due, it's too soon for renewal.
2492
        if (
2493
            DateTime->now( time_zone => C4::Context->tz() )->add(
2494
                $issuingrule->{lengthunit} => $issuingrule->{norenewalbefore}
2495
            ) < $itemissue->{date_due}
2496
        )
2497
        {
2498
            $renewokay = 0;
2499
            $error     = "too_soon";
2500
        }
2501
    }
2502
2503
    if ( $issuingrule->{renewalsallowed} <= $itemissue->{renewals} ) {
2504
        $renewokay = 0;
2492
        $error = "too_many";
2505
        $error = "too_many";
2493
    }
2506
    }
2494
2507
2508
    if ( $override_limit ) {
2509
        $renewokay = 1;
2510
        $error     = undef;
2511
    }
2512
2495
    my ( $resfound, $resrec, undef ) = C4::Reserves::CheckReserves( $itemnumber );
2513
    my ( $resfound, $resrec, undef ) = C4::Reserves::CheckReserves( $itemnumber );
2496
2514
2497
    if ( $resfound ) { # '' when no hold was found
2515
    if ( $resfound ) { # '' when no hold was found
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt (-3 / +8 lines)
Lines 785-794 No patron matched <span class="ex">[% message %]</span> Link Here
785
            [% END %]
785
            [% END %]
786
		[% IF ( todayissue.renew_error_on_reserve ) %]
786
		[% IF ( todayissue.renew_error_on_reserve ) %]
787
            <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% todayissue.biblionumber %]">On hold</a>
787
            <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% todayissue.biblionumber %]">On hold</a>
788
		[% END %]
788
        [% ELSE %]
789
                [% IF ( todayissue.renew_error_too_many ) %]
789
            [% IF ( todayissue.renew_error_too_many ) %]
790
            Not renewable
790
                Not renewable
791
            [% ELSE %]
792
                [% IF ( todayissue.renew_error_too_soon ) %]
793
                    Not renewable yet
791
                [% END %]
794
                [% END %]
795
            [% END %]
796
        [% END %]
792
            [% IF ( todayissue.can_confirm ) %]
797
            [% IF ( todayissue.can_confirm ) %]
793
                </span>
798
                </span>
794
            [% END %]
799
            [% END %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt (-2 / +6 lines)
Lines 507-516 function validate1(date) { Link Here
507
                [% END %]
507
                [% END %]
508
                [% IF ( issueloo.norenew_reason_on_reserve ) %]
508
                [% IF ( issueloo.norenew_reason_on_reserve ) %]
509
                <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% issueloo.biblionumber %]">On Hold</a>
509
                <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% issueloo.biblionumber %]">On Hold</a>
510
                [% END %]
510
                [% ELSE %]
511
                    [% IF ( issueloo.norenew_reason_too_many ) %]
511
                    [% IF ( issueloo.norenew_reason_too_many ) %]
512
                        Not renewable
512
                        Not renewable
513
                    [% ELSE %]
514
                        [% IF ( issueloo.norenew_reason_too_soon ) %]
515
                            Not renewable yet
516
                        [% END %]
513
                    [% END %]
517
                    [% END %]
518
                [% END %]
514
                [% IF ( issueloo.can_confirm ) %]
519
                [% IF ( issueloo.can_confirm ) %]
515
                    </span>
520
                    </span>
516
                [% END %]
521
                [% END %]
517
- 

Return to bug 7413