Beispiel #1
0
def create(request):
    form = SubscriptionForm(request.POST)

    if not form.is_valid():
        context = RequestContext(request, {'form': form})
        return render_to_response('subscriptions/new.html', context)

    s = Subscription()
    s.name = form.cleaned_data['name']
    s.cpf = form.cleaned_data['cpf']
    s.email = form.cleaned_data['email']
    s.phone = form.cleaned_data['phone']
    s.save()

    # notifica o cadastro
    send_subscription_email(s)
    return HttpResponseRedirect(reverse('subscriptions:success', args=[ s.pk ]))
Beispiel #2
0
def add(request):
    if request.method == 'POST':
        form = SubscribeForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email']

            # search if email was not registered yet
            if Subscription.objects.filter(email=email):

                return render_to_response(
                    'subscriptions/index.html', {
                        'form': form,
                        'error_message': 'Email already registered',
                    })

            else:

                sub = Subscription()
                sub.email = email
                sub.originating_ip = request.META['REMOTE_ADDR']
                sub.save()

                # Send email confirming and providing user with links to unsubscribe.
                send_subscribe_email(sub)

                # Always return an HttpResponseRedirect after successfully dealing
                # with POST data. This prevents data from being posted twice if a
                # user hits the Back button.
                return HttpResponseRedirect(
                    reverse('subscriptions.views.index') + '?success=1')

    else:
        form = SubscribeForm()

    return render_to_response('subscriptions/index.html', {
        'form': form,
    })