Bug 13497: Remove the pref AddPatronsLists

The pref AddPatronLists does not work as expected if 'generic' is
selected.
Indeed a patron should be linked to a valid patron category (see the
constraint borrowers_ibfk_1 in the DB structure).

Test plan:
0/ Confirm that the AddPatronLists does not work as expected if you choose
the generic patron types.
1/ Delete all you patron categories and check that the interface invites
you to create one.
2/ Confirm that you are able to create a patron and to link it to a patron
category you have created.

I could not verify step 1/, because at least one Patron category
can not be deleted (Staff, since I'm logged in as a Staff patron
and you can not delete categories that are in use).
Tested 0/ and 2/
Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes QA script and tests.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
This commit is contained in:
Jonathan Druart 2014-12-29 15:18:08 +01:00 committed by Tomas Cohen Arazi
parent 4261a5193d
commit 5bbf1aa674
7 changed files with 16 additions and 33 deletions

View File

@ -276,7 +276,6 @@ sub BuildReport {
TrackClicks
PatronSelfRegistration
OPACShelfBrowser
AddPatronLists
AutoEmailOpacUser
AutoEmailPrimaryAddress
autoMemberNum

View File

@ -206,13 +206,10 @@ my $borrowerslist;
my $message;
if ($findborrower) {
my $borrowers = Search($findborrower, 'cardnumber') || [];
if (C4::Context->preference("AddPatronLists")) {
if (C4::Context->preference("AddPatronLists")=~/code/){
my $categories = GetBorrowercategoryList;
$categories->[0]->{'first'} = 1;
$template->param(categories=>$categories);
}
}
my $categories = GetBorrowercategoryList;
$categories->[0]->{first} = 1;
$template->param( categories => $categories );
if ( @$borrowers == 0 ) {
$query->param( 'findborrower', '' );
$message = "'$findborrower'";

View File

@ -6,7 +6,6 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `
('AcquisitionDetails', '1', '', 'Hide/Show acquisition details on the biblio detail page.', 'YesNo'),
('AcqViewBaskets','user','user|branch|all','Define which baskets a user is allowed to view: his own only, any within his branch or all','Choice'),
('AcqWarnOnDuplicateInvoice','0','','Warn librarians when they try to create a duplicate invoice','YesNo'),
('AddPatronLists','categorycode','categorycode|category_type','Allow user to choose what list to pick up from when adding patrons','Choice'),
('advancedMARCeditor','0','','If ON, the MARC editor won\'t display field/subfield descriptions','YesNo'),
('AdvancedSearchLanguages','','','ISO 639-2 codes of languages you wish to see appear as an Advanced search option. Example: eng|fre|ita','Textarea'),
('AdvancedSearchTypes','itemtypes','itemtypes|ccode','Select which set of fields comprise the Type limit in the advanced search','Choice'),

View File

@ -10009,6 +10009,15 @@ if ( CheckVersion($DBversion) ) {
SetVersion($DBversion);
}
$DBversion = "3.19.00.XXX";
if ( CheckVersion($DBversion) ) {
$dbh->do(q|
DELETE FROM systempreferences where variable = 'AddPatronLists'
|);
print "Upgrade to $DBversion done (Bug XXXXX - Remove the AddPatronLists system preferences)\n";
SetVersion ($DBversion);
}
# DEVELOPER PROCESS, search for anything to execute in the db_update directory
# SEE bug 13068
# if there is anything in the atomicupdate, read and execute it.

View File

@ -3,16 +3,7 @@
<div class="btn-group">
<button class="btn btn-small dropdown-toggle" data-toggle="dropdown"><i class="icon-plus"></i> New patron <span class="caret"></span></button>
<ul class="dropdown-menu">
[% IF Koha.Preference('AddPatronLists') == 'categorycode' %]
[% FOREACH categorie IN categories %]<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;categorycode=[% categorie.categorycode %]">[% categorie.description %]</a></li>[% END %]
[% ELSE %]
<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;category_type=A">Adult patron</a></li>
<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;category_type=C">Child patron</a></li>
<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;category_type=P">Professional patron</a></li>
<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;category_type=I">Organization</a></li>
<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;category_type=S">Staff patron</a></li>
<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;category_type=X">Statistical patron</a></li>
[% END %]
[% FOREACH categorie IN categories %]<li><a href="/cgi-bin/koha/members/memberentry.pl?op=add&amp;categorycode=[% categorie.categorycode %]">[% categorie.description %]</a></li>[% END %]
</ul>
</div>
</div>

View File

@ -1,12 +1,5 @@
Patrons:
General:
-
- List
- pref: AddPatronLists
choices:
categorycode: specific categories
category_type: general patron types
- under the new patron menu.
-
- pref: AutoEmailOpacUser
choices:

View File

@ -67,7 +67,6 @@ if ( C4::Branch::onlymine ) {
}
my @categories;
my $no_categories;
my $no_add = 0;
if(scalar(@branchloop) < 1){
$no_add = 1;
@ -78,14 +77,10 @@ else {
}
@categories=C4::Category->all;
if(scalar(@categories) < 1){
$no_categories = 1;
}
if($no_categories && C4::Context->preference("AddPatronLists")=~/code/){
if(scalar(@categories) < 1){
$no_add = 1;
$template->param(no_categories => 1);
}
}
else {
$template->param(categories=>\@categories);
}