Exemple #1
0
    def get_admins_for_membership(membership_id, status=Status.ACTIVE.value):
        """Get admins for an org."""
        membership = MembershipModel.find_membership_by_id(membership_id)
        org_id = membership.org_id

        return UserModel.find_users_by_org_id_by_status_by_roles(
            org_id, CLIENT_ADMIN_ROLES, status)
Exemple #2
0
    def find_membership_by_id(cls, membership_id, token_info: Dict = None):
        """Retrieve a membership record by id."""
        membership = MembershipModel.find_membership_by_id(membership_id)

        if membership:
            # Ensure that this user is an ADMIN or OWNER on the org associated with this membership
            # or that the membership is for the current user
            if membership.user.username != token_info.get('username'):
                check_auth(org_id=membership.org_id, token_info=token_info, one_of_roles=(ADMIN, OWNER))
            return Membership(membership)
        return None
Exemple #3
0
    def find_membership_by_id(cls, membership_id, **kwargs):
        """Retrieve a membership record by id."""
        user_from_context: UserContext = kwargs['user_context']
        membership = MembershipModel.find_membership_by_id(membership_id)

        if membership:
            # Ensure that this user is an COORDINATOR or ADMIN on the org associated with this membership
            # or that the membership is for the current user
            if membership.user.username != user_from_context.user_name:
                check_auth(org_id=membership.org_id,
                           one_of_roles=(COORDINATOR, ADMIN, STAFF))
            return Membership(membership)
        return None