2017-12-21 13:44:54 +01:00
|
|
|
from aiohttp.web import json_response, View
|
|
|
|
from aiohttp.web import HTTPNotFound, HTTPUnprocessableEntity
|
2017-12-16 23:03:03 +01:00
|
|
|
|
2017-12-21 13:44:54 +01:00
|
|
|
from phi.logging import get_logger
|
|
|
|
from phi.ldap.user import get_user_by_uid
|
|
|
|
from phi.api.utils import serialize
|
2017-12-16 23:03:03 +01:00
|
|
|
|
2017-12-21 13:44:54 +01:00
|
|
|
log = get_logger(__name__)
|
2017-12-18 20:28:54 +01:00
|
|
|
|
2017-12-21 13:44:54 +01:00
|
|
|
|
|
|
|
class User(View):
|
|
|
|
async def get(self):
|
|
|
|
uid = self.request.match_info.get('uid', None)
|
|
|
|
if uid is None:
|
|
|
|
return HTTPUnprocessableEntity()
|
|
|
|
|
|
|
|
client = self.request.app['ldap_client']
|
|
|
|
user = get_user_by_uid(client, uid)
|
|
|
|
|
|
|
|
if not user:
|
|
|
|
return HTTPNotFound()
|
|
|
|
|
|
|
|
return json_response(serialize(user))
|