from PLC.Parameter import Parameter, Mixed
from PLC.Sites import Site, Sites
from PLC.Persons import Person, Persons
-from PLC.Auth import PasswordAuth
+from PLC.Auth import Auth
class AdmGetSitePIs(Method):
"""
roles = ['admin']
accepts = [
- PasswordAuth(),
+ Auth(),
Mixed(Site.fields['site_id'],
Site.fields['login_base'])
]
assert self.caller is not None
# Get site information
- sites = Sites(self.api, [site_id_or_login_base]).values()
+ sites = Sites(self.api, [site_id_or_login_base])
if not sites:
raise PLCInvalidArgument, "No such site"
site = sites[0]
- persons = Persons(self.api, site['person_ids']).values()
+ persons = Persons(self.api, site['person_ids'])
has_pi_role = lambda person: 'pi' in person['roles']
pis = filter(has_pi_role, persons)