def get_user_details(self, response): authenticated_panoptes = Panoptes( endpoint=PanoptesUtils.base_url(), client_id=PanoptesUtils.client_id(), client_secret=PanoptesUtils.client_secret()) authenticated_panoptes.bearer_token = response['access_token'] authenticated_panoptes.logged_in = True authenticated_panoptes.refresh_token = response['refresh_token'] bearer_expiry = datetime.now() + timedelta( seconds=response['expires_in']) authenticated_panoptes.bearer_expires = (bearer_expiry) with authenticated_panoptes: user = authenticated_panoptes.get('/me')[0]['users'][0] ids = ['admin user'] if not user['admin']: ids = [ project.href for project in Project.where( current_user_roles='collaborator') ] return { 'username': user['login'], 'email': user['email'], 'is_superuser': user['admin'], 'projects': ids }
def get_authenticated_panoptes(bearer_token, bearer_expiry): guest_authenticated_panoptes = Panoptes(endpoint=PanoptesUtils.base_url()) guest_authenticated_panoptes.bearer_token = bearer_token guest_authenticated_panoptes.logged_in = True bearer_expiry = datetime.strptime(bearer_expiry, "%Y-%m-%d %H:%M:%S.%f") guest_authenticated_panoptes.bearer_expires = (bearer_expiry) return guest_authenticated_panoptes