def generate_users(number_of_users, rlc) -> [UserProfile]: base_name = "test_user" users = [] for i in range(number_of_users): name = base_name + str(i) email = name + "@web.de" user = UserProfile(email=email, name=name) if rlc: user.rlc = rlc user.save() users.append(user) return users
def post(self, request): print(request.body) user_info = json.loads(request.body) password = user_info.get('password') new_password = user_info.get('new_password') up = UserProfile.objects.filter(username=request.user) user = request.user phone = user.phone user = authenticate(request, username=phone, password=password) if not user: return self.write_json({'errno': 1, 'msg': '旧密码错误!'}) user.set_password(new_password) user.save() if user: login(request, user) try: ups = UserProfile.objects.get(user=user) except UserProfile.DoesNotExist: return self.write_json({'errno': 1, 'msg': '不存在用户信息'}) try: ups = UserProfile.objects.get(user=user) except UserProfile.DoesNotExist: up = UserProfile() up.user = user up.username = user.username up.phone = user.username up.token = generate_token(up.id) up.save() return self.write_json({'errno': 0, 'msg': 'success'})
def user_can_see_folder(self, user: UserProfile) -> bool: from apps.files.models.permission_for_folder import PermissionForFolder if (user.has_permission(PERMISSION_FILES_WRITE_ALL_FOLDERS) or user.has_permission(PERMISSION_FILES_MANAGE_PERMISSIONS)): return True folders = self.get_all_parents() + [self] + self.get_all_children() users_groups = user.rlcgroups.all() if PermissionForFolder.objects.filter( folder__in=folders, group_has_permission__in=users_groups).exists(): return True return False
def user_has_permission_read(self, user: UserProfile) -> bool: from apps.files.models.permission_for_folder import PermissionForFolder if user.rlc != self.rlc: return False if (user.has_permission(PERMISSION_FILES_READ_ALL_FOLDERS) or user.has_permission(PERMISSION_FILES_WRITE_ALL_FOLDERS) or user.has_permission(PERMISSION_FILES_MANAGE_PERMISSIONS)): return True relevant_folders = self.get_all_parents() + [self] users_groups = user.rlcgroups.all() p_read = FolderPermission.objects.get(name=PERMISSION_READ_FOLDER) if PermissionForFolder.objects.filter( folder__in=relevant_folders, group_has_permission__in=users_groups, permission=p_read, ).exists(): return True return False
def create_inactive_user(rlc): user = UserProfile( name="Mr. Inactive", email="*****@*****.**", rlc=rlc, ) user.set_password("qwe123") user.save() RlcUser.objects.create(user=user)
def post(self, request): user_info = json.loads(request.body) new_password = user_info.get('new_password') phone = user_info.get('phone') print(phone) try: user = User.objects.get(username=phone) user.set_password(new_password) user.save() try: up = UserProfile.objects.get(user=user) except UserProfile.DoesNotExist: up = UserProfile() up.phone = user.username up.token = generate_token(up.id) up.save() up.user = user up.save() return self.write_json({'errno': 0, 'msg': 'success'}) except User.DoesNotExist: return self.write_json({'errno': 1, 'msg': '不存在用户'})
def post(self, request): user_info = json.loads(request.body) print(user_info) username = user_info.get('username') password = user_info.get('password') phone = user_info.get('phone') auth_code = user_info.get('auth_code') # ac = AuthCode.objects.filter(phone=phone,auth_code=auth_code).first() # if not ac: # return self.write_json({'errno':1,'msg':'手机验证码不存在!'}) # ac.delete() ups = UserProfile.objects.filter(username=username) if ups: return self.write_json({'errno': 1, 'msg': '昵称已存在,请换一个昵称'}) try: User.objects.get(username=phone) return self.write_json({'errno': 1, 'msg': '该手机号的用户已存在'}) except User.DoesNotExist: # user = User.objects.create_user(username=phone,password=password) user = User(username=phone) user.password = make_password(password=password, salt=None) user.save() up = UserProfile() up.user = user up.head_img = 'http://static.openmindclub.com/image/default-avatar/avatar2.png' up.username = username up.phone = phone up.token = generate_token(up.id) up.save() data = { 'user': user.username, 'username': up.username, 'id': str(up.id), 'token': up.token, 'head_img': up.head_img } return self.write_json({'errno': 0, 'msg': 'success', 'data': data})
def create(self, validated_data): password = validated_data.pop('password') validated_data.pop('password_confirm') user = UserProfile(**validated_data) user.set_password(password) with transaction.atomic(): user.save() rlc_user = RlcUser(user=user, email_confirmed=False) rlc_user.save() try: rlc_user.send_email_confirmation_email() except SMTPRecipientsRefused: user.delete() raise ValidationError({ 'email': [ "We could not send a confirmation email to this address. " "Please check if this email is correct." ] }) return user
def register(user_info): up = UserProfile(username=user_info['nickName'], head_img=user_info['avatarUrl'], openid=user_info['openId']) up.save() return up
def generate_test_user(rlc=None): user = UserProfile(name="test_user_1", email="*****@*****.**") if rlc: user.rlc = rlc user.save() return user