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

(-)a/C4/Circulation.pm (-10 / +12 lines)
Lines 411-418 sub TooMany { Link Here
411
    # rule
411
    # rule
412
    if (defined($maxissueqty_rule) and $maxissueqty_rule->rule_value ne '') {
412
    if (defined($maxissueqty_rule) and $maxissueqty_rule->rule_value ne '') {
413
        my @bind_params;
413
        my @bind_params;
414
        my $count_query = q|
414
        my $count_query = qq|
415
            SELECT COUNT(*) AS total, COALESCE(SUM(onsite_checkout), 0) AS onsite_checkouts
415
            SELECT COUNT(*) AS total, COALESCE(SUM(CASE WHEN checkout_type = '$Koha::Checkouts::type->{onsite_checkout}' THEN 1 ELSE 0 END), 0) AS onsite_checkouts
416
            FROM issues
416
            FROM issues
417
            JOIN items USING (itemnumber)
417
            JOIN items USING (itemnumber)
418
        |;
418
        |;
Lines 508-515 sub TooMany { Link Here
508
    my $branch_borrower_circ_rule = GetBranchBorrowerCircRule($branch, $cat_borrower);
508
    my $branch_borrower_circ_rule = GetBranchBorrowerCircRule($branch, $cat_borrower);
509
    if (defined($branch_borrower_circ_rule->{patron_maxissueqty}) and $branch_borrower_circ_rule->{patron_maxissueqty} ne '') {
509
    if (defined($branch_borrower_circ_rule->{patron_maxissueqty}) and $branch_borrower_circ_rule->{patron_maxissueqty} ne '') {
510
        my @bind_params = ();
510
        my @bind_params = ();
511
        my $branch_count_query = q|
511
        my $branch_count_query = qq|
512
            SELECT COUNT(*) AS total, COALESCE(SUM(onsite_checkout), 0) AS onsite_checkouts
512
            SELECT COUNT(*) AS total, COALESCE(SUM(CASE WHEN checkout_type = '$Koha::Checkouts::type->{onsite_checkout}' THEN 1 ELSE 0 END), 0) AS onsite_checkouts
513
            FROM issues
513
            FROM issues
514
            JOIN items USING (itemnumber)
514
            JOIN items USING (itemnumber)
515
            WHERE borrowernumber = ?
515
            WHERE borrowernumber = ?
Lines 852-858 sub CanBookBeIssued { Link Here
852
        # If it is an on-site checkout if it can be switched to a normal checkout
852
        # If it is an on-site checkout if it can be switched to a normal checkout
853
        # or ask whether the loan should be renewed
853
        # or ask whether the loan should be renewed
854
854
855
        if ( $issue->onsite_checkout
855
        if ( $issue->is_onsite_checkout
856
                and C4::Context->preference('SwitchOnSiteCheckouts') ) {
856
                and C4::Context->preference('SwitchOnSiteCheckouts') ) {
857
            $messages{ONSITE_CHECKOUT_WILL_BE_SWITCHED} = 1;
857
            $messages{ONSITE_CHECKOUT_WILL_BE_SWITCHED} = 1;
858
        } else {
858
        } else {
Lines 902-908 sub CanBookBeIssued { Link Here
902
    my $switch_onsite_checkout = (
902
    my $switch_onsite_checkout = (
903
          C4::Context->preference('SwitchOnSiteCheckouts')
903
          C4::Context->preference('SwitchOnSiteCheckouts')
904
      and $issue
904
      and $issue
905
      and $issue->onsite_checkout
905
      and $issue->is_onsite_checkout
906
      and $issue->borrowernumber == $patron->borrowernumber ? 1 : 0 );
906
      and $issue->borrowernumber == $patron->borrowernumber ? 1 : 0 );
907
    my $toomany = TooMany( $patron_unblessed, $item_object, { onsite_checkout => $onsite_checkout, switch_onsite_checkout => $switch_onsite_checkout, } );
907
    my $toomany = TooMany( $patron_unblessed, $item_object, { onsite_checkout => $onsite_checkout, switch_onsite_checkout => $switch_onsite_checkout, } );
908
    # if TooMany max_allowed returns 0 the user doesn't have permission to check out this book
908
    # if TooMany max_allowed returns 0 the user doesn't have permission to check out this book
Lines 1419-1425 sub AddIssue { Link Here
1419
                issuedate       => $issuedate->strftime('%Y-%m-%d %H:%M:%S'),
1419
                issuedate       => $issuedate->strftime('%Y-%m-%d %H:%M:%S'),
1420
                date_due        => $datedue->strftime('%Y-%m-%d %H:%M:%S'),
1420
                date_due        => $datedue->strftime('%Y-%m-%d %H:%M:%S'),
1421
                branchcode      => C4::Context->userenv->{'branch'},
1421
                branchcode      => C4::Context->userenv->{'branch'},
1422
                onsite_checkout => $onsite_checkout,
1422
                checkout_type   => $onsite_checkout ?
1423
                        $Koha::Checkouts::type->{onsite_checkout}
1424
                      : $Koha::Checkouts::type->{checkout},
1423
                auto_renew      => $auto_renew ? 1 : 0,
1425
                auto_renew      => $auto_renew ? 1 : 0,
1424
            };
1426
            };
1425
1427
Lines 2721-2727 sub CanBookBeRenewed { Link Here
2721
2723
2722
    my $item      = Koha::Items->find($itemnumber)      or return ( 0, 'no_item' );
2724
    my $item      = Koha::Items->find($itemnumber)      or return ( 0, 'no_item' );
2723
    my $issue = $item->checkout or return ( 0, 'no_checkout' );
2725
    my $issue = $item->checkout or return ( 0, 'no_checkout' );
2724
    return ( 0, 'onsite_checkout' ) if $issue->onsite_checkout;
2726
    return ( 0, 'onsite_checkout' ) if $issue->is_onsite_checkout;
2725
    return ( 0, 'item_denied_renewal') if _item_denied_renewal({ item => $item });
2727
    return ( 0, 'item_denied_renewal') if _item_denied_renewal({ item => $item });
2726
2728
2727
    my $patron = $issue->patron or return;
2729
    my $patron = $issue->patron or return;
Lines 4106-4112 sub GetAgeRestriction { Link Here
4106
4108
4107
sub GetPendingOnSiteCheckouts {
4109
sub GetPendingOnSiteCheckouts {
4108
    my $dbh = C4::Context->dbh;
4110
    my $dbh = C4::Context->dbh;
4109
    return $dbh->selectall_arrayref(q|
4111
    return $dbh->selectall_arrayref(qq|
4110
        SELECT
4112
        SELECT
4111
          items.barcode,
4113
          items.barcode,
4112
          items.biblionumber,
4114
          items.biblionumber,
Lines 4127-4133 sub GetPendingOnSiteCheckouts { Link Here
4127
        LEFT JOIN issues ON items.itemnumber = issues.itemnumber
4129
        LEFT JOIN issues ON items.itemnumber = issues.itemnumber
4128
        LEFT JOIN biblio ON items.biblionumber = biblio.biblionumber
4130
        LEFT JOIN biblio ON items.biblionumber = biblio.biblionumber
4129
        LEFT JOIN borrowers ON issues.borrowernumber = borrowers.borrowernumber
4131
        LEFT JOIN borrowers ON issues.borrowernumber = borrowers.borrowernumber
4130
        WHERE issues.onsite_checkout = 1
4132
        WHERE issues.checkout_type = '$Koha::Checkouts::type->{onsite_checkout}'
4131
    |, { Slice => {} } );
4133
    |, { Slice => {} } );
4132
}
4134
}
4133
4135
(-)a/C4/Items.pm (-1 / +5 lines)
Lines 66-71 use Koha::AuthorisedValues; Link Here
66
use Koha::DateUtils qw(dt_from_string);
66
use Koha::DateUtils qw(dt_from_string);
67
use Koha::Database;
67
use Koha::Database;
68
68
69
use Koha::Checkouts;
69
use Koha::Biblioitems;
70
use Koha::Biblioitems;
70
use Koha::Items;
71
use Koha::Items;
71
use Koha::ItemTypes;
72
use Koha::ItemTypes;
Lines 672-678 sub GetItemsInfo { Link Here
672
           items.notforloan as itemnotforloan,
673
           items.notforloan as itemnotforloan,
673
           issues.borrowernumber,
674
           issues.borrowernumber,
674
           issues.date_due as datedue,
675
           issues.date_due as datedue,
675
           issues.onsite_checkout,
676
           issues.checkout_type,
676
           borrowers.cardnumber,
677
           borrowers.cardnumber,
677
           borrowers.surname,
678
           borrowers.surname,
678
           borrowers.firstname,
679
           borrowers.firstname,
Lines 728-733 sub GetItemsInfo { Link Here
728
        $data->{notforloanvalue}     = $descriptions->{lib} // '';
729
        $data->{notforloanvalue}     = $descriptions->{lib} // '';
729
        $data->{notforloanvalueopac} = $descriptions->{opac_description} // '';
730
        $data->{notforloanvalueopac} = $descriptions->{opac_description} // '';
730
731
732
        # is onsite checkout
733
        $data->{onsite_checkout}     = defined $data->{checkout_type} && $data->{checkout_type} eq $Koha::Checkouts::type->{onsite_checkout} ? 1 : 0;
734
731
        # get restricted status and description if applicable
735
        # get restricted status and description if applicable
732
        $descriptions = Koha::AuthorisedValues->get_description_by_koha_field({frameworkcode => $data->{frameworkcode}, kohafield => 'items.restricted', authorised_value => $data->{restricted} });
736
        $descriptions = Koha::AuthorisedValues->get_description_by_koha_field({frameworkcode => $data->{frameworkcode}, kohafield => 'items.restricted', authorised_value => $data->{restricted} });
733
        $data->{restrictedvalue}     = $descriptions->{lib} // '';
737
        $data->{restrictedvalue}     = $descriptions->{lib} // '';
(-)a/api/v1/swagger/definitions/checkout.json (-3 / +3 lines)
Lines 52-60 Link Here
52
      "format": "date-time",
52
      "format": "date-time",
53
      "description": "Date the item was issued"
53
      "description": "Date the item was issued"
54
    },
54
    },
55
    "onsite_checkout": {
55
    "checkout_type": {
56
      "type": "boolean",
56
      "type": ["string", "null"],
57
      "description": "On site checkout"
57
      "description": "Checkout type, an authorised value under CHECKOUT_TYPE category"
58
    },
58
    },
59
    "note": {
59
    "note": {
60
      "type": ["string", "null"],
60
      "type": ["string", "null"],
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/members/readingrec.tt (-1 / +2 lines)
Lines 4-9 Link Here
4
[% USE Koha %]
4
[% USE Koha %]
5
[% USE AuthorisedValues %]
5
[% USE AuthorisedValues %]
6
[% USE Branches %]
6
[% USE Branches %]
7
[% USE Checkouts %]
7
[% USE ColumnsSettings %]
8
[% USE ColumnsSettings %]
8
[% SET footerjs = 1 %]
9
[% SET footerjs = 1 %]
9
[% INCLUDE 'doc-head-open.inc' %]
10
[% INCLUDE 'doc-head-open.inc' %]
Lines 66-72 Link Here
66
      [% FOREACH issue IN loop_reading %]
67
      [% FOREACH issue IN loop_reading %]
67
        [% IF  issue.returndate  %]<tr>[% ELSE %]<tr class="onissue">[% END %]
68
        [% IF  issue.returndate  %]<tr>[% ELSE %]<tr class="onissue">[% END %]
68
          <td style="display:none;">
69
          <td style="display:none;">
69
            [% IF issue.onsite_checkout %][% issuetype = 'onsite_checkout' | html %]
70
            [% IF ( issue.checkout_type && issue.checkout_type == Checkouts.checkout_type.onsite_checkout ) %][% issuetype = 'onsite_checkout' | html %]
70
            [% ELSE %][% issuetype = 'standard_checkout' | html %]
71
            [% ELSE %][% issuetype = 'standard_checkout' | html %]
71
            [% END %]
72
            [% END %]
72
            [% issuetype | html %]
73
            [% issuetype | html %]
(-)a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js (-3 / +3 lines)
Lines 327-333 $(document).ready(function() { Link Here
327
                        }
327
                        }
328
328
329
                        var onsite_checkout = '';
329
                        var onsite_checkout = '';
330
                        if ( oObj.onsite_checkout == 1 ) {
330
                        if ( oObj.onsite_checkout ) {
331
                            onsite_checkout += " <span class='onsite_checkout'>(" + INHOUSE_USE + ")</span>";
331
                            onsite_checkout += " <span class='onsite_checkout'>(" + INHOUSE_USE + ")</span>";
332
                        }
332
                        }
333
333
Lines 507-513 $(document).ready(function() { Link Here
507
                            span_class = "renewals-allowed";
507
                            span_class = "renewals-allowed";
508
                        }
508
                        }
509
509
510
                        var can_force_renew = ( oObj.onsite_checkout == 0 ) &&
510
                        var can_force_renew = ( oObj.onsite_checkout ) &&
511
                            ( oObj.can_renew_error != "on_reserve" || (oObj.can_renew_error == "on_reserve" && AllowRenewalOnHoldOverride))
511
                            ( oObj.can_renew_error != "on_reserve" || (oObj.can_renew_error == "on_reserve" && AllowRenewalOnHoldOverride))
512
                            ? true : false;
512
                            ? true : false;
513
                        var can_renew = ( oObj.renewals_remaining > 0  && !oObj.can_renew_error );
513
                        var can_renew = ( oObj.renewals_remaining > 0  && !oObj.can_renew_error );
Lines 701-707 $(document).ready(function() { Link Here
701
                            }
701
                            }
702
702
703
                            var onsite_checkout = '';
703
                            var onsite_checkout = '';
704
                            if ( oObj.onsite_checkout == 1 ) {
704
                            if ( oObj.onsite_checkout ) {
705
                                onsite_checkout += " <span class='onsite_checkout'>(" + INHOUSE_USE + ")</span>";
705
                                onsite_checkout += " <span class='onsite_checkout'>(" + INHOUSE_USE + ")</span>";
706
                            }
706
                            }
707
707
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/includes/item-status.inc (-2 / +3 lines)
Lines 1-4 Link Here
1
[% USE AuthorisedValues %]
1
[% USE AuthorisedValues %]
2
[% USE Checkouts %]
2
[% SET itemavailable = 1 %]
3
[% SET itemavailable = 1 %]
3
4
4
[%#- This include takes two parameters: an item structure -%]
5
[%#- This include takes two parameters: an item structure -%]
Lines 18-27 Link Here
18
19
19
[% IF item.isa('Koha::Item') %]
20
[% IF item.isa('Koha::Item') %]
20
    [% SET datedue = issue.date_due %]
21
    [% SET datedue = issue.date_due %]
21
    [% SET onsite_checkout = issue.onsite_checkout %]
22
    [% SET onsite_checkout = ( issue.checkout_type && issue.checkout_type == Checkouts.checkout_type.onsite_checkout ) ? 1 : 0 %]
22
[% ELSE %]
23
[% ELSE %]
23
    [% SET datedue = item.datedue || issue.date_due %]
24
    [% SET datedue = item.datedue || issue.date_due %]
24
    [% SET onsite_checkout = item.onsite_checkout %]
25
    [% SET onsite_checkout = ( item.checkout_type && item.checkout_type == Checkouts.checkout_type.onsite_checkout ) ? 1 : 0 %]
25
[% END %]
26
[% END %]
26
[% IF datedue %]
27
[% IF datedue %]
27
    [% SET itemavailable = 0 %]
28
    [% SET itemavailable = 0 %]
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-readingrecord.tt (-1 / +2 lines)
Lines 1-6 Link Here
1
[% USE raw %]
1
[% USE raw %]
2
[% USE Koha %]
2
[% USE Koha %]
3
[% USE KohaDates %]
3
[% USE KohaDates %]
4
[% USE Checkouts %]
4
[% INCLUDE 'doc-head-open.inc' %]
5
[% INCLUDE 'doc-head-open.inc' %]
5
<title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog &rsaquo; Your checkout history</title>
6
<title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog &rsaquo; Your checkout history</title>
6
[% INCLUDE 'doc-head-close.inc' %]
7
[% INCLUDE 'doc-head-close.inc' %]
Lines 90-96 Link Here
90
                                            [% FOREACH issue IN READING_RECORD %]
91
                                            [% FOREACH issue IN READING_RECORD %]
91
                                                <tr>
92
                                                <tr>
92
                                                    <td style="display:none;">
93
                                                    <td style="display:none;">
93
                                                      [% IF issue.onsite_checkout %][% issuetype = 'onsite_checkout' %]
94
                                                      [% IF ( issue.checkout_type && issue.checkout_type == Checkouts.checkout_type.onsite_checkout ) %][% issuetype = 'onsite_checkout' %]
94
                                                      [% ELSE %][% issuetype = 'standard_checkout' %]
95
                                                      [% ELSE %][% issuetype = 'standard_checkout' %]
95
                                                      [% END %]
96
                                                      [% END %]
96
                                                      [% issuetype | html %]
97
                                                      [% issuetype | html %]
(-)a/svc/checkouts (-2 / +3 lines)
Lines 28-33 use C4::Overdues qw(GetFine); Link Here
28
use C4::Context;
28
use C4::Context;
29
29
30
use Koha::AuthorisedValues;
30
use Koha::AuthorisedValues;
31
use Koha::Checkouts;
31
use Koha::DateUtils;
32
use Koha::DateUtils;
32
use Koha::ItemTypes;
33
use Koha::ItemTypes;
33
34
Lines 69-75 my $sql = ' Link Here
69
        issues.date_due < now() as date_due_overdue,
70
        issues.date_due < now() as date_due_overdue,
70
        issues.timestamp,
71
        issues.timestamp,
71
72
72
        issues.onsite_checkout,
73
        issues.checkout_type,
73
74
74
        biblio.biblionumber,
75
        biblio.biblionumber,
75
        biblio.title,
76
        biblio.title,
Lines 220-226 while ( my $c = $sth->fetchrow_hashref() ) { Link Here
220
        date_due            => $c->{date_due},
221
        date_due            => $c->{date_due},
221
        date_due_overdue    => $c->{date_due_overdue} ? JSON::true : JSON::false,
222
        date_due_overdue    => $c->{date_due_overdue} ? JSON::true : JSON::false,
222
        timestamp           => $c->{timestamp},
223
        timestamp           => $c->{timestamp},
223
        onsite_checkout     => $c->{onsite_checkout},
224
        onsite_checkout     => $c->{checkout_type} ? ( $c->{checkout_type} eq $Koha::Checkouts::type->{onsite_checkout} ? 1 : 0 ) : 0,
224
        enumchron           => $c->{enumchron},
225
        enumchron           => $c->{enumchron},
225
        renewals_count      => $renewals_count,
226
        renewals_count      => $renewals_count,
226
        renewals_allowed    => $renewals_allowed,
227
        renewals_allowed    => $renewals_allowed,
(-)a/t/db_dependent/Circulation.t (-2 lines)
Lines 3136-3142 subtest 'ItemsDeniedRenewal preference' => sub { Link Here
3136
        auto_renew => 0,
3136
        auto_renew => 0,
3137
        borrowernumber => $idr_borrower->borrowernumber,
3137
        borrowernumber => $idr_borrower->borrowernumber,
3138
        itemnumber => $deny_book->itemnumber,
3138
        itemnumber => $deny_book->itemnumber,
3139
        onsite_checkout => 0,
3140
        date_due => $future,
3139
        date_due => $future,
3141
        }
3140
        }
3142
    });
3141
    });
Lines 3146-3152 subtest 'ItemsDeniedRenewal preference' => sub { Link Here
3146
        auto_renew => 0,
3145
        auto_renew => 0,
3147
        borrowernumber => $idr_borrower->borrowernumber,
3146
        borrowernumber => $idr_borrower->borrowernumber,
3148
        itemnumber => $allow_book->itemnumber,
3147
        itemnumber => $allow_book->itemnumber,
3149
        onsite_checkout => 0,
3150
        date_due => $future,
3148
        date_due => $future,
3151
        }
3149
        }
3152
    });
3150
    });
(-)a/t/db_dependent/Circulation/SwitchOnSiteCheckouts.t (-1 / +1 lines)
Lines 116-122 is( $messages->{ONSITE_CHECKOUT_WILL_BE_SWITCHED}, 1, 'If SwitchOnSiteCheckouts, Link Here
116
is( exists $impossible->{TOO_MANY}, '', 'If SwitchOnSiteCheckouts, switch the on-site checkout' );
116
is( exists $impossible->{TOO_MANY}, '', 'If SwitchOnSiteCheckouts, switch the on-site checkout' );
117
C4::Circulation::AddIssue( $patron_unblessed, $item->{barcode}, undef, undef, undef, undef, { switch_onsite_checkout => 1 } );
117
C4::Circulation::AddIssue( $patron_unblessed, $item->{barcode}, undef, undef, undef, undef, { switch_onsite_checkout => 1 } );
118
my $issue = Koha::Checkouts->find( { itemnumber => $item->{itemnumber} } );
118
my $issue = Koha::Checkouts->find( { itemnumber => $item->{itemnumber} } );
119
is( $issue->onsite_checkout, 0, 'The issue should have been switched to a regular checkout' );
119
is( $issue->checkout_type, $Koha::Checkouts::type->{checkout}, 'The issue should have been switched to a regular checkout' );
120
my $five_days_after = dt_from_string->add( days => 5 )->set( hour => 23, minute => 59, second => 0 );
120
my $five_days_after = dt_from_string->add( days => 5 )->set( hour => 23, minute => 59, second => 0 );
121
is( dt_from_string($issue->date_due, 'sql'), $five_days_after, 'The date_due should have been set depending on the circ rules when the on-site checkout has been switched' );
121
is( dt_from_string($issue->date_due, 'sql'), $five_days_after, 'The date_due should have been set depending on the circ rules when the on-site checkout has been switched' );
122
122
(-)a/t/db_dependent/Items.t (-1 / +3 lines)
Lines 315-321 subtest 'GetHiddenItemnumbers tests' => sub { Link Here
315
315
316
subtest 'GetItemsInfo tests' => sub {
316
subtest 'GetItemsInfo tests' => sub {
317
317
318
    plan tests => 9;
318
    plan tests => 10;
319
319
320
    $schema->storage->txn_begin;
320
    $schema->storage->txn_begin;
321
321
Lines 370-375 subtest 'GetItemsInfo tests' => sub { Link Here
370
        'GetItemsInfo returns the correct holding branch OPAC info notice' );
370
        'GetItemsInfo returns the correct holding branch OPAC info notice' );
371
    is( exists( $results[0]->{ onsite_checkout } ), 1,
371
    is( exists( $results[0]->{ onsite_checkout } ), 1,
372
        'GetItemsInfo returns a onsite_checkout key' );
372
        'GetItemsInfo returns a onsite_checkout key' );
373
    is( exists( $results[0]->{ checkout_type } ), 1,
374
        'GetItemsInfo returns a checkout_type key' );
373
    is( $results[0]->{ restricted }, 1,
375
    is( $results[0]->{ restricted }, 1,
374
        'GetItemsInfo returns a restricted value code' );
376
        'GetItemsInfo returns a restricted value code' );
375
    is( $results[0]->{ restrictedvalue }, "Restricted Access",
377
    is( $results[0]->{ restrictedvalue }, "Restricted Access",
(-)a/t/db_dependent/Koha/Account/Line.t (-3 lines)
Lines 360-366 subtest 'Renewal related tests' => sub { Link Here
360
            class => 'Koha::Checkouts',
360
            class => 'Koha::Checkouts',
361
            value => {
361
            value => {
362
                itemnumber      => $item->itemnumber,
362
                itemnumber      => $item->itemnumber,
363
                onsite_checkout => 0,
364
                renewals        => 99,
363
                renewals        => 99,
365
                auto_renew      => 0
364
                auto_renew      => 0
366
            }
365
            }
Lines 406-412 subtest 'Renewal related tests' => sub { Link Here
406
            class => 'Koha::Checkouts',
405
            class => 'Koha::Checkouts',
407
            value => {
406
            value => {
408
                itemnumber      => $item->itemnumber,
407
                itemnumber      => $item->itemnumber,
409
                onsite_checkout => 0,
410
                renewals        => 0,
408
                renewals        => 0,
411
                auto_renew      => 0
409
                auto_renew      => 0
412
            }
410
            }
413
- 

Return to bug 25037