From 3c54d646d84a29c779198ce52eee34d496089215 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Wed, 14 Sep 2022 11:27:03 +0000 Subject: [PATCH] Bug 31562: [22.05.x] Treat flags as other borrower fields Rather than generate a custom hash for these fields, we should treat them as other borrower data fields To test: 1 - Edit a patron, note the 'Lost card' and 'Gone no address' fields 2 - Edit syspref BorrowerunwantedField 3 - Set gonenoaddress and lost as unwanted 4 - Edit patron, the fields remain 5 - Apply patch 6 - Edit a patron, fields are hidden 7 - Unhide one of the fields 8 - Edit a patron and confirm it shows and saves correctly 9 - Unhide the other field 10 - Confirm it can be edited and saved Signed-off-by: David Nind Signed-off-by: Martin Renvoize Bug 31562: Remove gonenoaddress and lost from OPAC borrower field preferences These are not shown, so cannot be unwanted or mandatory Signed-off-by: David Nind Signed-off-by: Martin Renvoize Bug 31562: Respect mandatory fields pref To test: 1 - Set gonenoaddress and lost in BorrowerMandatoryField 2 - Edit a patron, confirm fields are required Signed-off-by: David Nind Signed-off-by: Martin Renvoize --- .../en/modules/admin/preferences/opac.pref | 8 +-- .../prog/en/modules/members/memberentrygen.tt | 71 +++++++++++++++---- members/memberentry.pl | 24 ------- 3 files changed, 60 insertions(+), 43 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref index cd7e2836f0..808516ce7c 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref @@ -802,25 +802,25 @@ OPAC: - pref: PatronSelfModificationMandatoryField type: modalselect source: borrowers - exclusions: password|cardnumber|dateexpiry|categorycode|sort1|sort2|opacnote|borrowernotes + exclusions: password|cardnumber|dateexpiry|categorycode|sort1|sort2|opacnote|borrowernotes|gonenoaddress|lost - - "The following database columns must be filled in on the patron entry screen:" - pref: PatronSelfRegistrationBorrowerMandatoryField type: modalselect source: borrowers - exclusions: sort1|sort2|opacnote|borrowernotes + exclusions: sort1|sort2|opacnote|borrowernotes|gonenoaddress|lost - - "The following database columns will not appear on the patron self-registration screen:" - pref: PatronSelfRegistrationBorrowerUnwantedField type: modalselect source: borrowers - exclusions: branchcode|sort1|sort2 + exclusions: branchcode|sort1|sort2|gonenoaddress|lost - - "The following database columns will not appear on the patron self-modification screen:" - pref: PatronSelfModificationBorrowerUnwantedField type: modalselect source: borrowers - exclusions: sort1|sort2 + exclusions: sort1|sort2|gonenoaddress|lost - - "Display the following additional instructions for patrons who self register via the OPAC ( HTML is allowed ):" - pref: PatronSelfRegistrationAdditionalInstructions 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 7da8ffc685..1d4d09b84a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt @@ -1288,38 +1288,79 @@ legend:hover { [% END # UNLESS nouserid && nopassword && !CanUpdatePasswordExpiration %] - [% UNLESS ( opadd || opduplicate ) %] + [% UNLESS ( opadd || opduplicate || ( nogonenoaddress && nolost ) ) %]
Patron account flags
    - [% FOREACH flagloo IN flagloop %] + [% UNLESS nogonenoaddress %]
  1. -
  2. + + [% END # /UNLESS nogonenoaddress %] + [% UNLESS nolost %] +
  3. + [% IF mandatorylost %] +
  4. - [% END # /FOREACH flagloo %] + [% END # /UNLESS nogonenoaddress %]
diff --git a/members/memberentry.pl b/members/memberentry.pl index 9118a0b508..344be77070 100755 --- a/members/memberentry.pl +++ b/members/memberentry.pl @@ -724,29 +724,6 @@ while (@relationships) { push(@relshipdata, \%row); } -my %flags = ( - 'gonenoaddress' => ['gonenoaddress'], - 'lost' => ['lost'] -); - -my @flagdata; -foreach ( keys(%flags) ) { - my $key = $_; - my %row = ( - 'key' => $key, - 'name' => $flags{$key}[0] - ); - if ( $data{$key} ) { - $row{'yes'} = ' checked'; - $row{'no'} = ''; - } - else { - $row{'yes'} = ''; - $row{'no'} = ' checked'; - } - push @flagdata, \%row; -} - # get Branch Loop # in modify mod: userbranch value comes from borrowers table # in add mod: userbranch value comes from branches table (ip correspondence) @@ -839,7 +816,6 @@ $template->param( borrowernumber => $borrowernumber, #register number relshiploop => \@relshipdata, btitle=> $default_borrowertitle, - flagloop => \@flagdata, category_type =>$category_type, modify => $modify, nok => $nok,#flag to know if an error -- 2.30.2