]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/perlmods/OpenILS/Application/Actor/UserGroups.pm
adding module for handling the usergroup api
[working/Evergreen.git] / Open-ILS / src / perlmods / OpenILS / Application / Actor / UserGroups.pm
1 package OpenILS::Application::Actor::UserGroups;
2 use base 'OpenSRF::Application';
3 use strict; use warnings;
4 use OpenILS::Application::AppUtils;
5 use OpenILS::Utils::Editor;
6 use OpenSRF::Utils::Logger q/$logger/;
7 use OpenSRF::EX qw(:try);
8 my $U = "OpenILS::Application::AppUtils";
9
10 sub initialize { return 1; }
11
12
13 __PACKAGE__->register_method(
14         method => 'get_users_from_usergroup',
15         api_name        => 'open-ils.actor.usergroup.members.retrieve',
16         signature       => q/
17                 Returns a list of ids for users that are in the given usergroup
18         /
19 );
20
21
22 sub get_users_from_usergroup {
23         my( $self, $conn, $auth, $usergroup ) = @_;
24         my $e = OpenILS::Utils::Editor->new(authtoken=>$auth);
25         return $e->event unless $e->checkauth;
26         return $e->event unless $e->allowed('VIEW_USER'); # XXX reley on editor perm
27         return $e->search_actor_user({usrgroup => $usergroup}, {idlist => 1});
28 }
29
30
31 1;