Bug 15656

Summary: Move the guarantor/guarantees code to Koha::Patron
Product: Koha Reporter: Jonathan Druart <jonathan.druart>
Component: Architecture, internals, and plumbingAssignee: Jonathan Druart <jonathan.druart>
Status: CLOSED FIXED QA Contact: Testopia <testopia>
Severity: enhancement    
Priority: P5 - low CC: brendan, josef.moravec
Version: Main   
Hardware: All   
OS: All   
Change sponsored?: --- Patch complexity: ---
Documentation contact: Documentation submission:
Text to go in the release notes:
Version(s) released in:
Bug Depends on: 15548, 15653    
Bug Blocks: 15449, 14577, 16073, 16136, 16844    
Attachments: Bug 15656: Move guarantor/guarantees code - GetGuarantees
Bug 15656: Move guarantor/guarantees code - GetMemberRelatives
Bug 15656: Move guarantor/guarantees code - GetGuarantees
Bug 15656: Move guarantor/guarantees code - GetMemberRelatives
Bug 15656: Move guarantor/guarantees code - GetGuarantees
Bug 15656: Move guarantor/guarantees code - GetMemberRelatives
Bug 15656 [QA Followup] - Return without searching if patron has no guarantor

Description Jonathan Druart 2016-01-25 15:40:42 UTC
2 subroutines of C4::Members deal with guarantor/guarantees: GetGuarantees and GetMemberRelatives.
Since we already have a Koha::Patron->guarantor method, it makes sense to move these 2 subroutines to this module.
Comment 1 Jonathan Druart 2016-01-25 15:56:28 UTC Comment hidden (obsolete)
Comment 2 Jonathan Druart 2016-01-25 15:56:31 UTC Comment hidden (obsolete)
Comment 3 Josef Moravec 2016-02-16 10:36:15 UTC Comment hidden (obsolete)
Comment 4 Josef Moravec 2016-02-16 10:36:22 UTC Comment hidden (obsolete)
Comment 5 Kyle M Hall 2016-03-11 18:36:51 UTC
Created attachment 49054 [details] [review]
Bug 15656: Move guarantor/guarantees code - GetGuarantees

2 subroutines of C4::Members deal with guarantor/guarantees:
GetGuarantees and GetMemberRelatives.
Since we already have a Koha::Patron->guarantor method, it makes sense
to move these 2 subroutines to this module.

This first patch deals with GetGuarantees.

Test plan for the entire patch set:
1/ Create 5 patrons A (adult), B (child), C (child), D (child), E
(child), F (adult)
2/ Add relation between them: A is father of B, C and D.
E does not have a guarantor
F does not have guarantees
3/ Check some items out for all of these patrons
4/ On the "Check out" and "Details" tabs, you should not see any
differences with these patch applied : The "Relatives' checkouts" tabs
should list all of the guarantor/guarantee/siblings checkouts

Note:
$template->param('C' => 1);
I have not found any reference of this 'C' in the template.
It seems it's an old c/p from members/memberentrygen.tt

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Comment 6 Kyle M Hall 2016-03-11 18:36:58 UTC
Created attachment 49055 [details] [review]
Bug 15656: Move guarantor/guarantees code - GetMemberRelatives

Note:
QA question: Does the Koha::Patron->siblings method should return undef
if there is no guarantor?
It would avoid the weird  != undef, = $borrowernumber conditions.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Comment 7 Kyle M Hall 2016-03-11 18:37:01 UTC
Created attachment 49056 [details] [review]
Bug 15656 [QA Followup] - Return without searching if patron has no guarantor

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Comment 8 Brendan Gallagher 2016-03-12 23:40:42 UTC
Pushed to Master - Should be in the May 2016 release.  Thanks!