sub checkouts_by_user_opac {
my( $self, $client, $auth, $user_id ) = @_;
- my $e = new_editor( authtoken => $auth );
+ my $e = new_editor(authtoken => $auth);
return $e->event unless $e->checkauth;
$user_id ||= $e->requestor->id;
return $e->event unless
my $patron = $e->retrieve_actor_user($user_id);
- my $data;
- my $search = {usr => $user_id, stop_fines => undef};
-
- if( $user_id ne $e->requestor->id ) {
- $data = $e->search_action_circulation(
- $search, {checkperm=>1, permorg=>$patron->home_ou})
- or return $e->event;
-
- } else {
- $data = $e->search_action_circulation($search);
+ if ($user_id ne $e->requestor->id) {
+ return $e->event unless
+ $e->allowed('VIEW_CIRCULATIONS', $patron->home_ou);
}
- return $data;
+ my $search = {
+ usr => $user_id,
+ checkin_time => undef,
+ '-or' => [
+ {stop_fines => undef},
+ {stop_fines => ['MAXFINES','LONGOVERDUE']}
+ ]
+ };
+
+ return $e->search_action_circulation($search);
}