示例#1
0
    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
            }
示例#2
0
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