Exemplo n.º 1
0
def signup(request):
    if request.user.is_authenticated:
        logout(request)
    page_title = "Magnesium & Hope - Sign up - A New Way to Find Help Fighting Your Cancer"
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            #username = form.cleaned_data.get('email')

            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return HttpResponseRedirect('../success')
        else:
            messages.success(request, ('This user already exists'))
        return render(request, 'haipumpfinder/signup.html', {
            'form': form,
            'page_title': page_title
        })
    else:
        form = SignUpForm()
        #print('Form wasnt valid')
        #print(form)

    return render(request, 'haipumpfinder/signup.html', {
        'form': form,
        'page_title': page_title
    })
Exemplo n.º 2
0
def sign_up(request):
    '''Returns a rendered html page the user can use to sign up for an
    account. Currently does not validate the sign up information.

    Arguments:
        request: the request sent by the user
    '''
    # if this is a POST request we need to process the form data
    if request.method == 'POST':
        # create a form instance and populate it with data from the request:
        form = SignUpForm(request.POST)
        # TODO: Issue #27 Add proper verification
        if form.is_valid():
            user = User.objects.create_user(form.data['user_name'], None,
                                            form.data['password'])
            Account.objects.create(user=user)
            auth.login(request, user)
            return HttpResponseRedirect('/')

    # if a GET (or any other method) we'll create a blank form
    # TODO: I took this from the example, but I'm not quite sure if we want it
    else:
        form = SignUpForm()

    return render(request, 'accounts/signup.html', {'form': form})
Exemplo n.º 3
0
def signup_user(request):
    if request.method == 'GET':
        context = {
            'form': SignUpForm(),
        }

        return render(request, 'accounts/signup', context)
    else:
        form = SignUpForm(request.POST)

        if form.is_valid():
            user = form.save()
            profile = UserProfile(
                user=user,

            )
            profile.save()

            login(request, user)
            return redirect('index')

        context = {
            'form': form,
        }

        return render(request, 'accounts/signup.html', context)
Exemplo n.º 4
0
def signup(request):
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user = form.save()
            user.refresh_from_db(
            )  # load the profile instance created by the signal
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')

            user.profile.role = form.cleaned_data['role']
            #user.profile.organisation = form.cleaned_data.get('organisation') # figure out whether to select from drop down or free type field
            user.profile.house_name_no = form.cleaned_data['house_name_no']
            user.profile.street = form.cleaned_data['street']
            user.profile.town = form.cleaned_data['town']
            user.profile.county = form.cleaned_data.get('county')
            user.profile.postcode = form.cleaned_data.get('postcode')
            user.profile.tel = form.cleaned_data.get('tel')
            #user.profile.gdpr_consent = form.cleaned_data.get('gdpr_consent') #change field type to True / False

            user.save()
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return redirect('home')
    else:
        form = SignUpForm()
    return render(request, 'signup.html', {'form': form})
Exemplo n.º 5
0
def signup(request):
    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)
            mail_subject = 'Activate your account.'
            message = render_to_string(
                'acc_active_email.html', {
                    'user': user,
                    'domain': current_site.domain,
                    'uid': urlsafe_base64_encode(force_bytes(
                        user.pk)).decode(),
                    'token': account_activation_token.make_token(user),
                })
            to_email = form.cleaned_data.get('email')
            email = EmailMessage(mail_subject, message, to=[to_email])
            email.send()
            return render(request, 'registration_pending.html', {})
        else:
            print(form.errors)
            return render(request, 'signup.html', {'form': form})
    else:
        form = SignUpForm()
        return render(request, 'signup.html', {'form': form})
Exemplo n.º 6
0
def create_account_view(request, *args, **kwargs):
    # Only process if a post request is sent
    if request.method == 'POST':

        create_account_form = SignUpForm(request.POST)

        # If the form has correct information it can be stored
        if create_account_form.is_valid():
            create_account_form.save()
            username = create_account_form.cleaned_data.get('username')
            password = create_account_form.cleaned_data.get('password1')
            email = create_account_form.cleaned_data.get('email')

            # Login to the account instantly
            user = authenticate(username=username, password=password)
            login(request, user)

            # Return back to the main screen
            return redirect('index')
    else:
        create_account_form = SignUpForm()

    my_context = {
        'form': create_account_form,
    }

    return render(request, 'accounts/create_account.html', my_context)
Exemplo n.º 7
0
def register(request):
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user_type = request.POST.get('user_type', '')
            user_name = request.POST.get('username', '')
            print(user_type)
            form.save()

            t = User.objects.get(username=user_name)
            u = UserType.objects.get(user_id=t.id)
            u.user_type = user_type
            u.user_name = user_name
            u.save()
            return render_to_response(
                'login.html', {
                    "username": user_name,
                    "password": request.POST.get('password', '')
                })
        else:
            return render(request, 'signup.html', {"msg": form.errors})
    else:
        form = SignUpForm()
    args = {'form': form, "msg": form.errors}
    return render(request, 'signup.html', args)
Exemplo n.º 8
0
def signup_view(request):
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user = form.save()
            user.refresh_from_db()
            user.profile.first_name = form.cleaned_data.get('first_name')
            user.profile.last_name = form.cleaned_data.get('last_name')
            user.profile.email = form.cleaned_data.get('email')
            # user can't login until link confirmed
            user.is_active = False
            user.save()
            current_site = get_current_site(request)
            subject = 'Please Activate Your Account'
            # load a template like get_template()
            # and calls its render() method immediately.
            message = render_to_string(
                'accounts/activation_request.html',
                {
                    'user': user,
                    'domain': current_site.domain,
                    'uid': urlsafe_base64_encode(force_bytes(user.pk)),
                    # method will generate a hash value with user related data
                    'token': account_activation_token.make_token(user),
                })
            user.email_user(subject, message)
            return redirect('activation_sent')
    else:
        form = SignUpForm()
    return render(request, 'accounts/signup.html', {'form': form})
Exemplo n.º 9
0
def signup(request):
    if request.user.is_authenticated:
        return redirect('/')
    
    else:
        if request.method == 'POST':
            form = SignUpForm(request.POST)
            if not form.is_valid():
                return render(request, 'accounts/signup.html', { 'forms': form })

            else:
                # check for terms of services
                # if user agree in terms then proceed
                #if request.POST['tosCheckBox']:
                
                email = form.cleaned_data.get('email')
                password = form.cleaned_data.get('password')

                # create record for this user
                # auto subscriber for now
                User.objects.create_user(password=password, email=email)
                #EmailSubscriber.objects.create(email=email)

                # authenticate then login
                user = authenticate(email=email, password=password)
                login(request, user)
                return redirect('application_events:thanksfor', thanks_for = 'registered')

        else:
            return render(request, 'accounts/signup.html', { 'forms': SignUpForm() })
Exemplo n.º 10
0
def signup(request):
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            #user = form.save()
            user = form.save(commit=False)
            user.is_active = False
            user.save()
            current_site = get_current_site(request)
            message = render_to_string(
                'acc_active_email.html', {
                    'user': user,
                    'domain': current_site.domain,
                    'uid': urlsafe_base64_encode(force_bytes(
                        user.pk)).decode(),
                    'token': account_activation_token.make_token(user),
                })
            mail_subject = "Activate your account"
            to_email = form.cleaned_data.get('email')
            email = EmailMessage(mail_subject, message, to=[to_email])
            email.send()
            #auth_login(request, user)
            return render(request, 'confirm_reg.html')
            #return redirect('post_list')
    else:
        form = SignUpForm()
    return render(request, 'signup.html', {'form': form})
def signup(request):
    # Collect alerts.
    alerts = get_alerts(request)

    # Test whether the user has logged in.
    if request.user.is_authenticated():
        alerts.append(
            ('info', 'You have logged in!',
             'If you want to sign up a new account, please log out first.'))
        request.session['alerts'] = alerts
        return HttpResponseRedirect('/info/')

    data = {'alerts': alerts}

    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user = form.save()
            user.refresh_from_db(
            )  # load the staff instance created by the signal
            user.staff.full_name = form.cleaned_data.get('full_name')
            user.staff.age = form.cleaned_data.get('age')
            user.save()
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=user.username, password=raw_password)
            direct_login(request, user)
            return redirect_with_data(request, data, '/info/')
    else:
        form = SignUpForm()

    data['form'] = form
    return render(request, 'accounts/signup.html', data)
Exemplo n.º 12
0
def signup(request):
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            form.save()
            # user = form.save(commit=False)
            # user.is_active = False
            # user.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return redirect('home')
            # current_site = get_current_site(request)
            # subject = 'Activate Your MySite Account'
            # message = render_to_string('registration/account_activation_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)

            # return redirect('account_activation_sent')
    else:
        form = SignUpForm()
    return render(request, 'registration/signup.html', {'form': form})
Exemplo n.º 13
0
def signup(request):
    auth = authenticated(request)
    if auth is not None:
        return auth
    else:
        if request.method == "POST":
            form = SignUpForm(request.POST)
            if form.is_valid():
                user = form.save(commit=False)
                current_site = get_current_site(request)
                mail_subject = '[Rhys Website] Activate your Rhys Website account.'
                message = render_to_string(
                    'accounts/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),
                    })
                to_email = form.cleaned_data.get('email')
                email = EmailMessage(mail_subject, message, to=[to_email])
                email.send()
                user.is_active = False
                user.save()
                # auto_login(request, user)

                return render(request, 'accounts/signup_done.html',
                              {'form': form})

        else:
            form = SignUpForm()
        return render(request, 'accounts/signup.html', {'form': form})
Exemplo n.º 14
0
def register(request):
    if request.session['user_type'] == 'employee':
        e_username = request.session.get('username')
        ob = User.objects.filter(username=e_username)
        if request.method == 'POST':
            form = SignUpForm(request.POST)
            if form.is_valid():
                user_type = 'customer'
                user_name = request.POST.get('username', '')
                print(user_type)
                form.save()

                t = User.objects.get(username=user_name)
                u = UserType.objects.get(user_id=t.id)
                u.user_type = user_type
                u.user_name = user_name
                u.save()
            eob = User.objects.get(username=e_username)
            pob = Product.objects.get(name=request.POST.get('s_product', ''))
            c = employee_customer(c_name=request.POST.get('username', ''))
            c.e_id = eob.id
            c.product_id = pob.id
            c.save()
            return HttpResponseRedirect('/employee/dashboard')
        else:
            form = SignUpForm()
            p = Product.objects.all()
            arg = {'form': form, 'pro': p, 'user': ob[0]}
            return render(request, 'register.html', arg)
    else:
        message = "Login in as employee to access this page."
        return render(request, 'error.html', {'message': message})
Exemplo n.º 15
0
def user_signup(request):
    form = SignUpForm()
    if request.method == "POST":
        form = SignUpForm(request.POST)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect(reverse('login'))
    return render(request, 'signup.html', {'signup_form': form})
def signupview(request):
    form = SignUpForm()
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user = form.save()
            user.set_password(user.password)
            user.save()
            return HttpResponseRedirect('/accounts/login')
    return render(request, 'accounts/signup.html', {'form': form})
Exemplo n.º 17
0
def register(request):
    form = SignUpForm()
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            form.save()
            messages.success(request, 'Account created successfully')
            return HttpResponseRedirect(reverse('accounts:login'))

    return render(request,'accounts/register.html', context={'form': form})