def add_user(self, request): user = request.user team = Team.get_by_uid(self.team_uid) if not user or not team: return dict(r=1, error="team不存在") user_id = request.get_form_var("user_id", "") identity = int(request.get_form_var("identity", 0)) if not team.is_owner(user.name) or identity not in TEAM_IDENTITY_INFO.keys(): return dict(r=1, error="没有权限") rl = TeamUserRelationship.get(team_id=team.id, user_id=user_id) if not rl: team.add_user(User(user_id), identity) elif identity == rl.identity: return dict(r=1, error="该用户已存在") elif rl.is_owner and team.n_owners == 1: return dict(r=1, error="只剩一个creator, 不能改变身份") else: rl.identity = identity rl.save() avatar_url = User(user_id).avatar_url team_add_member_signal.send( user.name, team_uid=team.uid, team_name=team.name, receiver=user_id, identity=TEAM_IDENTITY_INFO[identity]["name"], ) return dict(r=0, uid=user_id, avatar_url=avatar_url)
def add_user(self, request): user = request.user team = Team.get_by_uid(self.team_uid) if not user or not team: return dict(r=1, error="team不存在") user_id = request.get_form_var('user_id', '') identity = int(request.get_form_var('identity', 0)) if not team.is_owner(user.name) \ or identity not in TEAM_IDENTITY_INFO.keys(): return dict(r=1, error="没有权限") rl = TeamUserRelationship.get(team_id=team.id, user_id=user_id) if not rl: team.add_user(User(user_id), identity) elif identity == rl.identity: return dict(r=1, error="该用户已存在") elif rl.is_owner and team.n_owners == 1: return dict(r=1, error="只剩一个creator, 不能改变身份") else: rl.identity = identity rl.save() avatar_url = User(user_id).avatar_url team_add_member_signal.send( user.name, team_uid=team.uid, team_name=team.name, receiver=user_id, identity=TEAM_IDENTITY_INFO[identity]["name"]) return dict(r=0, uid=user_id, avatar_url=avatar_url)
def remove_user(self, request): user = request.user if not user: return dict(r=1, error="用户未登录") team = Team.get_by_uid(self.team_uid) if not team: return dict(r=1, error="team不存在") user_id = request.get_form_var("user_id", "") if not team.is_owner(user.name): return dict(r=1, error="没有权限") rl = TeamUserRelationship.get(team_id=team.id, user_id=user_id) if not rl: return dict(r=1, error="用户未加入team") elif rl.is_owner and team.n_owners == 1: return dict(r=1, error="只剩一个creator不能删除") else: rl.delete() return dict(r=0)
def remove_user(self, request): user = request.user if not user: return dict(r=1, error="用户未登录") team = Team.get_by_uid(self.team_uid) if not team: return dict(r=1, error="team不存在") user_id = request.get_form_var('user_id', '') if not team.is_owner(user.name): return dict(r=1, error="没有权限") rl = TeamUserRelationship.get(team_id=team.id, user_id=user_id) if not rl: return dict(r=1, error="用户未加入team") elif rl.is_owner and team.n_owners == 1: return dict(r=1, error="只剩一个creator不能删除") else: rl.delete() return dict(r=0)