Beispiel #1
0
def register(request):
    # example: request.body
    # {
    # "username": "******",
    # "password1": "I am a password",
    # "password2": "I am a password"
    # }
    # Two passwords are needed to ensure user entered the password
    # they have in mind
    data = json.loads(request.body)
    username = data['username']
    password1 = data['password1']
    password2 = data['password2']
    user=User(username=username)
    if len(username) <= 3:
        response = JsonResponse({"error":"Username must be at least 3 characters."}, safe=True, status=500)
    elif len(password1) <= 5:
        response = JsonResponse({"error":"Password must be at least 5 characters."}, safe=True, status=500)
    elif password1 != password2:
        response = JsonResponse({"error":"The two password fields didn't match."}, safe=True, status=500)
    else:
      try:
          user.validate_unique()
      except ValidationError:
          response = JsonResponse({"error":"A user with that username already exists."}, safe=True, status=500)
      else:
          user.set_password(password1)
          user.save()
          response = JsonResponse({"key":str(user.auth_token)}, safe=True, status=201)
    return response
Beispiel #2
0
def registration_low(request):
    if request.method == "POST":
        errors = {}

        username = request.POST.get('name')
        email = request.POST.get('email')
        email2 = request.POST.get('confirm_email')
        password = request.POST.get('password')
        password2 = request.POST.get('confirm_password')
        print("REG POST data= {}".format(request.POST))

        if email != email2:
            errors['email'] = 'email-адреса не совпали'
        if password != password2:
            errors['password'] = '******'
        user = User(username=username, email=email)
        user.set_password(password)

        try:
            user.validate_unique()
        except ValidationError as er:
            errors.update(er.message_dict)

        if errors:
            return render(request, 'registration_low.html',
                          {'reg_errors': errors})

        user.save()
        return HttpResponseRedirect("/")
    return render(request, "registration_low.html")
def registration_low(request):
    if request.method == 'POST':
        errors = {}  # Тут будем хранить ошибки, чтобы отобразить на странице
        username = request.POST.get('name')
        email = request.POST.get('email')
        email2 = request.POST.get('confirm_email')
        password = request.POST.get('password')
        password2 = request.POST.get('confirm_password')
        print(request.POST)
        # Validate data
        if email != email2:
            errors['email'] = 'does not match'
        if password != password2:
            errors['password'] = '******'
        user = User(username=username, email=email)
        # Пароли хранятся в виде хэшей, поэтому их нельзя передавать напрямую
        user.set_password(password)
        # Проверяем, существует ли пользователь с таким именем
        try:
            user.validate_unique()
        except ValidationError as er:
            errors.update(er.message_dict)
        # Если есть ошибки, передаем их в контексте шаблону, который умеет их отображать
        if errors:
            return render(request, 'registration_low.html', {'reg_errors': errors})
        # Если ошибок нет, сохраняем пользователя в базе, перенаправляем на главную
        user.save()
        return HttpResponseRedirect("/")
    return render(request, 'registration_low.html')
Beispiel #4
0
def registration_low(request):
    if request.method == 'POST':
        errors = {}  # Тут будем хранить ошибки, чтобы отобразить на странице
        username = request.POST.get('name')
        email = request.POST.get('email')
        email2 = request.POST.get('confirm_email')
        password = request.POST.get('password')
        password2 = request.POST.get('confirm_password')
        print(request.POST)
        # Validate data
        if email != email2:
            errors['email'] = 'does not match'
        if password != password2:
            errors['password'] = '******'
        user = User(username=username, email=email)
        # Пароли хранятся в виде хэшей, поэтому их нельзя передавать напрямую
        user.set_password(password)
        # Проверяем, существует ли пользователь с таким именем
        try:
            user.validate_unique()
        except ValidationError as er:
            errors.update(er.message_dict)
        # Если есть ошибки, передаем их в контексте шаблону, который умеет их отображать
        if errors:
            return render(request, 'registration_low.html', {'reg_errors': errors})
        # Если ошибок нет, сохраняем пользователя в базе, перенаправляем на главную
        user.save()
        return HttpResponseRedirect("/")
    return render(request, 'registration_low.html')
Beispiel #5
0
def register(request):
    data = json.loads(request.body)
    username = data['username']
    password1 = data['password1']
    password2 = data['password2']
    user = User(username=username)
    if len(username) <= 3:
        response = JsonResponse(
            {"error": "Username must be at least 3 characters."}, safe=True, status=500)
    elif len(password1) <= 5:
        response = JsonResponse(
            {"error": "Password must be at least 5 characters."}, safe=True, status=500)
    elif password1 != password2:
        response = JsonResponse(
            {"error": "The two password fields didn't match."}, safe=True, status=500)
    else:
        try:
            user.validate_unique()
        except ValidationError:
            response = JsonResponse(
                {"error": "A user with that username already exists."}, safe=True, status=500)
        else:
            user.set_password(password1)
            user.save()
            response = JsonResponse(
                {"key": str(user.auth_token)}, safe=True, status=201)
    return response
Beispiel #6
0
def registration(request):
    if request.method == 'POST':
        errors = {}
        username = request.POST.get('name')
        email = request.POST.get('email')
        password = request.POST.get('password')
        password2 = request.POST.get('confirm_password')
        if password != password2:
            errors['password'] = '******'
        user = User(username=username, email=email)
        user.set_password(password)
        try:
            user.validate_unique()
        except ValidationError:
            errors['username'] = '******'
        if errors:
            return render(request, 'registration.html', {'reg_errors': errors})
        user.save()
        return HttpResponseRedirect('/')
    return render(request, 'registration.html')
Beispiel #7
0
def registration(request):
    if request.method == 'POST':
        errors = {}  # Тут будем хранить ошибки, чтобы отобразить на странице
        username = request.POST.get("login")
        last_name = request.POST.get("last_name")
        first_name = request.POST.get("first_name")
        login = request.POST.get("login")
        password = request.POST.get("password")
        confirmpassword = request.POST.get("confirmpassword")
        email = request.POST.get("email")
        phone_number = request.POST.get("phone_number")
        birthdate = request.POST.get("birthdate")
        photo = request.POST.get("photo")
        status = request.POST.get("status")
        print(request.POST)
        # user = User()
        # user.username = '******'
        # user.set_password('testgbca')
        # Validate data
        if password != confirmpassword:
            errors[
                'password'] = '******'
        user = User(username=login,
                    password=password,
                    email=email,
                    first_name=first_name,
                    last_name=last_name)
        # Пароли хранятся в виде хэшей, поэтому их нельзя передавать напрямую
        user.set_password(password)
        # Проверяем, существует ли пользователь с таким именем
        try:
            user.validate_unique()
        except ValidationError as er:
            errors.update(er.message_dict)
        # Если есть ошибки, передаем их в контексте шаблону, который умеет их отображать
        if errors:
            return render(request, "registration.html", {"reg_errors": errors})
        # Если ошибок нет, сохраняем пользователя в базе, перенаправляем на главную
        user.save()
        return HttpResponseRedirect("/privateroom/")
    return render(request, "registration.html")
Beispiel #8
0
def register(request):
    data = json.loads(request.body)
    username = data['username']
    password = data['password']
    user = User(username=username)
    if len(username) <= 3:
        response = JsonResponse(
            {"error": "Username must be at least 3 characters."}, safe=True, status=500)
    elif len(password) <= 5:
        response = JsonResponse(
            {"error": "Password must be at least 5 characters."}, safe=True, status=500)
    else:
        try:
            user.validate_unique()
        except ValidationError:
            response = JsonResponse(
                {"error": "A user with that username already exists."}, safe=True, status=500)
        else:
            user.set_password(password)
            group = Group.objects.get(name='Basic User')
            group.user_set.add(user)
            user.save()
            response = JsonResponse({"key": str(user.auth_token)}, safe=True, status=201)
    return response
Beispiel #9
0
def registration(request):
    if request.method == 'POST':
        errors = {}  # Тут будем хранить ошибки, чтобы отобразить на странице
        username = request.POST.get("login")
        last_name = request.POST.get("last_name")
        first_name = request.POST.get("first_name")
        login = request.POST.get("login")
        password = request.POST.get("password")
        confirmpassword = request.POST.get("confirmpassword")
        email = request.POST.get("email")
        phone_number = request.POST.get("phone_number")
        birthdate = request.POST.get("birthdate")
        photo = request.POST.get("photo")
        status = request.POST.get("status")
        print(request.POST)
        # user = User()
        # user.username = '******'
        # user.set_password('testgbca')
        # Validate data
        if password != confirmpassword:
            errors['password'] = '******'
        user = User(username=login, password=password, email=email, first_name=first_name, last_name=last_name)
        # Пароли хранятся в виде хэшей, поэтому их нельзя передавать напрямую
        user.set_password(password)
        # Проверяем, существует ли пользователь с таким именем
        try:
            user.validate_unique()
        except ValidationError as er:
            errors.update(er.message_dict)
        # Если есть ошибки, передаем их в контексте шаблону, который умеет их отображать
        if errors:
            return render(request, "registration.html", {"reg_errors": errors})
        # Если ошибок нет, сохраняем пользователя в базе, перенаправляем на главную
        user.save()
        return HttpResponseRedirect("/privateroom/")
    return render(request, "registration.html")
Beispiel #10
0
            return HttpResponseBadRequest(u"You have to provide a username")

        if password == None or password == "":
            return HttpResponseBadRequest(u"You have to provide a password")

        # validate password
        val_passwd_result = validate_password(password)
        if not val_passwd_result[0]:
            return HttpResponseBadRequest(val_passwd_result[1])

        # create user for django auth
        user = User(username=username, password=password)
        user.set_password(password)

        try:
            user.validate_unique()
        except ValidationError, err:
            message = " "
            error_msg = []

            for desc in err.message_dict.keys():
                error_msg.append(err.message_dict[desc][0])

            details = message.join(error_msg)

            return HttpResponseConflict(details)

        try:
            user.full_clean()
        except ValidationError, err:
            message = " "