Summary: | Non-patron guarantor info not dropped when patron category is updated | ||
---|---|---|---|
Product: | Koha | Reporter: | Emmi Takkinen <emmi.takkinen> |
Component: | Patrons | Assignee: | Emmi Takkinen <emmi.takkinen> |
Status: | In Discussion --- | QA Contact: | Testopia <testopia> |
Severity: | minor | ||
Priority: | P5 - low | CC: | david, gmcharlt, kyle.m.hall, m.de.rooy, martin.renvoize |
Version: | Main | ||
Hardware: | All | ||
OS: | All | ||
See Also: |
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=39331 https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=39363 https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32195 |
||
GIT URL: | Change sponsored?: | --- | |
Patch complexity: | --- | Documentation contact: | |
Documentation submission: | Text to go in the release notes: |
This fixes the misc/cronjobs/update_patrons_category.pl script so that non-patron guarantor information is removed when the patron category is changed (for example, from a child to an adult patron).
This now matches what happens when changing the patron category when a patron has patron guarantors (that is, the guarantor information is removed).
|
|
Version(s) released in: | Circulation function: | ||
Attachments: |
Bug 39233: Drop non-patron guarantor info when guarantee is updated as an adult via update_patrons_category.pl
Bug 39233: Drop non-patron guarantor info when guarantee is updated as an adult via update_patrons_category.pl |
Description
Emmi Takkinen
2025-03-04 10:47:31 UTC
Created attachment 181364 [details] [review] Bug 39233: Drop non-patron guarantor info when guarantee is updated as an adult via update_patrons_category.pl When child patrons category is updated via update_patrons_category.pl patrons relationship with their guarantor is dropped from borrower_relationships table. But non-patron guarantees info is still kept in borrowers table. This patch fixes this by setting non-patron guarantor columns in borrower table as undefined when patron is stored. To test: 1. Find child patron with non-patron guarantor or create one. 2. Update patrons age so that their category is updated when you run following: perl misc/cronjobs/update_patrons_category.pl --confirm --too_old --from K --to PT 3. Check patrons info from patrons detail page. => Note that non-patron guarantors info was not dropped. 4. Apply this patch. 5. Run cronjob again. => Non-patron guarantors info should have now dropped. Alsp prove t/db_dependent/Patrons.t. Sponsored-by: Koha-Suomi Oy Created attachment 181827 [details] [review] Bug 39233: Drop non-patron guarantor info when guarantee is updated as an adult via update_patrons_category.pl When child patrons category is updated via update_patrons_category.pl patrons relationship with their guarantor is dropped from borrower_relationships table. But non-patron guarantees info is still kept in borrowers table. This patch fixes this by setting non-patron guarantor columns in borrower table as undefined when patron is stored. To test: 1. Find child patron with non-patron guarantor or create one. 2. Update patrons age so that their category is updated when you run following: perl misc/cronjobs/update_patrons_category.pl --confirm --too_old --from K --to PT 3. Check patrons info from patrons detail page. => Note that non-patron guarantors info was not dropped. 4. Apply this patch. 5. Run cronjob again. => Non-patron guarantors info should have now dropped. Alsp prove t/db_dependent/Patrons.t. Sponsored-by: Koha-Suomi Oy Signed-off-by: David Nind <david@davidnind.com> Testing notes (using KTD): 1. If I try to update the patron's age in the staff interface, I get this message: The following fields are wrong. Please fix them. - Patron's age is incorrect for their category. Ages allowed are 5-17. 2. You can't save the patron until you fix the category. 3. Instead, I updated in the database: update borrowers set dateofbirth="2000-05-01" where borrowernumber="37"; 4. After the patch is applied, update the patron again using the database to set the patron category back to "K": update borrowers set categorycode="K" where borrowernumber="37"; I'm considering asking for a switch for this.. I could see cases where this cleanup being automated may not be wanted. |