def _decorator(*args, **kwargs): from members.models import Member from organizations.models import Organization session = Session.find_by_access(request.args.get('key')) if not session: return 'Session has expired.', 401 if not request.args.get('organization'): return 'Organization is required.', 401 member = Member.query.filter(Member.profile_id == session.profile_id) \ .join(Member.organization) \ .filter(Organization.name == request.args.get('organization')) \ .first() if not member: return abort(404) g.member = member g.organization = member.organization g.application = member.organization.application return view_func(*args, **kwargs)