def wrapper(*args, **kwargs): permission_code = AUTH_MAP_HR.get(endpoint) if config.LOGIN['enabled'] and \ not coffee.hr_permission.isPermittedToThis(context=current_user.auth_context, permission=permission_code): return no_permission() return func(*args, **kwargs)
def auth_init(app): # TODO 考虑统一抽出deco view的规则 endpoint_list = filter( lambda endpoint: endpoint in AUTH_MAP.keys(), app.view_functions.keys() ) endpoint_list_hr = filter( lambda endpoint: endpoint in AUTH_MAP_HR.keys(), app.view_functions.keys() ) # add login deco for each view_func for ep in endpoint_list: app.view_functions[ep] = auth(ep)(app.view_functions[ep]) for ep in endpoint_list_hr: app.view_functions[ep] = auth_hr(ep)(app.view_functions[ep])