&GetFirstValidEmailAddress
&GetNoticeEmailAddress
- &GetAge
-
&GetMemberAccountRecords
&GetBorNotifyAcctRecord
SELECT borrowers.*,
category_type,
categories.description,
- categories.BlockExpiredPatronOpacActions,
reservefee,
enrolmentperiod
FROM borrowers
SELECT borrowers.*,
category_type,
categories.description,
- categories.BlockExpiredPatronOpacActions,
reservefee,
enrolmentperiod
FROM borrowers
$borrower->{'flags'} = $flags;
$borrower->{'authflags'} = $accessflagshash;
- # Handle setting the true behavior for BlockExpiredPatronOpacActions
- $borrower->{'BlockExpiredPatronOpacActions'} =
- C4::Context->preference('BlockExpiredPatronOpacActions')
- if ( $borrower->{'BlockExpiredPatronOpacActions'} == -1 );
-
$borrower->{'is_expired'} = 0;
$borrower->{'is_expired'} = 1 if
defined($borrower->{dateexpiry}) &&
return $results;
}
-=head2 GetAge
-
- $dateofbirth,$date = &GetAge($date);
-
-this function return the borrowers age with the value of dateofbirth
-
-=cut
-
-#'
-sub GetAge{
- my ( $date, $date_ref ) = @_;
-
- if ( not defined $date_ref ) {
- $date_ref = sprintf( '%04d-%02d-%02d', Today() );
- }
-
- my ( $year1, $month1, $day1 ) = split /-/, $date;
- my ( $year2, $month2, $day2 ) = split /-/, $date_ref;
-
- my $age = $year2 - $year1;
- if ( $month1 . $day1 > $month2 . $day2 ) {
- $age--;
- }
-
- return $age;
-} # sub get_age
-
-=head2 SetAge
-
- $borrower = C4::Members::SetAge($borrower, $datetimeduration);
- $borrower = C4::Members::SetAge($borrower, '0015-12-10');
- $borrower = C4::Members::SetAge($borrower, $datetimeduration, $datetime_reference);
-
- eval { $borrower = C4::Members::SetAge($borrower, '015-1-10'); };
- if ($@) {print $@;} #Catch a bad ISO Date or kill your script!
-
-This function sets the borrower's dateofbirth to match the given age.
-Optionally relative to the given $datetime_reference.
-
-@PARAM1 koha.borrowers-object
-@PARAM2 DateTime::Duration-object as the desired age
- OR a ISO 8601 Date. (To make the API more pleasant)
-@PARAM3 DateTime-object as the relative date, defaults to now().
-RETURNS The given borrower reference @PARAM1.
-DIES If there was an error with the ISO Date handling.
-
-=cut
-
-#'
-sub SetAge{
- my ( $borrower, $datetimeduration, $datetime_ref ) = @_;
- $datetime_ref = DateTime->now() unless $datetime_ref;
-
- if ($datetimeduration && ref $datetimeduration ne 'DateTime::Duration') {
- if ($datetimeduration =~ /^(\d{4})-(\d{2})-(\d{2})/) {
- $datetimeduration = DateTime::Duration->new(years => $1, months => $2, days => $3);
- }
- else {
- die "C4::Members::SetAge($borrower, $datetimeduration), datetimeduration not a valid ISO 8601 Date!\n";
- }
- }
-
- my $new_datetime_ref = $datetime_ref->clone();
- $new_datetime_ref->subtract_duration( $datetimeduration );
-
- $borrower->{dateofbirth} = $new_datetime_ref->ymd();
-
- return $borrower;
-} # sub SetAge
-
=head2 GetBorrowersToExpunge
$borrowers = &GetBorrowersToExpunge(