def login(request):
    if request.method == 'POST':
        form = SubscriptionsLoginForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email']
            # User.objects.filter(email=email).exists() and
            if len(form.cleaned_data['message']
                   ) == 0:  #honey trap was not filled out
                user, created_user = User.objects.get_or_create(email=email)
                if created_user:
                    user_verification = Verification.objects.create()
                    user.verification = user_verification
                    user.save()
                user.verification.regen_verification_hash()
                user.verification.save()
                list_url = request.build_absolute_uri(
                    reverse('subscriptions_login2',
                            kwargs={
                                'email': email,
                                'key': user.verification.verification_hash
                            }))
                email_sent = EMAIL.SUBSCRIPTION_LIST.send(
                    email, {'list_url': list_url})
                logger.info(
                    u"Sent login email to user {} with a subscribe link of {} "
                    .format(email, list_url))
            message = MESSAGES.EMAIL.SUBSCRIPTION_LINK_SENT.format(email)
            return render(request, 'subscription/login_attempted.html',
                          {'message': message})
    else:
        form = SubscriptionsLoginForm()
    return render(request, 'subscription/login.html', {'form': form})
Exemplo n.º 2
0
def login(request):
    if request.method == 'POST':
        form = SubscriptionsLoginForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email']
            if User.objects.filter(email=email).exists() and len(form.cleaned_data['message']) == 0:  #honey trap was not filled out
                user = User.objects.get(email=email)
                list_url = request.build_absolute_uri(
                    reverse(
                        'list_subscriptions',
                        kwargs={
                            'email': email,
                            'key': user.verification.verification_hash}
                    )
                )
                email_sent = EMAIL.SUBSCRIPTION_LIST.send(email, {'list_url': list_url})
                logger.info(u"Sent login email to user {} with a subscribe link of {} ".format(
                    email,
                    list_url
                ))
            message = MESSAGES.EMAIL.SUBSCRIPTION_LINK_SENT.format(email)
            return render(request, 'subscription/login_attempted.html', {'message': message})
    else:
        form = SubscriptionsLoginForm()
    return render(request, 'subscription/login.html', {'form': form})
Exemplo n.º 3
0
def login(request):
    if request.method == 'POST':
        form = SubscriptionsLoginForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email']
            return redirect('list_subscriptions', email=email)
    else:
        form = SubscriptionsLoginForm()

    return render(request, 'subscription/login.html', {'form': form})