示例#1
0
def index(request, form=None, extra_context=None):
    if form is None:
        form = SubscriptionForm()
    context = {"form": form}
    if extra_context is not None:
        context.update(extra_context)
    return render_to_response("index.html", RequestContext(request, context))
示例#2
0
 def test_returns_error_with_less_than_11_digits_in_cpf(self):
     form = SubscriptionForm({
         'name': 'User',
         'cpf': '123456789',
         'email': '*****@*****.**',
         'phone': '85-99999999',
     })
     self.assertFalse(form.is_valid())
     self.assertTrue(form.errors.get('cpf'))
示例#3
0
 def test_returns_error_if_cpf_is_not_all_digits(self):
     form = SubscriptionForm({
         'name': 'User',
         'cpf': '123456789ab',
         'email': '*****@*****.**',
         'phone': '85-87054624'
     })
     self.assertFalse(form.is_valid())
     self.assertTrue(form.errors.get('cpf'))
示例#4
0
def new(request):
    form = SubscriptionForm(
        initial={
            'name': "Escreva seu nome",
            'cpf': 'Digite o seu CPF sem pontos',
            'email': "Escreva seu email",
            'phone_0': "Qual seu DDD",
            'phone_1': "Qual seu telefone de contato",
        })
    context = RequestContext(request, {'form': form})
    return render_to_response('subscription/new.html', context)
示例#5
0
def create(request):
    form = SubscriptionForm(request.POST)

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

    subscription = form.save()
    send_subscription_email(subscription)
    return HttpResponseRedirect(
        reverse('subscription:success', args=[subscription.pk]))
示例#6
0
def subscribe(request):
    all_posts = Post.get_posts()
    form = SubscriptionForm(request.POST)
    for field in form:
        if field.errors:
            return render(request, 'subscribed.html', {'exists': True, 'error': False, 'posts': all_posts})
    try:
        if form.is_valid():
            email = form.cleaned_data.get('email')
            SubscribedUser.subscribe(email=email)
            return render(request, 'subscribed.html', {'exists': False, 'error': False, 'posts': all_posts})
        else:
            return render(request, 'subscribed.html', {'exists': False, 'error': True, 'posts': all_posts})
    except Exception as E:
        return render(request, 'subscribed.html', {'exists': False, 'error': True, 'posts': all_posts})
示例#7
0
def edit(request, subkey):
    subscription = Subscription.all().filter("subkey =", subkey).get()
    if subscription is None:
        raise Http404
    if request.method == "GET":
        sub_settings = subscription.get_settings()
        sub_dict = {
            "email": subscription.email,
            "shows": map(lambda x: x.idnr, subscription.get_shows()),
            "subkey": subkey
        }
        form = SubscriptionForm(sub_dict)
        return index(request,
                     form=form,
                     extra_context={"subscription": subscription})
    return HttpResponseRedirect(subscription.get_absolute_url())
示例#8
0
def create(request):
    form = SubscriptionForm(request.POST)

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

    subscription = form.save()
    send_mail(
        subject=u'Inscrição no Eventex',
        message=u'Obrigado por se inscrever',
        from_email='*****@*****.**',
        recipient_list=['*****@*****.**'],
    )
    return HttpResponseRedirect(
        reverse('subscription:success', args=[subscription.pk]))
示例#9
0
def subscribe(request):
    form = SubscriptionForm(request.POST)
    if not form.is_valid():
        return index(request, form=form)
    editing = False
    if form.cleaned_data["subkey"] == "":
        subkey = Subscription.generate_subkey()
        subscription = Subscription(last_changed=datetime.datetime.now(),
                                    subkey=subkey)
    else:
        editing = True
        subkey = form.cleaned_data["subkey"]
        subscription = form._subscription
    sub_settings = {}
    subscription.set_settings(sub_settings)

    try:
        selected_shows = Show.get_by_id(map(int, form.cleaned_data["shows"]))
    except ValueError:
        return index(request, form=form)

    old_shows = []
    if editing:
        old_shows = subscription.get_shows()

    subscription.reset_cache(selected_shows)
    subscription.put()  # stay here, need key for setting shows!

    if editing:
        subscription.set_shows(selected_shows, old_shows=old_shows)
    else:
        subscription.set_shows(selected_shows)

    response = HttpResponseRedirect(subscription.get_absolute_url())
    response.set_cookie("subkey", subkey, max_age=31536000)
    return response
示例#10
0
 def test_if_form_has_no_paid_field(self):
     form = SubscriptionForm()
     self.assertFalse(form.fields.get('paid'))
示例#11
0
def new(request):
    form = SubscriptionForm()
    context = RequestContext(request, {'form': form})
    return render_to_response('subscription/new.html', context)