def approve_woman_profile(obj): print("Approving") data = json.loads(obj.data) #print(data) pwd = random.randint(11111, 99999) u = UserProfile() u.username = data['email'] u.gender = 'female' u.set_password(pwd) u.is_active = True u.is_staff = False u.email = data['email'] u.is_superuser = False u.about_me = data['about_me'] u.goal = data['goal'] u.job = data['job'] u.city = data['city'] u.lookingfor = data['lookingfor'] bd = '%s-%s-%s' % (data['birthday'][0:4], data['birthday'][5:7],data['birthday'][8:10]) print(bd) u.birthday = parse_date(bd) u.save() fillprops(u, data) obj.delete() for im in data['images']: format, imgstr = im.split(';base64,') ext = format.split('/')[-1] data = ContentFile(base64.b64decode(imgstr)) file_name = '%s-%s.%s' % (u.id,random.randint(111,999),ext) c = UserPhoto() c.user = u c.is_approved = True c.image.save(file_name, data, save=True) c.save() c.setAsMain()
def save(self): profile = UserProfile() profile.username = self.validated_data['username'] profile.set_password(self.validated_data['password']) profile.birthday = self.validated_data['birthday'] profile.gender = self.validated_data['gender'] profile.save() return profile
def users_fabric(name, gender, is_superuser): print('Creating....%s' % name) u = UserProfile() u.username = name u.gender = gender u.set_password(name) u.is_active = True u.is_staff = True u.email = '*****@*****.**' % name u.is_superuser = is_superuser u.about_me = 'I am %s' % 'admin' u.hight = 160 u.save() return u
def users_fabric(name, gender, is_superuser): print('Creating....%s' % name) u = UserProfile() u.username = name u.gender = gender u.set_password(name) u.is_active = True u.is_staff = True u.email = '*****@*****.**' % name u.is_superuser = is_superuser u.about_me = 'I am %s' % 'admin' bd = '1978-%s-01' % random.randint(1, 12) u.birthday = parse_date(bd) u.hight = 160 u.save() return u
def get_blog_user(self): oauth_access_token = self.access_token['access_token'] oauth_expires = int(self.access_token['expires_in']) oauth_logins = OauthLogin.objects.using('read').filter( auth_type=OauthLogin.TYPE.QQ, oauth_access_token=oauth_access_token) if oauth_logins.exists(): oauth_login = oauth_logins[0] user_id = oauth_login.user_id user = User.objects.using('read').get(id=user_id) else: uid = self.get_openid() oauth_logins = OauthLogin.objects.using('read').filter( auth_type=OauthLogin.TYPE.QQ, oauth_id=uid) if oauth_logins.exists(): oauth_login = oauth_logins[0] user_id = oauth_login.user_id user = User.objects.using('read').get(id=user_id) else: user_info = self.get_qq_info() nick_name = user_info[ 'nickname'] if 'nickname' in user_info else 'QQ用户{random_str}'.format( random_str=generate_verification_code(3)) if 'gender' in user_info: gender = UserProfile.GENDER.MALE if user_info[ 'gender'] == '男' else UserProfile.GENDER.FEMALE else: gender = UserProfile.GENDER.MALE avatar_img = None if 'figureurl_qq_2' in user_info: avatar = user_info['figureurl_qq_2'] elif 'figureurl_qq_1' in user_info: avatar = user_info['figureurl_qq_1'] else: avatar = None if avatar: req = requests.get(avatar) file_content = ContentFile(req.content) avatar_img = get_thumbnail(file_content, 100, 100) result_name = nick_name all_user = User.objects.using('read').all() email_users = all_user.filter(username=nick_name) if email_users.exists(): rand_str = generate_verification_code() result_name = nick_name + rand_str while True: if not all_user.filter(username=result_name).exists(): break rand_str = generate_verification_code() result_name = nick_name + rand_str user = User() user.username = result_name user.set_password('888888') user.save(using='write') user_profile = UserProfile() user_profile.user = user user_profile.gender = gender if avatar_img is not None: user_profile.avatar = avatar_img user_profile.save(using='write') oauth_login = OauthLogin() oauth_login.auth_type = OauthLogin.TYPE.QQ oauth_login.oauth_id = uid oauth_login.user_id = user.id # update access token oauth_login.oauth_access_token = oauth_access_token oauth_login.oauth_expires = oauth_expires oauth_login.save(using='write') return user
def get_blog_user(self): access_token = self.access_token oauth_access_token = access_token['access_token'] oauth_expires = access_token['expires_in'] uid = access_token['uid'] oauth_logins = OauthLogin.objects.using('read').filter(auth_type=OauthLogin.TYPE.WEIBO, oauth_access_token=oauth_access_token) if oauth_logins.exists(): oauth_login = oauth_logins[0] user_id = oauth_login.user_id user = User.objects.using('read').get(id=user_id) else: oauth_logins = OauthLogin.objects.using('read').filter(auth_type=OauthLogin.TYPE.WEIBO, oauth_id=uid) if oauth_logins.exists(): oauth_login = oauth_logins[0] user_id = oauth_login.user_id user = User.objects.using('read').get(id=user_id) else: user_info = self.get_weibo_info() nick_name = user_info['screen_name'] if 'screen_name' in user_info else '微博用户{random_str}'.format( random_str=generate_verification_code(3)) gender = user_info['gender'] if 'gender' in user_info else UserProfile.GENDER.MALE avatar_img = None if 'avatar_large' in user_info: avatar = user_info['avatar_large'] elif 'profile_image_url' in user_info: avatar = user_info['profile_image_url'] else: avatar = None if avatar: req = requests.get(avatar) file_content = ContentFile(req.content) avatar_img = get_thumbnail(file_content, 100, 100) result_name = nick_name all_user = User.objects.using('read').all() email_users = all_user.filter(username=nick_name) if email_users.exists(): rand_str = generate_verification_code() result_name = nick_name + rand_str while True: if not all_user.filter(username=result_name).exists(): break rand_str = generate_verification_code() result_name = nick_name + rand_str user = User() user.username = result_name user.set_password('888888') user.save(using='write') user_profile = UserProfile() user_profile.user = user user_profile.gender = gender if avatar_img is not None: user_profile.avatar = avatar_img user_profile.save(using='write') oauth_login = OauthLogin() oauth_login.auth_type = OauthLogin.TYPE.WEIBO oauth_login.oauth_id = uid oauth_login.user_id = user.id # update access token oauth_login.oauth_access_token = oauth_access_token oauth_login.oauth_expires = oauth_expires oauth_login.save(using='write') return user