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 ]))
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, })