Ejemplo n.º 1
0
 def get_person_listing(
     request: Request,
     logger: Logger,
     session: LocalProxy,
     service: DirectorySearchService,
 ):
     context = RenderingContext.construct(
         uwnetid=session.get("uwnetid"),
     )
     template = "views/person.html"
     try:
         request_input = SearchDirectoryFormInput.parse_obj(request.form)
         context.request_input = request_input
         context.search_result = service.get_listing(
             b64decode(request_input.person_href.encode("UTF-8")).decode("UTF-8")
         )
     except Exception as e:
         template = "views/index.html"
         logger.exception(str(e))
         SearchBlueprint.handle_search_exception(e, context)
     finally:
         return (
             render_template(template, **context.dict(exclude_none=True)),
             context.status_code,
         )
Ejemplo n.º 2
0
    def search_listing(
        request: Request,
        service: DirectorySearchService,
        logger: Logger,
        session: LocalProxy,
        settings: ApplicationConfig,
    ):
        context = RenderingContext.construct(
            uwnetid=session.get("uwnetid"),
            show_experimental=settings.show_experimental,
        )
        try:
            form_input = SearchDirectoryFormInput.parse_obj(request.form)
            context.request_input = form_input

            request_input = SearchDirectoryInput.from_form_input(form_input)
            context.search_result = service.search_directory(request_input)
        except Exception as e:
            logger.exception(str(e))
            SearchBlueprint.handle_search_exception(e, context)
        finally:
            return (
                render_template(
                    "views/search_results.html", **context.dict(exclude_none=True)
                ),
                context.status_code,
            )
Ejemplo n.º 3
0
 def index(session: LocalProxy, settings: ApplicationConfig):
     context = RenderingContext(
         uwnetid=session.get("uwnetid"), show_experimental=settings.show_experimental
     )
     return (
         render_template("views/index.html", **context.dict(exclude_none=True)),
         200,
     )
Ejemplo n.º 4
0
def make_api_call(session_handler: LocalProxy, token_api: str, api_path: str):
    # TODO: Find cleaner way to handle expired tokens
    try:
        resp: HandlerResponse = session_handler.get(api_path)
        print(resp)
        # assert resp.ok
        # create_user(resp.text)
        return resp.json()
    except (InvalidGrantError, TokenExpiredError,
            OAuth2Error):  # token is expired
        return redirect(url_for(token_api))
Ejemplo n.º 5
0
from flask import _request_ctx_stack
from werkzeug.local import LocalProxy

from flask_jwt_group.config import config

raw_jwt_claims = LocalProxy(lambda: getattr(_request_ctx_stack.top, 'jwt', {}))
jwt_identity = LocalProxy(
    lambda: raw_jwt_claims.get(config.identity_key, None))
jwt_group = LocalProxy(lambda: raw_jwt_claims.get(config.group_key, None))
Ejemplo n.º 6
0
#-*- coding:utf-8 _*-
"""
@author:star
@file: test7.py
@time: 2018/08/12
"""

from werkzeug.local import LocalStack, LocalProxy

user_stack = LocalStack()
user_stack.push({'name': 'alice'})
user_stack.push({'name': 'bob'})


def get_user():
    return user_stack.pop()


user = LocalProxy(get_user)
print(user.get('name'))
print(user.get('name'))