Ejemplo n.º 1
0
def sign_up(request):
    title = "Sign Up"
    #if reached via POST
    if request.method == 'POST':
        # make the SignUpForm
        form = SignupForm(data = request.POST)
        # if the form is valid
        if form.is_valid():
            # check that the input is correct(Passwords match)
            if request.POST['password'] != request.POST['password2']:
                message = "Passwords did not match. Please try again"
            # if passwords do match, (we do not need to check for double 
            # users because django does that 
            else:
                # Save the user's form data to the database.
                user = form.save()
                # Hash Password
                user.set_password(user.password)
                user.save()
                user = authenticate(username=request.POST['username'], password=request.POST['password'])
                login(request, user)
                return redirect('/profile')

        # Print problems to terminal
        else:
            print(form.errors)
            message = form.errors

    # Not POST , redirect to needed page
    else:
        message = "If not already a Member."
    return render(request, "signup.html", {"message": message, "title": title})
Ejemplo n.º 2
0
def signup(request):
    if request.method == 'POST':
        form = SignupForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user.is_active = True
            user.save()
            return HttpResponse(
                'Please confirm your email address to complete the registration'
            )
    else:
        form = SignupForm()
    return render(request, 'signup.html', {'form': form})
Ejemplo n.º 3
0
def signup(request):
    """signup
    to register users
    """
    if request.method == "POST":
        signupform = SignupForm(request.POST)
        if signupform.is_valid():
            user = signupform.save(commit=False)
            user.save()

            return HttpResponseRedirect(reverse("signup_ok"))
    elif request.method == "GET":
        signupform = SignupForm()

    return render(request, "registration/signup.html",
                  {'signupform': signupform})
Ejemplo n.º 4
0
def signup(request):
    sections = Section.objects.all()
    post_num = Post.objects.count()
    user_num = User.objects.filter(is_active=True).count()
    if request.method == 'POST':
        form = SignupForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user.is_active = False
            user.save()
            current_site = get_current_site(request)
            subject = 'Activate your blog account.'
            message = render_to_string(
                'main/acc_active_email.html', {
                    'user': user,
                    'domain': current_site.domain,
                    'uid': urlsafe_base64_encode(force_bytes(user.pk)),
                    'token': account_activation_token.make_token(user),
                })
            # user.email_user(subject, message)
            toemail = form.cleaned_data.get('email')
            email = EmailMessage(subject, message, to=[toemail])
            email.send()
            return render(
                request, 'main/signup.html', {
                    'sections':
                    sections,
                    'post_num':
                    post_num,
                    'user_num':
                    user_num,
                    'msg':
                    'Please confirm your email address to complete the registration'
                })
    else:
        form = SignupForm()
    return render(
        request, 'main/signup.html', {
            'form': form,
            'sections': sections,
            'post_num': post_num,
            'user_num': user_num,
        })
Ejemplo n.º 5
0
def signup(request, backend, success_url=None, extra_context=None):
    disallowed_url = 'registration_disallowed'
    backend = get_backend(backend)

    if not backend.registration_allowed(request):
        return redirect(disallowed_url)

    if request.method == 'POST':
        user_form = UserForm(request.POST)
        signup_form = SignupForm(request.POST)

        if user_form.is_valid() and signup_form.is_valid():
            new_user = backend.register(request, **user_form.cleaned_data)
            profile = signup_form.save(commit=False)
            profile.user = new_user
            profile.save()
            if success_url is None:
                to, args, kwargs = backend.post_registration_redirect(request, new_user)
                return redirect(to, *args, **kwargs)
            else:
                return redirect(success_url)
    else:
        user_form = UserForm()
        signup_form = SignupForm()
    
    if extra_context is None:
        extra_context = {}
    context = RequestContext(request)
    for key, value in extra_context.items():
        context[key] = callable(value) and value() or value

    return render_to_response(
        'signup.html',
        {
            'user_form': user_form,
            'signup_form': signup_form
        },
        context_instance=context)