Esempio n. 1
0
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)
Esempio n. 2
0
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')
Esempio n. 3
0
def setting(request):
    """
    check app info
    """
    setting_list = {}
    for setting in Setting.objects.all():
        setting_list[setting.key] = setting.value
    return objectResponse(setting_list)
Esempio n. 4
0
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)
Esempio n. 5
0
def userResponse(user):
  	return objectResponse(NewUserSerializer(user).data)