For an registered patron, the page /cgi-bin/koha/opac-memberentry.pl displays his personal details and allow him to ask for a change. In this page mandatory fields are wrong. It uses PatronSelfRegistrationBorrowerMandatoryField instead of BorrowerMandatoryField.
I am not sure if it's wrong - it seems like it might be intended behaviour. The library staff might have a different set of fields to fill out then the patron. I am not sure, but i think it earlier versions we didn't check for mandatory fields at all.
(In reply to Katrin Fischer from comment #1) > I am not sure if it's wrong - it seems like it might be intended behaviour. > The library staff might have a different set of fields to fill out then the > patron. > I am not sure, but i think it earlier versions we didn't check for mandatory > fields at all. Indeed, but in case the preference PatronSelfRegistration is off, one should not have to configure the preference PatronSelfRegistrationBorrowerMandatoryField. For me this preference only applies to the self-registration form.
It is not possible with Koha 17.05.05 to configure a set of mandatory fields in SelfRegistration and at the same time configure another set of mandatory fields in SelfModification. This seems to be a design flaw. E.g. we would like to have Address2 field mandatory in SelfRegistration but optional in SelfModification.
Hi Ola, have you seen PatronSelfModificationBorrowerUnwantedField? I think this bug might be resolved with the newer preference.
Hi Katrin! Yes I have seen PatronSelfModificationBorrowerUnwantedField. The problem is if you like us would like to keep Address2 field in both SelfRegistration and SelfModification but have it as an optional fields in SelfModification and a compulsory field in SelfRegistration. This configuration seems impossible with Koha settings.
Ah, I think I got it now. So we should differentiate between modification and registration for the mandatory fields as well: PatronSelfRegistrationBorrowerUnwantedField PatronSelfModificationBorrowerUnwantedField PatronSelfRegistrationBorrowerMandatoryField TODO: PatronSelfModificationBorrowerMandatoryField Just wondering: why ask for it as mandatory on registration when it is not needed later on?
Hi Katrin! We would like to enable self registration to our employees only and they are required to enter their department in Address field 2. However in the OPAC we have enabled self modification for all patrons and here address field 2 can be empty for patrons such as students.
Hi Ola, thx for explaining the use case!
Any updates on bug 13188? Carnegie team.
A more or less related problem: If you set password as mandatory in PatronSelfRegistrationBorrowerMandatoryField it does not show up in the edit form (there is a separate screen for changing the password), and the edit form can never be submitted successfully. With a new syspref PatronSelfModificationBorrowerMandatoryField it would be possible to set it as not mandatory in the edit screen.
(In reply to Magnus Enger from comment #10) > A more or less related problem: If you set password as mandatory in > PatronSelfRegistrationBorrowerMandatoryField it does not show up in the edit > form (there is a separate screen for changing the password), and the edit > form can never be submitted successfully. > > With a new syspref PatronSelfModificationBorrowerMandatoryField it would be > possible to set it as not mandatory in the edit screen. This peculiar problem with password field is very annoying (at BULAC, we experience it since we update in 18.05, was working on 16.11), shouldn't we open a new ticket to solve this specific point, if no one can work the new syspref ?
*** Bug 24174 has been marked as a duplicate of this bug. ***
PatronSelfModificationBorrowerMandatoryField looks as a strange name to me. Maybe OpacBorrowerMandatoryField ?
(In reply to Fridolin Somers from comment #13) > PatronSelfModificationBorrowerMandatoryField looks as a strange name to me. > > Maybe OpacBorrowerMandatoryField ? +1
Created attachment 115371 [details] [review] Bug 13188: Add PatronSelfModificationMandatoryField system preference TEST PLAN: 1. Apply patch, updatedatabase, restart_all 2. In the PatronSelfRegistrationBorrowerMandatoryField add the field password. 3. Go to the self registration page on make sure password is required. 4. Now go to the OPAC modification page, make some changes and attempt to submit. It should work. 5. Go to PatronSelfModificationMandatoryField and select some fields. 6. The columns you selected should now be required. 7. On the PatronSelfModificationMandatoryField page, make sure the select all and clear all buttons work. NOTE: This patch is not ready for sign-off, I would like to see Bug 17364 make it in so I can easily add exclusions. For example, you should not be able to make password required for borrower modification, if you do you will see the warning 'You have not filled out all required fields. Please fill in all missing fields and resubmit.'.
Created attachment 115372 [details] [review] Bug 13188: Add PatronSelfModificationMandatoryField system preference TEST PLAN: 1. Apply patch, updatedatabase, restart_all 2. In the PatronSelfRegistrationBorrowerMandatoryField add the field password. 3. Go to the self registration page on make sure password is required. 4. Now go to the OPAC modification page, make some changes and attempt to submit. It should work. 5. Go to PatronSelfModificationMandatoryField and select some fields. 6. The columns you selected should now be required. 7. On the PatronSelfModificationMandatoryField page, make sure the select all and clear all buttons work. NOTE: This patch is not ready for sign-off, I would like to see Bug 17364 make it in so I can easily add exclusions. For example, you should not be able to make password required for borrower modification, if you do you will see the warning 'You have not filled out all required fields. Please fill in all missing fields and resubmit.'.
Created attachment 116085 [details] [review] Bug 13188: Add PatronSelfModificationMandatoryField system preference TEST PLAN: 1. Apply patch, updatedatabase, restart_all 2. In the PatronSelfRegistrationBorrowerMandatoryField add the field password. 3. Go to the self registration page on make sure password is required. 4. Now go to the OPAC modification page, make some changes and attempt to submit. It should work. 5. Go to PatronSelfModificationMandatoryField and select some fields. 6. The columns you selected should now be required. 7. On the PatronSelfModificationMandatoryField page, make sure the select all and clear all buttons work.
Created attachment 122752 [details] [review] Bug 13188: Add PatronSelfModificationMandatoryField system preference TEST PLAN: 1. Apply patch, updatedatabase, restart_all 2. In the PatronSelfRegistrationBorrowerMandatoryField add the field password. 3. Go to the self registration page on make sure password is required. 4. Now go to the OPAC modification page, make some changes and attempt to submit. It should work. 5. Go to PatronSelfModificationMandatoryField and select some fields. 6. The columns you selected should now be required. 7. On the PatronSelfModificationMandatoryField page, make sure the select all and clear all buttons work. Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com>
*** Bug 23891 has been marked as a duplicate of this bug. ***
Excited for this one
The new pref should get the value from PatronSelfRegistrationBorrowerMandatoryField as default to preserve behaviour before the patch
Created attachment 123335 [details] [review] Bug 13188: (follow-up) Get value from PatronSelfRegistrationBorrowerMandatoryField when updating database
Created attachment 125272 [details] [review] Bug 13188: Add PatronSelfModificationMandatoryField system preference TEST PLAN: 1. Apply patch, updatedatabase, restart_all 2. In the PatronSelfRegistrationBorrowerMandatoryField add the field password. 3. Go to the self registration page on make sure password is required. 4. Now go to the OPAC modification page, make some changes and attempt to submit. It should work. 5. Go to PatronSelfModificationMandatoryField and select some fields. 6. The columns you selected should now be required. 7. On the PatronSelfModificationMandatoryField page, make sure the select all and clear all buttons work. Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 125273 [details] [review] Bug 13188: (follow-up) Get value from PatronSelfRegistrationBorrowerMandatoryField when updating database Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 125274 [details] [review] Bug 13188: (QA follow-up) Modernise atomicupdate
Nice one.. Passing QA
Considering this a new enhancement. And postponing to 22.05, this script bring us too much mess this cycle.
Great enhancement but I found some issues in db changes
Created attachment 128409 [details] [review] Bug 13188: (RM follow-up) Several fixes on db changes Several issues with the atomic update: - File must to be .pl - File must be executable : chmod a+x - Syspref type is 'free' not 'multiple' Small addition in atomic update: I've added a print of syspref name and value, this can be usefull for upgrade logs. Also a minor issue in installer/data/mysql/mandatory/sysprefs.sql : The description whas different from the atomic update. I choose that atomic update is correct. Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Another point : Since in opac.pref, syspref PatronSelfModificationBorrowerUnwantedField and PatronSelfRegistrationBorrowerMandatoryField contain : exclusions: sort1|sort2 https://git.koha-community.org/Koha-community/Koha/src/commit/b0767f94d07950e7420deb901b208d131427c535/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref#L837 So should new syspref PatronSelfModificationMandatoryField ?
I'd like a new QA on this please.
Created attachment 128413 [details] [review] Bug 13188: Add PatronSelfModificationMandatoryField system preference TEST PLAN: 1. Apply patch, updatedatabase, restart_all 2. In the PatronSelfRegistrationBorrowerMandatoryField add the field password. 3. Go to the self registration page on make sure password is required. 4. Now go to the OPAC modification page, make some changes and attempt to submit. It should work. 5. Go to PatronSelfModificationMandatoryField and select some fields. 6. The columns you selected should now be required. 7. On the PatronSelfModificationMandatoryField page, make sure the select all and clear all buttons work. Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 128414 [details] [review] Bug 13188: (follow-up) Get value from PatronSelfRegistrationBorrowerMandatoryField when updating database Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 128415 [details] [review] Bug 13188: (QA follow-up) Modernise atomicupdate Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 128416 [details] [review] Bug 13188: (RM follow-up) Several fixes on db changes Several issues with the atomic update: - File must to be .pl - File must be executable : chmod a+x - Syspref type is 'free' not 'multiple' Small addition in atomic update: I've added a print of syspref name and value, this can be usefull for upgrade logs. Also a minor issue in installer/data/mysql/mandatory/sysprefs.sql : The description whas different from the atomic update. I choose that atomic update is correct. Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 128417 [details] [review] Bug 13188: Fix alphabetic order in sysprefs.sql As a librarian I had to. Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 128418 [details] [review] Bug 13188: (QA follow-up) Enhance list of field exclusions It doesn't make sense to allow for fields not visible in the OPAC form to be made mandatory. This patch specifically adds: * opacnote * borrowernotes * sort 1 and sort2 (missing only from Modification) PatronSelfRegistrationBorrowerMandatoryField exclusions: sort1|sort2|opacnote|borrowernotes PatronSelfModificationMandatoryField exclusions: password|cardnumber|dateexpiry|categorycode|sort1|sort2|opacnote|borrowernotes Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
I think the lists of exclusions have probably still some room for improvement, but this should be ok for now.
Pushed to master for 22.05, thanks to everybody involved [U+1F984]
Added Manual keyword for 22.05 bugs that I consider require documentation changes. See bug 29640 and the linked spreadsheet for additional details.
I know it's too late, but I was thinking the other day that it would be nice to be able to have different mandatory fields for different patron types. The reason being that I've seen libraries workaround mandatory fields for some patron categories by inserting junk data (like '-' or 'N/A'). Of course, using a system preference for a default set of mandatory fields makes sense. Anyway, just food for thought.
Re-opening to add Documentation status
Manual updated.