コード例 #1
0
ファイル: decorators.py プロジェクト: 2Leadin/api-flask
    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)