示例#1
0
    def post(self, request):
        username = request.POST.get('username')
        checkmember0 = Member.objects.filter(username=username).count()
        #print('At requestActivationCode')
        #print('1. username='******'3. User EXIST!!')
            checkmember = Member.objects.get(username=username)
            mail_subject = 'HBI DigitalHub: Activate Your Account (Immediate Action Needed)'
            current_site = get_current_site(request)
            #print('5. current_site=', current_site)
            #print('6. current_site.domain=', current_site.domain)
            message = render_to_string('hbi-homepage/acc_active_email.html', {
                'user': checkmember,
                'domain': current_site.domain,
                'uid': urlsafe_base64_encode(force_bytes(checkmember.pk)),
                'token123': account_activation_token.make_token(checkmember),
                })

            # to_email = form.cleaned_data.get('email')
            send_mail(mail_subject, message, '*****@*****.**', [username])

            #print("1. mail_subject=", mail_subject)
            #print("2. message=", message)
            #print("3. username=", [username])
            messages.add_message(request, messages.SUCCESS, 'Please check your Email and activate your Account')
            return redirect('login')
        else:
            #print('3. User DOES NOT EXIST!!')
            messages.add_message(request, messages.SUCCESS, 'There is no such User registered in our System, please sign-up')
            return redirect('signup')
示例#2
0
    def post(self, request):
        context = {
            'data': request.POST,
            'has_error': False
        }

        first_name = request.POST.get('first_name')
        last_name = request.POST.get('last_name')
        email = request.POST.get('email')
        password = request.POST.get('password')
        password2 = request.POST.get('password2')
        if first_name == '':
            messages.add_message(request, messages.ERROR, 'please provide your first name')
            context['has_error'] = True
        if last_name == '':
            messages.add_message(request, messages.ERROR, 'please provide your last name')
            context['has_error'] = True
        #if email == '' or not validate_email(email):
        if email == '':
            messages.add_message(request, messages.ERROR, 'please provide a valid email')
            context['has_error'] = True
        if password == '' or password2 == '':
            messages.add_message(request, messages.ERROR, 'Passwords are required')
            context['has_error'] = True
        if password != password2:
            messages.add_message(request, messages.ERROR, 'Passwords do not match')
            context['has_error'] = True
        if Member.objects.filter(username=email).exists():
            messages.add_message(request, messages.ERROR, 'email is taken, use another one')
            context['has_error'] = True
        if context['has_error']:
            return render(request, 'hbi-homepage/signup.html', context, status=400)

        new_user = Member.objects.create_user(username=email, first_name=first_name, last_name=last_name, password=password2)
        #new_user.set_password(password)
        new_user.is_activated = False
        new_user.save()

        current_site = get_current_site(request)
        #print('1. current_site=',current_site)
        #print('2. current_site.domain=', current_site.domain)
        mail_subject = 'HBI DigitalHub: Activate Your Account'
        message = render_to_string('hbi-homepage/acc_active_email.html', {
            'user': new_user,
            'domain': current_site.domain,
            'uid': urlsafe_base64_encode(force_bytes(new_user.pk)),
            'token123': account_activation_token.make_token(new_user),
        })
        send_mail(mail_subject, message, '*****@*****.**', [email])

        #print("1. mail_subject=", mail_subject)
        #print("2. message=", message)
        #print("3. email=", [email])

        messages.add_message(request, messages.SUCCESS,'Please check your Email to activate your Account')
        return redirect('login')
示例#3
0
    def post(self, request):
        context = {
            'data': request.POST,
            'has_error': False
        }
        email = request.POST.get('email')
        #print('1. email = ', email)
        if email == '':
        #if not validate_email(email=email):
            messages.add_message(request, messages.ERROR, 'please provide an email')
            return render(request, 'hbi-homepage/request-reset-password.html', context, status=400)
        current_site = get_current_site(request)
        #print('3. current_site=', current_site)
        #print('4. current_site.domain=', current_site.domain)
        user = Member.objects.filter(username=email).first()
        #print('2. user = '******'This email is not in our records, please re-try')
            return render(request, 'hbi-homepage/request-reset-password.html', context, status=404)

        mail_subject = 'HBI DigitalHub: Reset Your Password'
        message = render_to_string('hbi-homepage/acc_finish-reset.html', {
            'user': user,
            'domain': current_site.domain,
            'uid': urlsafe_base64_encode(force_bytes(user.pk)),
            'token123': account_activation_token.make_token(user),
        })

        # to_email = form.cleaned_data.get('email')
        send_mail(mail_subject, message, '*****@*****.**', [email])

        #print("1. mail_subject=", mail_subject)
        #print("2. message=", message)
        #print("3. email=", [email])

        messages.add_message(request, messages.INFO, 'We have sent you an email with a link to reset your password')
        return render(request, 'hbi-homepage/login.html', context)