Exemple #1
0
def register(request, eventid):
    # we need to add a bit of validation here
    if request.method == 'POST':
        form = RegisterForm(request.POST)
        if form.is_valid():
            # we need to break out if the event is full
            event = Event.objects.get(is_active=True)
            if event.number_remaining() <= 0:
                # and I need to make this better later
                return HttpResponseRedirect('/events/full')
            else:
                # we create a participant regardless of what people want to do
                # participant = Participant.objects.get_or_create(user=request.user, event_id=eventid)[0]
                if form.cleaned_data['payment_type'] == 'pp':
                    request.session['qty'] = form.cleaned_data['ticket_quantity']
                    return HttpResponseRedirect(reverse('events_payment'))   
                # elif form.cleaned_data['payment_type'] == 'ad':
                #     return HttpResponseRedirect('/events/thanks')
    else:
        form = RegisterForm()
        # we do this here because we need a participant for the context
        # need to be able to check if they're paid or not
        # to render the template differently
        try: 
            participant = Participant.objects.get(user=request.user, event__id=eventid)
        except ObjectDoesNotExist:
            participant = None

        return render(request, 'events/register.html', {
            'event': Event.objects.get(id=eventid),
            'participant': participant,
            'form': form,
        })
Exemple #2
0
 def test_RegisterForm_invalid_when_missing_email(self):
     form = RegisterForm(data={
         'candidate_first_name': 'Joe',
         'candidate_last_name': 'Developer'
     })
     self.assertEqual(form['candidate_first_name'].value(), 'Joe')
     self.assertEqual(form['candidate_last_name'].value(), 'Developer')
     self.assertFalse(form.is_valid())
Exemple #3
0
 def test_RegisterForm_invalid_when_missing_job_postings(self):
     form = RegisterForm(
         data={
             'candidate_first_name': 'Joe',
             'candidate_last_name': 'Developer',
             'candidate_email': '*****@*****.**',
             'candidate_phone': '703-123-4567'
         })
     self.assertEqual(form['candidate_first_name'].value(), 'Joe')
     self.assertEqual(form['candidate_last_name'].value(), 'Developer')
     self.assertEqual(form['candidate_email'].value(),
                      '*****@*****.**')
     self.assertEqual(form['candidate_phone'].value(), '703-123-4567')
     self.assertFalse(form.is_valid())
Exemple #4
0
def register(request, eventid):
    # we need to add a bit of validation here
    if request.method == 'POST':
        form = RegisterForm(request.POST)
        if form.is_valid():
            # we need to break out if the event is full
            event = Event.objects.get(is_active=True)
            if event.number_remaining() <= 0:
                # and I need to make this better later
                return HttpResponseRedirect('/events/full')
            else:
                # we create a participant regardless of what people want to do
                # participant = Participant.objects.get_or_create(user=request.user, event_id=eventid)[0]
                # this shit is f*****g broken, that's what, what was I thinking
                if form.cleaned_data['payment_type'] == 'pp':
                    request.session['qty'] = form.cleaned_data['ticket_quantity']
                    return HttpResponseRedirect(reverse('events_payment'))   
                # elif form.cleaned_data['payment_type'] == 'ad':
                #     return HttpResponseRedirect('/events/thanks')

    else:
        # okay it turns out that NONE of this shit works if pay ATD is enabled, lol
        form = RegisterForm(initial={'payment_type':'pp'})
        # we do this here because we need a participant for the context
        # need to be able to check if they're paid or not
        # to render the template differently
        try: 
            participant = Participant.objects.get(user=request.user, event__id=eventid)
        except ObjectDoesNotExist:
            participant = None

        # hee haw, this is a way we can detect if someone bought multiple coupons
        if participant and participant.coupon:
            coupons = Coupon.objects.filter(stripe_transaction=participant.coupon.stripe_transaction).exclude(uuid=participant.coupon)
        else:
            coupons = None

        return render(request, 'events/register.html', {
            'event': Event.objects.get(id=eventid),
            'participant': participant,
            'coupons': coupons,
            'form': form,
            })
    return render(request, 'events/register.html', {
            'event': Event.objects.get(id=eventid),
            'form': form,
        })
Exemple #5
0
 def test_RegisterForm_invalid_when_phone_invalid(self):
     form = RegisterForm(
         data={
             'candidate_first_name': 'Joe',
             'candidate_last_name': 'Developer',
             'candidate_email': '*****@*****.**',
             'candidate_phone': '703-ABC-DEFG'
         })
     self.assertEqual(form['candidate_first_name'].value(), 'Joe')
     self.assertEqual(form['candidate_last_name'].value(), 'Developer')
     self.assertEqual(form['candidate_email'].value(),
                      '*****@*****.**')
     self.assertEqual(form['candidate_phone'].value(), '703-ABC-DEFG')
     self.assertFalse(form.is_valid())
     phoneRegexMsg = form.phone_regex.message
     self.assertTrue(
         form.errors['candidate_phone'].as_text().find(phoneRegexMsg) >= 0)
Exemple #6
0
 def test_RegisterForm_invalid_when_missing_all_data(self):
     form = RegisterForm()
     self.assertFalse(form.is_valid())