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, })
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())
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())
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, })
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)
def test_RegisterForm_invalid_when_missing_all_data(self): form = RegisterForm() self.assertFalse(form.is_valid())