def redirect_to_firstlogin(request: morepath.Request): if request.path.startswith('/__static__/'): return handler(request) if request.path == '/logout': return handler(request) userid = request.identity.userid if userid: col = get_user_collection(request) userobj = col.get_by_userid(userid) if userobj['state'] == 'new' and not request.path.startswith( '/firstlogin'): resp = morepath.redirect(request.relative_url('/firstlogin')) resp.headers['Cache-Control'] = 'no-store' return resp return handler(request)
def redirect_to_firstlogin(request: morepath.Request): for path in EXCLUDE_PREFIXES: if request.path.startswith(path): return handler(request) for path in EXCLUDE_PATHS: if request.path == path: return handler(request) userid = request.identity.userid if userid: col = request.get_collection("morpfw.pas.user") userobj = col.get_by_userid(userid) if userobj and userobj["state"] == "new" and not request.path.startswith("/firstlogin"): resp = morepath.redirect(request.relative_url("/firstlogin")) resp.headers["Cache-Control"] = "no-store" return resp return handler(request)