def changepassword(request): """ change password With body: { "old_password":"******", "new_password":"******" } """ user = request.user old_password = request.data.get('old_password') new_password = request.data.get('new_password') code, message = None, None if not old_password or not user.check_password(old_password): code = StatusCode.OLD_PASSWORD_IS_INVALID.value message = MESSAGES[StatusCode.OLD_PASSWORD_IS_INVALID] elif not new_password: code = StatusCode.NEW_PASSWORD_IS_INVALID.value message = MESSAGES[StatusCode.NEW_PASSWORD_IS_INVALID] else: code, message = 200, _('Your password has been changed successfully!') user.set_password(new_password) user.save() Token.objects.filter(user=user).delete() token = Token.objects.create(user=user) obj = "{'code': code, 'message': message, 'token': token.key}" return objectResponse(obj) return iHttpResponse(code, message)
def signup(request): """ Signup new user With body: { "country_code":"string", "phone_number":"string", "email":"string", "password":"******", "first_name":"string", "last_name":"string" } """ email = request.data.get('email') password = request.data.get('password') phone_number = request.data.get('phone_number') first_name = request.data.get('first_name') last_name = request.data.get('last_name') code, message = validate_user_data(request.data) if code and message: return iHttpResponse(code, message) if User.objects.filter(email=email).exists(): return iHttpResponse(400, 'This email already exists in our system') if not User.objects.filter(phone_number=phone_number).exists(): user = User.objects.create_user(email, first_name, last_name, phone_number, password) obj = {"email": user.email, "phone_number": user.phone_number} return objectResponse(obj) return iHttpResponse(400, 'This phone number already exists in our system')
def setting(request): """ check app info """ setting_list = {} for setting in Setting.objects.all(): setting_list[setting.key] = setting.value return objectResponse(setting_list)
def check_app_info(request): """ check app info """ appinfo_list = {} for appinfo in AppInfo.objects.all(): appinfo_list[appinfo.key] = appinfo.value return objectResponse(appinfo_list)
def userResponse(user): return objectResponse(NewUserSerializer(user).data)