my %patrons;
$filter->{course} = $course_id;
- $filter->{is_public} = 't'
+ $filter->{usr_role}->{is_public} = 't'
unless ($self->api_name =~ /\.staff/) and $e->allowed('MANAGE_RESERVES');
- $users->{list} = $e->search_asset_course_module_course_users($filter, {order_by => {acmcu => 'id'}});
+ $users->{list} = $e->search_asset_course_module_course_users($filter, {flesh => 1, flesh_fields => {acmcu => ['usr_role']}, order_by => {acmcu => 'id'}});
for my $course_user (@{$users->{list}}) {
my $patron = {};
$patron->{id} = $course_user->id;
"select" => {"acmcu" => [
'id',
'usr',
- 'is_public'
]},
# TODO: We need to support the chosen library as well...
- "where" => {'+acmcu' => 'is_public'}
+ "where" => {'usr_role' => {'in' => {'select' => {'acmr' => ['id']}, 'where' => {'+acmr' => 'is_public'}}}}
});
$results = $e->json_query({
"from" => "au",
"acmcu" => ['usr']
},
"where" => {'-and' => [
- {'+acmcu' => 'is_public'},
+ {'usr_role' => { 'in' => {
+ 'from' => 'acmr',
+ "select" => {
+ "acmr" => ['id']
+ },
+ "where" => {'+acmr' => 'is_public'}}}},
{"course" => { "in" =>{
"from" => "acmc",
"select" => {