From 0599f8924bcd3124d17e695ce0dddc8d3f4f3b16 Mon Sep 17 00:00:00 2001
From: Nick Clemens <nick@bywatersolutions.com>
Date: Fri, 28 Feb 2020 17:30:07 +0000
Subject: [PATCH] Bug 24476: Rename autorenewal to autorenew_checkouts
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
---
C4/Circulation.pm | 6 +++---
Koha/Patron.pm | 2 +-
api/v1/swagger/definitions/patron.json | 2 +-
api/v1/swagger/paths/patrons.json | 4 ++--
.../bug_24476_opt_out_of_auto_renewal.perl | 16 ++++++++--------
installer/data/mysql/kohastructure.sql | 6 +++---
.../prog/en/modules/circ/circulation.tt | 6 +++---
.../prog/en/modules/members/memberentrygen.tt | 22 +++++++++++-----------
.../prog/en/modules/members/members-update.tt | 2 +-
.../prog/en/modules/members/moremember-brief.tt | 2 +-
.../prog/en/modules/members/moremember.tt | 4 ++--
.../bootstrap/en/modules/opac-memberentry.tt | 22 +++++++++++-----------
misc/cronjobs/automatic_renewals.pl | 2 +-
t/db_dependent/Circulation.t | 16 ++++++++--------
14 files changed, 56 insertions(+), 56 deletions(-)
diff --git a/C4/Circulation.pm b/C4/Circulation.pm
index 3bc9841065..d544e14ee2 100644
--- a/C4/Circulation.pm
+++ b/C4/Circulation.pm
@@ -2751,7 +2751,7 @@ sub CanBookBeRenewed {
return ( 0, 'overdue');
}
- if ( $issue->auto_renew && $patron->autorenewal ) {
+ if ( $issue->auto_renew && $patron->autorenew_checkouts ) {
if ( $patron->category->effective_BlockExpiredPatronOpacActions and $patron->is_expired ) {
return ( 0, 'auto_account_expired' );
@@ -2807,10 +2807,10 @@ sub CanBookBeRenewed {
if ( $soonestrenewal > DateTime->now( time_zone => C4::Context->tz() ) )
{
- return ( 0, "auto_too_soon" ) if $issue->auto_renew && $patron->autorenewal;
+ return ( 0, "auto_too_soon" ) if $issue->auto_renew && $patron->autorenew_checkouts;
return ( 0, "too_soon" );
}
- elsif ( $issue->auto_renew && $patron->autorenewal ) {
+ elsif ( $issue->auto_renew && $patron->autorenew_checkouts ) {
$auto_renew = 1;
}
}
diff --git a/Koha/Patron.pm b/Koha/Patron.pm
index 331d7b9408..b8792861df 100644
--- a/Koha/Patron.pm
+++ b/Koha/Patron.pm
@@ -1671,7 +1671,7 @@ sub to_api_mapping {
smsalertnumber => 'sms_number',
sort1 => 'statistics_1',
sort2 => 'statistics_2',
- autorenewal => 'autorenewal',
+ autorenew_checkouts => 'autorenew_checkouts',
streetnumber => 'street_number',
streettype => 'street_type',
zipcode => 'postal_code',
diff --git a/api/v1/swagger/definitions/patron.json b/api/v1/swagger/definitions/patron.json
index cf5eedf52d..a4f998c04d 100644
--- a/api/v1/swagger/definitions/patron.json
+++ b/api/v1/swagger/definitions/patron.json
@@ -191,7 +191,7 @@
"type": ["string", "null"],
"description": "a field that can be used for any information unique to the library"
},
- "autorenewal": {
+ "autorenew_checkouts": {
"type": "boolean",
"description": "indicate whether auto-renewal is allowed for patron"
},
diff --git a/api/v1/swagger/paths/patrons.json b/api/v1/swagger/paths/patrons.json
index bb4efd3caf..c8798f28d5 100644
--- a/api/v1/swagger/paths/patrons.json
+++ b/api/v1/swagger/paths/patrons.json
@@ -296,9 +296,9 @@
"required": false,
"type": "string"
}, {
- "name": "autorenewal",
+ "name": "autorenew_checkouts",
"in": "query",
- "description": "Search on autorenewal",
+ "description": "Search on autorenew_checkouts",
"required": false,
"type": "boolean"
}, {
diff --git a/installer/data/mysql/atomicupdate/bug_24476_opt_out_of_auto_renewal.perl b/installer/data/mysql/atomicupdate/bug_24476_opt_out_of_auto_renewal.perl
index 9bc691bd9b..50edba9cc6 100644
--- a/installer/data/mysql/atomicupdate/bug_24476_opt_out_of_auto_renewal.perl
+++ b/installer/data/mysql/atomicupdate/bug_24476_opt_out_of_auto_renewal.perl
@@ -1,20 +1,20 @@
$DBversion = 'XXX';
if( CheckVersion( $DBversion ) ) {
- unless( column_exists('borrowers','autorenewal') ){
- $dbh->do( "ALTER TABLE borrowers ADD COLUMN autorenewal TINYINT(1) NOT NULL DEFAULT 1" );
+ unless( column_exists('borrowers','autorenew_checkouts') ){
+ $dbh->do( "ALTER TABLE borrowers ADD COLUMN autorenew_checkouts TINYINT(1) NOT NULL DEFAULT 1" );
}
- unless( column_exists('deletedborrowers','autorenewal') ){
- $dbh->do( "ALTER TABLE deletedborrowers ADD COLUMN autorenewal TINYINT(1) NOT NULL DEFAULT 1" );
+ unless( column_exists('deletedborrowers','autorenew_checkouts') ){
+ $dbh->do( "ALTER TABLE deletedborrowers ADD COLUMN autorenew_checkouts TINYINT(1) NOT NULL DEFAULT 1" );
}
- unless( column_exists('borrower_modifications','autorenewal') ){
- $dbh->do( "ALTER TABLE borrower_modifications ADD COLUMN autorenewal TINYINT(1) NOT NULL DEFAULT 1" );
+ unless( column_exists('borrower_modifications','autorenew_checkouts') ){
+ $dbh->do( "ALTER TABLE borrower_modifications ADD COLUMN autorenew_checkouts TINYINT(1) NOT NULL DEFAULT 1" );
}
$dbh->do(q{
UPDATE systempreferences
- SET value = CONCAT(value,'|autorenewal')
+ SET value = CONCAT(value,'|autorenew_checkouts')
WHERE variable IN
('PatronSelfModificationBorrowerUnwantedField','PatronSelfRegistrationBorrowerUnwantedField')
- AND value NOT LIKE '%autorenewal%'
+ AND value NOT LIKE '%autorenew_checkouts%'
});
SetVersion( $DBversion );
print "Upgrade to $DBversion done (Bug 24476 - Allow patrons to opt-out of autorenewal)\n";
diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql
index 28638ed6a4..5d9104e2cc 100644
--- a/installer/data/mysql/kohastructure.sql
+++ b/installer/data/mysql/kohastructure.sql
@@ -589,7 +589,7 @@ CREATE TABLE `deletedborrowers` ( -- stores data related to the patrons/borrower
`login_attempts` int(4) default 0, -- number of failed login attemps
`overdrive_auth_token` MEDIUMTEXT default NULL, -- persist OverDrive auth token
`anonymized` TINYINT(1) NOT NULL DEFAULT 0, -- flag for data anonymization
- `autorenewal` TINYINT(1) NOT NULL DEFAULT 1, -- flag for allowing auto-renewal
+ `autorenew_checkouts` TINYINT(1) NOT NULL DEFAULT 1, -- flag for allowing auto-renewal
KEY borrowernumber (borrowernumber),
KEY `cardnumber` (`cardnumber`),
KEY `sms_provider_id` (`sms_provider_id`)
@@ -1531,7 +1531,7 @@ CREATE TABLE `borrowers` ( -- this table includes information about your patrons
`login_attempts` int(4) default 0, -- number of failed login attemps
`overdrive_auth_token` MEDIUMTEXT default NULL, -- persist OverDrive auth token
`anonymized` TINYINT(1) NOT NULL DEFAULT 0, -- flag for data anonymization
- `autorenewal` TINYINT(1) NOT NULL DEFAULT 1, -- flag for allowing auto-renewal
+ `autorenew_checkouts` TINYINT(1) NOT NULL DEFAULT 1, -- flag for allowing auto-renewal
UNIQUE KEY `cardnumber` (`cardnumber`),
PRIMARY KEY `borrowernumber` (`borrowernumber`),
KEY `categorycode` (`categorycode`),
@@ -3439,7 +3439,7 @@ CREATE TABLE IF NOT EXISTS `borrower_modifications` (
`privacy` int(11) DEFAULT NULL,
`extended_attributes` MEDIUMTEXT DEFAULT NULL,
`gdpr_proc_consent` datetime, -- data processing consent
- `autorenewal` TINYINT(1) NOT NULL DEFAULT 1, -- flag for allowing auto-renewal
+ `autorenew_checkouts` TINYINT(1) NOT NULL DEFAULT 1, -- flag for allowing auto-renewal
PRIMARY KEY (`verification_token` (191),`borrowernumber`),
KEY `verification_token` (`verification_token` (191)),
KEY `borrowernumber` (`borrowernumber`)
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt
index feb3c3a5e6..167a20355b 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt
@@ -568,7 +568,7 @@
<div id="set-automatic-renewal" class="circ-setting">
[% IF NEEDSCONFIRMATION %]
[% IF auto_renew %]
- [% IF patron.autorenewal %]
+ [% IF patron.autorenew_checkouts %]
<input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled"
title="Patron has opted out of auto-renewal"/>
[% ELSE %]
@@ -578,9 +578,9 @@
<input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled" />
[% END %]
[% ELSE %]
- [% IF ( auto_renew && patron.autorenewal ) %]
+ [% IF ( auto_renew && patron.autorenew_checkouts ) %]
<input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" class="circ_setting" checked="checked" />
- [% ELSIF patron.autorenewal %]
+ [% ELSIF patron.autorenew_checkouts %]
<input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" class="circ_setting" />
[% ELSE %]
<input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled"
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
index 20ddc76026..967c41fb6b 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
@@ -874,28 +874,28 @@ legend:hover {
</li>
[% END # /UNLESS nosort2 %]
- [% UNLESS noautorenewal %]
+ [% UNLESS noautorenew_checkouts %]
<li class="radio">
- <label for="yes-autorenewal">
+ <label for="yes-autorenew_checkouts">
Allow auto-renewal of items:
</label>
- [% IF ( autorenewal ) %]
- <label for="yes-autorenewal">
+ [% IF ( autorenew_checkouts ) %]
+ <label for="yes-autorenew_checkouts">
Yes
- <input type="radio" id="yes-autorenewal" name="autorenewal" value="1" checked="checked" />
+ <input type="radio" id="yes-autorenew_checkouts" name="autorenew_checkouts" value="1" checked="checked" />
</label>
- <label for="no-autorenewal">
+ <label for="no-autorenew_checkouts">
No
- <input type="radio" id="no-autorenewal" name="autorenewal" value="0" />
+ <input type="radio" id="no-autorenew_checkouts" name="autorenew_checkouts" value="0" />
</label>
[% ELSE %]
- <label for="yes-autorenewal">
+ <label for="yes-autorenew_checkouts">
Yes
- <input type="radio" id="yes-autorenewal" name="autorenewal" value="1" />
+ <input type="radio" id="yes-autorenew_checkouts" name="autorenew_checkouts" value="1" />
</label>
- <label for="no-autorenewal">
+ <label for="no-autorenew_checkouts">
No
- <input type="radio" id="no-autorenewal" name="autorenewal" value="0" checked="checked" />
+ <input type="radio" id="no-autorenew_checkouts" name="autorenew_checkouts" value="0" checked="checked" />
</label>
[% END %]
</li>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/members-update.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/members-update.tt
index c16e432530..e250b9e7e4 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/members-update.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/members-update.tt
@@ -52,7 +52,7 @@
[% CASE 'contacttitle' %]<span>Contact: Title</span>
[% CASE 'relationship' %]<span>Contact: Relationship</span>
[% CASE 'sex' %]<span>Gender</span>
-[% CASE 'autorenewal' %]<span>Auto-renewal</span>
+[% CASE 'autorenew_checkouts' %]<span>Auto-renewal</span>
[% CASE 'altcontactfirstname' %]<span>Alternate contact: First name</span>
[% CASE 'altcontactsurname' %]<span>Alternate contact: Surname</span>
[% CASE 'altcontactaddress1' %]<span>Alternate contact: Address</span>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt
index ecac3b7f28..2eded98efb 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt
@@ -84,7 +84,7 @@
<li><span class="label">Library: </span>[% patron.library.branchname | html %]</li>
[% IF ( patron.sort1 ) %]<li><span class="label">Sort field 1:</span>[% AuthorisedValues.GetByCode('Bsort1', patron.sort1) | html %]</li>[% END %]
[% IF ( patron.sort2 ) %]<li><span class="label">Sort field 2:</span>[% AuthorisedValues.GetByCode('Bsort2', patron.sort2) | html %]</li>[% END %]
- [% UNLESS ( patron.autorenewal ) %]<li>Auto renewal: Patron has opted out</li>[% END %]
+ [% UNLESS ( patron.autorenew_checkouts ) %]<li>Auto renewal: Patron has opted out</li>[% END %]
</ol>
</div>
</div>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt
index 0e88be7989..801c0d7a80 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt
@@ -516,8 +516,8 @@
[% AuthorisedValues.GetByCode('Bsort2', patron.sort2) | html %]
</li>
[% END %]
- [% UNLESS ( patron.autorenewal ) %]
- <li id="patron-autorenewal">
+ [% UNLESS ( patron.autorenew_checkouts ) %]
+ <li id="patron-autorenew_checkouts">
<span class="label">Auto renewal:</span>
Patron has opted out
</li>
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-memberentry.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-memberentry.tt
index a2bcde4516..b5c5e3401f 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-memberentry.tt
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-memberentry.tt
@@ -258,29 +258,29 @@
[% END %]
</li>
[% END %]
- [% UNLESS hidden.defined('autorenewal') %]
+ [% UNLESS hidden.defined('autorenew_checkouts') %]
<li class="lradio">
- <label for="yes-autorenewal">
+ <label for="yes-autorenew_checkouts">
Allow auto-renewal:
</label>
- [% IF ( borrower.autorenewal ) %]
- <label class="radio inline" for="yes-autorenewal">
+ [% IF ( borrower.autorenew_checkouts ) %]
+ <label class="radio inline" for="yes-autorenew_checkouts">
Yes
- <input type="radio" id="yes-autorenewal" name="borrower_autorenewal" value="1" checked="checked" />
+ <input type="radio" id="yes-autorenew_checkouts" name="borrower_autorenew_checkouts" value="1" checked="checked" />
</label>
- <label class="radio inline" for="no-autorenewal">
+ <label class="radio inline" for="no-autorenew_checkouts">
No
- <input type="radio" id="no-autorenewal" name="borrower_autorenewal" value="0" />
+ <input type="radio" id="no-autorenew_checkouts" name="borrower_autorenew_checkouts" value="0" />
</label>
[% ELSE %]
- <label class="radio inline" for="yes-autorenewal">
+ <label class="radio inline" for="yes-autorenew_checkouts">
Yes
- <input type="radio" id="yes-autorenewal" name="borrower_autorenewal" value="1" />
+ <input type="radio" id="yes-autorenew_checkouts" name="borrower_autorenew_checkouts" value="1" />
</label>
- <label class="radio inline" for="no-autorenewal">
+ <label class="radio inline" for="no-autorenew_checkouts">
No
- <input type="radio" id="no-autorenewal" name="borrower_autorenewal" value="0" checked="checked" />
+ <input type="radio" id="no-autorenew_checkouts" name="borrower_autorenew_checkouts" value="0" checked="checked" />
</label>
[% END %]
</li>
diff --git a/misc/cronjobs/automatic_renewals.pl b/misc/cronjobs/automatic_renewals.pl
index a3bded3aea..a76f7dfb35 100755
--- a/misc/cronjobs/automatic_renewals.pl
+++ b/misc/cronjobs/automatic_renewals.pl
@@ -80,7 +80,7 @@ GetOptions(
pod2usage(0) if $help;
cronlogaction();
-my $auto_renews = Koha::Checkouts->search({ auto_renew => 1, 'borrower.autorenewal' => 1 },{ join => 'borrower'});
+my $auto_renews = Koha::Checkouts->search({ auto_renew => 1, 'borrower.autorenew_checkouts' => 1 },{ join => 'borrower'});
my %report;
$verbose = 1 unless $verbose or $confirm;
diff --git a/t/db_dependent/Circulation.t b/t/db_dependent/Circulation.t
index 72dd1d2948..6d7e4b4c92 100755
--- a/t/db_dependent/Circulation.t
+++ b/t/db_dependent/Circulation.t
@@ -657,10 +657,10 @@ subtest "CanBookBeRenewed tests" => sub {
- $renewing_borrower_obj->autorenewal(0)->store;
+ $renewing_borrower_obj->autorenew_checkouts(0)->store;
( $renewokay, $error ) = CanBookBeRenewed( $renewing_borrowernumber, $item_4->itemnumber );
is( $renewokay, 1, 'No renewal before is undef, but patron opted out of auto_renewal' );
- $renewing_borrower_obj->autorenewal(1)->store;
+ $renewing_borrower_obj->autorenew_checkouts(1)->store;
# Bug 7413
@@ -706,11 +706,11 @@ subtest "CanBookBeRenewed tests" => sub {
'Bug 14101: Cannot renew, renewal is automatic and premature (returned code is auto_too_soon)'
);
- $renewing_borrower_obj->autorenewal(0)->store;
+ $renewing_borrower_obj->autorenew_checkouts(0)->store;
( $renewokay, $error ) = CanBookBeRenewed( $renewing_borrowernumber, $item_4->itemnumber );
is( $renewokay, 0, 'No renewal before is 7, patron opted out of auto_renewal still cannot renew early' );
is( $error, 'too_soon', 'Error is too_soon, no auto' );
- $renewing_borrower_obj->autorenewal(1)->store;
+ $renewing_borrower_obj->autorenew_checkouts(1)->store;
# Change policy so that loans can only be renewed exactly on due date (0 days prior to due date)
# and test automatic renewal again
@@ -722,11 +722,11 @@ subtest "CanBookBeRenewed tests" => sub {
'Bug 14101: Cannot renew, renewal is automatic and premature, "No renewal before" = 0 (returned code is auto_too_soon)'
);
- $renewing_borrower_obj->autorenewal(0)->store;
+ $renewing_borrower_obj->autorenew_checkouts(0)->store;
( $renewokay, $error ) = CanBookBeRenewed( $renewing_borrowernumber, $item_4->itemnumber );
is( $renewokay, 0, 'No renewal before is 0, patron opted out of auto_renewal still cannot renew early' );
is( $error, 'too_soon', 'Error is too_soon, no auto' );
- $renewing_borrower_obj->autorenewal(1)->store;
+ $renewing_borrower_obj->autorenew_checkouts(1)->store;
# Change policy so that loans can be renewed 99 days prior to the due date
# and test automatic renewal again
@@ -738,10 +738,10 @@ subtest "CanBookBeRenewed tests" => sub {
'Bug 14101: Cannot renew, renewal is automatic (returned code is auto_renew)'
);
- $renewing_borrower_obj->autorenewal(0)->store;
+ $renewing_borrower_obj->autorenew_checkouts(0)->store;
( $renewokay, $error ) = CanBookBeRenewed( $renewing_borrowernumber, $item_4->itemnumber );
is( $renewokay, 1, 'No renewal before is 99, patron opted out of auto_renewal so can renew' );
- $renewing_borrower_obj->autorenewal(1)->store;
+ $renewing_borrower_obj->autorenew_checkouts(1)->store;
subtest "too_late_renewal / no_auto_renewal_after" => sub {
plan tests => 14;
--
2.11.0