|
Lines 32-37
use Koha::Account;
Link Here
|
| 32 |
use Koha::ArticleRequests; |
32 |
use Koha::ArticleRequests; |
| 33 |
use C4::Letters qw( GetPreparedLetter EnqueueLetter SendQueuedMessages ); |
33 |
use C4::Letters qw( GetPreparedLetter EnqueueLetter SendQueuedMessages ); |
| 34 |
use Koha::AuthUtils; |
34 |
use Koha::AuthUtils; |
|
|
35 |
use Koha::Caches; |
| 35 |
use Koha::Checkouts; |
36 |
use Koha::Checkouts; |
| 36 |
use Koha::CirculationRules; |
37 |
use Koha::CirculationRules; |
| 37 |
use Koha::Club::Enrollments; |
38 |
use Koha::Club::Enrollments; |
|
Lines 998-1020
sub has_overdues {
Link Here
|
| 998 |
return $self->_result->issues->search({ date_due => { '<' => $dtf->format_datetime( dt_from_string() ) } })->count; |
999 |
return $self->_result->issues->search({ date_due => { '<' => $dtf->format_datetime( dt_from_string() ) } })->count; |
| 999 |
} |
1000 |
} |
| 1000 |
|
1001 |
|
| 1001 |
=head3 track_login |
1002 |
=head3 update_lastseen |
| 1002 |
|
1003 |
|
| 1003 |
$patron->track_login; |
1004 |
$patron->update_lastseen('activity'); |
| 1004 |
$patron->track_login({ force => 1 }); |
|
|
| 1005 |
|
1005 |
|
| 1006 |
Tracks a (successful) login attempt. |
1006 |
Tracks a (successful) login attempt when the TrackLastPatronActivity preference is enabled |
| 1007 |
The preference TrackLastPatronActivity must be enabled. Or you |
1007 |
and the activity passed is in the TrackLastPatronActivityTriggers list. |
| 1008 |
should pass the force parameter. |
|
|
| 1009 |
|
1008 |
|
| 1010 |
=cut |
1009 |
=cut |
| 1011 |
|
1010 |
|
| 1012 |
sub track_login { |
1011 |
sub update_lastseen { |
| 1013 |
my ( $self, $params ) = @_; |
1012 |
my ( $self, $activity ) = @_; |
| 1014 |
return if |
1013 |
return $self if !C4::Context->preference('TrackLastPatronActivity'); |
| 1015 |
!$params->{force} && |
1014 |
|
| 1016 |
!C4::Context->preference('TrackLastPatronActivity'); |
1015 |
my $tracked_activities = { |
| 1017 |
$self->lastseen( dt_from_string() )->store; |
1016 |
map { ( lc $_, 1 ); } split /\s*\,\s*/, |
|
|
1017 |
C4::Context->preference('TrackLastPatronActivityTriggers') |
| 1018 |
}; |
| 1019 |
return $self unless $tracked_activities->{$activity}; |
| 1020 |
|
| 1021 |
my $cache = Koha::Caches->get_instance(); |
| 1022 |
my $cache_key = "track_login_" . $self->userid; |
| 1023 |
my $cached = $cache->get_from_cache($cache_key); |
| 1024 |
my $now = dt_from_string(); |
| 1025 |
return if $cached && $cached eq $now->ymd; |
| 1026 |
|
| 1027 |
$self->lastseen($now)->store; |
| 1028 |
$cache->set_in_cache( $cache_key, $now->ymd ); |
| 1029 |
return $self; |
| 1018 |
} |
1030 |
} |
| 1019 |
|
1031 |
|
| 1020 |
=head3 move_to_deleted |
1032 |
=head3 move_to_deleted |
| 1021 |
- |
|
|