Esempio n. 1
0
def signup(request):
    print("WWWWWWWWWWWWww")
    print(request.method)
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        print(form)
        print(form.is_valid())
        print(form.is_bound)
        print(form.errors)
        if form.is_valid():
            username = form.cleaned_data.get('username')
            print(username)
            password = form.cleaned_data.get('password')
            print(password)
            raw_password = form.cleaned_data.get('password1')
            print(raw_password)
            if password == raw_password:
                form.save()
                user = authenticate(username=username, password=raw_password)
                login(request, user)
                return redirect('user:get_user_info')
            else:
                messages.error(request, "Incorrect password.")
        else:
            messages.error(request, form.errors)
    else:
        form = RegistrationForm()
    return render(request, 'user/user_register.html', {'form': form})
Esempio n. 2
0
def registration(request):
    context = dict()
    context['form'] = RegistrationForm
    context.update(csrf(request))
    if request.POST:
        form = RegistrationForm(request.POST)
        context['form'] = form
        if form.is_valid():
            form.save()  # save user to database if form is valid

            username = form.cleaned_data['username']
            email = form.cleaned_data['email']
            salt = hashlib.sha1(str(random.random()).encode('utf-8')).hexdigest()[:5]
            salted_email = salt + email
            activation_key = hashlib.sha1(salted_email.encode('utf-8')).hexdigest()
            key_expires = datetime.datetime.today() + datetime.timedelta(2)

            # Get new user by username
            new_user = User.objects.get(username=username)

            # Create and save user profile
            new_profile = UserProfile(user=new_user, activation_key=activation_key, key_expires=key_expires)
            new_profile.save()

            # Send email with activation key
            email_subject = 'Account confirmation'
            email_body = "Hey %s, thanks for signing up. To activate your account, click this link within \
            48hours http://127.0.0.1:8000/user/confirm/%s" % (username, activation_key)

            send_mail(email_subject, email_body, '*****@*****.**', [email], fail_silently=False)

            return redirect('user.views.login')
        else:
            context['form'] = form
    return render(request, "registration.html", context)
Esempio n. 3
0
def register(request):
    if request.method == "POST":
        # print(dir(request))
        form = RegistrationForm(request.POST)
        print(form)
        if form.is_valid():
            print('valid')
            form.save()
            message = "You have successfully created an account. Login to Get Investing!"
            args = {
                'rform': RegistrationForm(),
                'lform': AuthenticationForm(),
                'message': message
            }
            return render(request, 'user/login.html', args)
        else:
            print('not valid')
            error = 'The Username you have provided is already taken.'
            args = {
                'rform': RegistrationForm(),
                'message': error,
                'lform': AuthenticationForm()
            }
            return render(request, 'user/login.html', args)

    else:
        print('wrong request sent')
Esempio n. 4
0
def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            #Save the user in the built-in auth database
            form.save()

            #Create and save the user in the custom UserDetails database
            newUser = {
                'username':
                form.cleaned_data.get('username'),
                'user_id_id':
                User.objects.get(
                    username=form.cleaned_data.get('username')).pk,
            }
            newUserRow = UserDetails(**newUser)
            newUserRow.save()

            #Login the user
            autoLogin = auth.authenticate(
                username=form.cleaned_data['username'],
                password=form.cleaned_data['password1'],
            )
            auth.login(request, autoLogin)
            return redirect('/user/profile/')
        else:
            return render(request, 'reg_form.html', {'form': form})

    else:
        #If request.method == 'GET', show the registration form'
        form = RegistrationForm()
        args = {'form': form}
        return render(request, 'reg_form.html', args)
def userRegiteration(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('/thankYouRegister/')
    else:
        form = RegistrationForm()

        return render(request, "register.html", locals())
Esempio n. 6
0
    def post(self, request, *args, **kwargs):
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data['username']
            password1 = form.cleaned_data['password1']
            user = authenticate(request, username=username, password=password1)
            login(request, user)

        return render(request,
                      "user/registrer.html",
                      context={
                          'form': RegistrationForm,
                      })
Esempio n. 7
0
    def post(self, request, *args, **kwargs):
        if request.method == 'POST':
            form = RegistrationForm(request.POST)
            if form.is_valid():
                form.save()
                username = form.cleaned_data['username']
                password1 = form.cleaned_data['password1']
                user = authenticate(request,
                                    username=username,
                                    password=password1)
                login(request, user)

                return redirect("feed")
        return render(request, "user/home.html", context={'form': form})
Esempio n. 8
0
def registrationView(request):
    form = RegistrationForm()

    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data['username']
            password1 = form.cleaned_data['password1']
            user = authenticate(request, username=username, password=password1)
            login(request, user)
            return redirect('index')
    context = {'form' : form}

    template = loader.get_template('user/registration.html')
    return HttpResponse(template.render(request=request, context=context))
Esempio n. 9
0
def new_headmaster(request):
    if request.method == 'POST':
        registration_form = RegistrationForm(data=request.POST)
        headmaster_form = NewHeadMaster(data=request.POST)
        school_form = NewSchool(data=request.POST)
        address_form = NewAddress(data=request.POST)
        if registration_form.is_valid() and \
                headmaster_form.is_valid() and \
                school_form.is_valid() and address_form.is_valid():
            user = registration_form.save()
            headmaster = headmaster_form.save(commit=False)
            school = school_form.save(commit=False)
            address = address_form.save()
            school.address = address
            school.save()
            headmaster.school = school
            headmaster.user = user
            headmaster.save()
            return redirect('home')
    else:
        registration_form = RegistrationForm()
        headmaster_form = NewHeadMaster()
        address_form = NewAddress()
        school_form = NewSchool()
    return render(request, "new_headmaster.html",
                  {'form': registration_form,
                   'form1': headmaster_form,
                   'form3': address_form,
                   'form2': school_form})
Esempio n. 10
0
def registration_view(request):
    context = {}
    if request.POST:
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            email = form.cleaned_data.get('email')
            raw_password = form.cleaned_data.get('password1')
            account = authenticate(email=email, password=raw_password)
            login(request, account)
            return redirect('home')
        else:
            context['registration_form'] = form
    else:  #get request
        form = RegistrationForm()
        context['registration_form'] = form
    return render(request, 'user/register.html', context)
Esempio n. 11
0
 def test_form_email(self):
     data = {'email': self.email, 'password': "******"}
     form = RegistrationForm(data)
     self.assertTrue(form.is_valid())
     user = form.save()
     self.assertNotEqual(user.password, "test123")
     form = RegistrationForm(data)
     self.assertFalse(form.is_valid())
     self.assertEqual(list(form.errors.keys()), ['email'])
Esempio n. 12
0
def registerUser(request):
    # checks if a user has inputted in the search field in the navbar
    if 'search_filter' in request.GET:
        return index(request)
    context = {}
    if request.POST:
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            email = form.cleaned_data.get('email')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(email=email, password=raw_password)
            login(request, user)
            return redirect('/user/account')
        else:
            context['registerForm'] = form

    else:
        form = RegistrationForm()
        context['registerForm'] = form
    return render(request, 'user/register.html', context)
Esempio n. 13
0
def new_teacher(request):
    if request.method == 'POST':
        registration_form = RegistrationForm(data=request.POST)
        teacher_form = NewTeacher(data=request.POST)
        if registration_form.is_valid() and teacher_form.is_valid():
            user = registration_form.save()
            teacher = teacher_form.save(commit=False)
            teacher.user = user
            teacher.save()
            return redirect('home')
    else:
        registration_form = RegistrationForm()
        teacher_form = NewTeacher()
    return render(request, "new_teacher.html",
                  {'form': registration_form, 'form1': teacher_form})
Esempio n. 14
0
def registration_view(request):
    if request.POST:
        registration_form = RegistrationForm(request.POST)
        if registration_form.is_valid():
            login_user = registration_form.save()
            if login_user:
                login(request, login_user)
                return JsonResponse({
                    'response': "Good",
                    'result': 'success',
                    'url': reverse('main'),
                })
        else:
            response = render_template(
                'LoginRegistration/registration_form.html',
                {'registration_form': registration_form}, request)
            return JsonResponse({'response': response, 'result': 'error'})
Esempio n. 15
0
def register(request):
    if request.method == 'POST':
        user_form = RegistrationForm(request.POST)
        if user_form.is_valid():
            new_user = user_form.save(commit=False)
            new_user.set_password(user_form.cleaned_data['password'])
            if new_user.save() == 0:
                print('failed')
            #print (new_user.id)
            new_user_salt = UserSalt.objects.create(user_id=new_user.id)
            #assign_perm('view_user_profile', new_user, new_user_profile)
            #assign_perm('change_user_profile', new_user, new_user_profile)
            #assign_perm('view_salt', new_user, new_user_salt)
            return JsonResponse(CODE_MSG['success'])
        else:
            return JsonResponse(CODE_MSG['register_failed'])
    else:
        return JsonResponse(CODE_MSG['register_failed'])
Esempio n. 16
0
 def form_valid(self, form: RegistrationForm):
     address_params: dict = {
         k: self.request.POST.get(k)
         for k in AddressForm.base_fields if k != 'user'
     }
     with transaction.atomic():
         sid = transaction.savepoint()
         new_user: User = form.save()
         address_params['user'] = new_user.id
         address_form: AddressForm = AddressForm(address_params)
         if address_form.is_valid():
             new_user = self.register((new_user, form))
             address_form.save()
         else:
             transaction.savepoint_rollback(sid)
     if address_form.is_valid():
         return HttpResponseRedirect(self.get_success_url(new_user))
     else:
         return self.render_to_response(
             self.get_context_data(form=form, address_form=address_form))
Esempio n. 17
0
def user_register(request):
    if request.method == "POST":
        user_form = RegistrationForm(request.POST)
        user_profile = UserProfileForm(request.POST)
        if user_form.is_valid() and user_profile.is_valid():
            new_user = user_form.save(commit=False)
            new_user.password = user_form.cleaned_data["password1"]
            new_user.save()
            new_profile = user_profile.save(commit=False)
            new_profile.user = new_user
            new_profile.save()
            return HttpResponse("注册成功")
        else:
            print(user_form.is_valid())
            print(user_profile.is_valid())
            return HttpResponse("表单提交有误,注册失败")

    if request.method == "GET":
        user_form = RegistrationForm()
        user_profile = UserProfileForm()
        context = {"form": user_form, "profile": user_profile}
        return render(request, "user/register.html", context=context)
Esempio n. 18
0
def createAdmin(request):
    if request.method == 'POST':
        data = {
            'first_name': request.POST.get('first_name'),
            'last_name': request.POST.get('last_name'),
            'email': request.POST.get('email'),
            'phone_number': request.POST.get('phone_number'),
            'username': request.POST.get('username'),
            'password1': request.POST.get('password1'),
            'password2': request.POST.get('password2'),
        }
        form = RegistrationForm(data)
        permission_form = StaffPermissionForm({'permission': request.POST.get('permission')})
        if form.is_valid() and permission_form.is_valid():
            user = form.save()
            username = form.cleaned_data.get('username')
            user.profile.phone_number = form.cleaned_data.get("phone_number")
            user.is_active = True
            user.save()

            if permission_form.cleaned_data['permission'] == 'is_admin':
                group = Group.objects.get(name='Admin')
                group.user_set.add(user)
            elif permission_form.cleaned_data['permission'] == 'is_staff':
                group = Group.objects.get(name='Staff')
                group.user_set.add(user)

            messages.success(request, f'You Have Created An Admin Account, {username}')
            return redirect(reverse("user:otp"))
    else:
        form = RegistrationForm()
        permission_form = StaffPermissionForm()

    return render(request, 'user/register.html', {
        'form' : form,
        'permission_form': permission_form
    })