This patch moves the logic of deciding whether or not a borrower is old enough to access this material
to its own function GetAgeRestriction.
This makes it easier to use AgeRestriction elsewhere, like with placing holds.
This feature adds a new function C4::Members::SetAge() to make testing ages a lot easier.
A ton of Unit tests included.
C4::Circulate::CanBookBeIssued() fixed and issue with undefined $daysToAgeRestriction per Marc Véron's
suggestion.
Test plan:
(See comment #10 for screenshots about using age restriction)
1) Without patch
Configure Age Restricition (see Syspref AgeRestrictionMarker) and have a biblio record with e.g. PEGI 99 in age restriction field
Try to check out to a patron with age < 99
Check out should be blocked
Change entry in age restriction field to PEGI99
Check out schould now be blocked
2) With patch
Try checkouts again, behaviour should be th same.
Signed-off-by: Marc Veron <veron@veron.ch>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>