Bug 26517: Avoid deleting patrons with permission
authorFridolin Somers <fridolin.somers@biblibre.com>
Wed, 23 Sep 2020 14:50:09 +0000 (16:50 +0200)
committerFridolin Somers <fridolin.somers@biblibre.com>
Wed, 7 Apr 2021 08:29:31 +0000 (10:29 +0200)
commit550577ed3a003231284f59ba3084a365a8ed04e5
tree20fc5bb5a44c397c3f2d03eaec9bbf9ad92ab7ca
parentf0422f6a29c13dd1a9aa60a632747695cf1b796b
Bug 26517: Avoid deleting patrons with permission

The patron deletion script misc/cronjobs/delete_patrons.pl uses C4::Member::GetBorrowersToExpunge() to get patrons that may be deleted.
This method filters patrons from a staff category.
I propose to also filter patrons having permission, so a staff member.
Some small libraries do not define a "staff" category and give permissions to regular patrons.

Test plan :
1) Create a patron on adult type category with expiry date in the past and permission to access staff interface
2) Without patch
3) Run delete script : ./src/misc/cronjobs/delete_patrons.pl -v --expired_before='$(date -I)'
4) You see the patron will be deleted
5) Apply patch
6) Run delete script : ./src/misc/cronjobs/delete_patrons.pl -v --expired_before='$(date -I)'
7) You dont see the patron

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit c4c33e532d4abeb66bbbafe0ab75797a8e801349)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
C4/Members.pm