Example #1
0
def signup(request):
    if len(request.GET) == 0:
        return render(request, 'users/signup.html')
    else:
        user = Users()
        user.fname = request.GET['fname']
        user.lname = request.GET['lname']
        user.email = request.GET['email']
        user.password = request.GET['password']
        user.save()
        request.session['user'] = user.fname
        return redirect('home')
Example #2
0
    def post(self, request):

        data = request.data
        try:
            auth_vender = {
                "email": data['email'],
                "password": data['password'],
                "password_confirm": data['password_confirm']
            }
            data.pop('password')
            data.pop('password_confirm')
        except Exception as e:
            return Response({
                "status":
                False,
                "msg":
                "Email, Password, Confirm Password fields are required"
            })

        serializer_class = TeacherAuthSerializer(data=auth_vender)
        if serializer_class.is_valid():
            teacher_auth = Users()
            teacher_auth.email = serializer_class.data['email']
            teacher_auth.is_teacher = True
            teacher_auth.set_password(
                serializer_class.data['password_confirm'])
            teacher_auth.save()
            print(teacher_auth.id, ">>>>>>>>>>>..")
            data['id'] = teacher_auth.id
            teacher_serializer = CreateTeacherProfileSerializer(data=data)

            if teacher_serializer.is_valid():
                teacher_serializer.save()
                return Response({
                    "status": True,
                    "msg": "Teacher created successfully!...",
                    "data": teacher_serializer.data
                })

            return Response({
                "status": False,
                "error": teacher_serializer.errors
            })

        return Response({"status": False, "error": serializer_class.errors})
Example #3
0
    def post(self, request):

        data = request.data
        try:
            auth_student = {
                "email": data['email'],
                "password": data['password'],
                "password_confirm": data['password_confirm']
            }
            data.pop('password')
            data.pop('password_confirm')
        except Exception as e:
            return Response({
                "status":
                False,
                "msg":
                "Email, Password, Confirm Password fields are required"
            })

        serializer_class = StudentAuthSerializer(data=auth_student)
        if serializer_class.is_valid():
            student_auth = Users()
            student_auth.email = serializer_class.data['email']
            student_auth.is_student = True
            student_auth.set_password(
                serializer_class.data['password_confirm'])
            student_auth.save()
            print(student_auth.id, ">>>>>>>>>>>..")
            data['id'] = student_auth.id
            student_serializer = CreateStudentProfileSerializer(data=data)

            if student_serializer.is_valid():
                student_serializer.save()
                return Response({
                    "status": True,
                    "msg": "Student created successfully!...",
                    "data": student_serializer.data
                })

            return Response({
                "status": False,
                "error": student_serializer.errors
            })

        return Response({"status": False, "error": serializer_class.errors})
Example #4
0
def SignupView(request):

    if request.method == 'POST':
        email = request.POST['email']
        username = request.POST['username']
        password = request.POST['password']
        password_confirm = request.POST['password_confirmation']
        # Validations Pass
        if password != password_confirm:
            error = 'The passwords do not match.'
            return render(request, 'signup.html', {'error': error})
        # email filter
        user_with_email = User.objects.filter(email=email)
        # email exist?
        if user_with_email:
            error = f'There is another account using {email}'
            return render(request, 'signup.html', {'error': error})
        # user filter
        us = User.objects.filter(username=username)
        # user exist?
        if us:
            error = f'There is another account using {username}'
            return render(request, 'signup.html', {'error': error})
        # creating user
        try:
            user = User.objects.create_user(username=username,
                                            password=password)
            print('uno')
            user.save()
            new_user = Users(user=user)
            print('dos')
            new_user.first_name = request.POST['firstname']
            new_user.last_name = request.POST['lastname']
            new_user.email = email
            new_user.save()
            login(request, user)
            # if create is complete, redirect to chat view
            return redirect('chat')
        except IntegrityError as ie:
            error = f'There is another account using {username}'
            return render(request, 'signup.html', {'error': error})

    return render(request, 'signup.html')