Example #1
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)
            subject = 'Activate Your MySite Account'
            message = render_to_string(
                'account_activation_email.html', {
                    'user':
                    user,
                    'domain':
                    current_site.domain,
                    'uid':
                    urlsafe_base64_encode(force_bytes(
                        user.pk)).decode('utf-8'),
                    'token':
                    account_activation_token.make_token(user),
                })
            user.email_user(subject, message)

            return redirect('account_activation_sent')
    else:
        form = SignUpForm()
    return render(request, 'signup.html', {'form': form})
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()
            Profile.update_user_profile(user, 'biology',
                                        form.cleaned_data['email'])
            bmm.update_body_measurements(user, form.cleaned_data['height'],
                                         form.cleaned_data['weight'])
            current_site = get_current_site(request)
            subject = 'Activate Your MediCare Account'
            message = render_to_string(
                '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),
                })

            from_email = settings.EMAIL_HOST_USER

            user.email_user(subject, message, from_email)

            return redirect('account_activation_sent')
    else:
        form = SignUpForm()
    return render(request, 'signup.html', {'form': form})
Example #3
0
def signup_staff(request):
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user.is_active = False
            user.is_staff = True
            user.save()

            current_site = get_current_site(request)
            subject = 'Activate Your MySite Account'
            message = render_to_string(
                '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),
                })
            send_mail(
                subject=subject,
                message=message,
                from_email='*****@*****.**',
                recipient_list=[user.email],
            )
            return redirect('account_activation_email')
    else:
        form = SignUpForm()
    return render(request, 'signup.html', {'form': form})
Example #4
0
def send_email_confirmation(request):
    """
    Sends email confirmation per user request in case user has not received confirmation email yet
    :param request:
    :return: renders the confirmation for email page
    """
    # send_mail('Email confirmation', 'This is a test', '*****@*****.**', ['*****@*****.**'])

    user = User.objects.get(username=request.user)
    # user.is_active = False
    # user.save()
    to_email = user.email
    current_site = get_current_site(request)
    mail_subject = 'Email activation request'
    message = render_to_string(
        'acc_active_email.html',
        {
            'user': user,
            'domain': current_site.domain,  ## have to change this
            'uid': urlsafe_base64_encode(force_bytes(user.pk)).decode(),
            'token': account_activation_token.make_token(user),
        })
    mail.send_mail(
        mail_subject,
        mail_subject,
        '[email protected]`',
        ['*****@*****.**'],
        html_message=message)
    return redirect('home')
Example #5
0
def signup(request):
    if request.method == 'POST':
        signupform=SignUpForm(request.POST)
        form=ProfileForm(request.POST,request.FILES)
        if form.is_valid():
            user = signupform.save(commit=False)
            user.is_active = False
            user.save()
            user.refresh_from_db()
            user.profile.dob=form.cleaned_data.get('dob')
            user.profile.gender=form.cleaned_data.get('gender')
            user.profile.mobile=form.cleaned_data.get('mobile')
            user.profile.aadhar_no=form.cleaned_data.get('aadhar_no')
            user.profile.acertificate=form.cleaned_data.get('acertificate')
            user.profile.address=form.cleaned_data.get('address')
            user.profile.bcertificate=form.cleaned_data.get('bcertificate')
            user.profile.experience=form.cleaned_data.get('experience')
            user.save()
            current_site = get_current_site(request)
            subject = 'Activate Your MySite Account'
            message = render_to_string('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:
        signupform = SignUpForm()
        form=ProfileForm
    return render(request, 'signup.html', {'form': signupform,'profile_form':form})
Example #6
0
def signup(request):
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            if User.objects.filter(
                    email__exact=request.POST.get('email')).exists() == False:
                user = form.save(commit=False)
                user.is_active = False
                user.save()
                # sending email for confirmation
                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)).decode(),
                        'token': account_activation_token.make_token(user),
                    })
                user.email_user(subject, message, '*****@*****.**')

                request.session['user_pk'] = user.pk
                request.session['user_email'] = user.email

                return redirect('account_activation_sent')
            else:
                form.add_error("email",
                               "A email with that email already exists")
    else:
        form = SignUpForm()

    return render(request, 'registration/signup.html', {'form': form})
Example #7
0
def account_activation_resent(request):
    user = User.objects.get(pk=request.session.get('user_pk'))
    # sending email for confirmation
    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)).decode(),
            'token': account_activation_token.make_token(user),
        })
    user.email_user(subject, message, '*****@*****.**')

    return redirect('account_activation_sent')
Example #8
0
def signup(request):
    """
    Registers user's profile information such as Address, Phone, etc
    # after login, user is redirected to signup to check if all information for user is registered, first time user
    # registers and logs in, specially after logging in with OAuth, he has to fill in registration form in "signup"
    # page. There is will be a bit (user_is_registered) in registration Model which will be set when user registers
    # all information
    # partially taken from : https://frfahim.github.io/post/django-registration-with-confirmation-email/
    # and from https://simpleisbetterthancomplex.com/tutorial/2016/06/27/how-to-use-djangos-built-in-login-system.html
    :param
    request: HTTP request
    :return: returns a page stating that an email confirmation has been sent to the user, for confirmation
    """
    # have to add Error message if email is not available -> maybe a User_Pass_test function
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user.save()
            # Set email_verification to 0, means user's email is not verified yet
            profile = Profile.objects.get(user__username=user.username)
            profile.email_verification_status = 0  # means email verification has not been done
            profile.save()
            # Create email message
            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,  # have to change this??
                    '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()
            login(request,
                  user,
                  backend='django.contrib.auth.backends.ModelBackend')
            # return render(request, 'confirm_email.html')
            return redirect('update_profile_after_initial')
    else:
        # Request = GET
        form = SignUpForm
    return render(request, 'registration/signup.html', {'form': form})
Example #9
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)
            subject = 'Activate Your MySite Account'
            message = render_to_string(
                '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)
            # PArt above this line does not work on localhost and prints to console
            to = user.email
            gmail_user = '******'
            gmail_pwd = 'cubingsaviour'
            smtpserver = smtplib.SMTP("smtp.gmail.com", 587)
            smtpserver.ehlo()
            smtpserver.starttls()
            smtpserver.ehlo
            smtpserver.login(gmail_user, gmail_pwd)
            header = 'To:' + to + '\n' + 'From: ' + gmail_user + '\n' + 'Subject:testing \n'
            print header
            msg = header + '\n this is test msg from mkyong.com \n\n'
            msg += "<body> <p> Rara </p> </body>"
            msg = message
            smtpserver.sendmail(gmail_user, to, msg)
            print 'done!'
            smtpserver.close

            return redirect('account_activation_sent')
    else:
        form = SignUpForm()
    return render(request, 'signup.html', {'form': form})
Example #10
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)
            subject = 'Activate Your MySite Account'
            message = render_to_string('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, 'signup.html', {'form': form})