Bug 26517: Avoid deleting patrons with permission
authorFridolin Somers <fridolin.somers@biblibre.com>
Wed, 23 Sep 2020 14:50:09 +0000 (16:50 +0200)
committerVictor Grousset/tuxayo <victor@tuxayo.net>
Thu, 22 Apr 2021 14:56:21 +0000 (16:56 +0200)
commited12168b812876cabeeec28ef19d44fac7c83b18
tree4af774403031e3b022356c3cf081ad53fddaa071
parentf7a988503b21dd3bae101f364a846076d4debbf8
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>
(cherry picked from commit 550577ed3a003231284f59ba3084a365a8ed04e5)

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
(cherry picked from commit 11f271455d02f0649b3f0a7005ec3fb0e2137b00)
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
C4/Members.pm