Esempio n. 1
0
def event_detail(request, event_id):
    """ Method for event_detail and to allow
    user to register """
    event = Event.objects.get(pk=event_id)
    if request.method == 'POST':
        registration_form = RegistrationForm(request.POST)
        if registration_form.is_valid():
            current_user = request.user
            profile = Profile.objects.get(user=current_user.id)
            profile.save()
            registration = registration_form.save(commit=False)
            registration.profile = profile
            registration.event = event
            adult_amount = registration.adult_number * event.adult_price
            child_amount = registration.child_number * event.child_price
            registration.amount = adult_amount + child_amount
            order_id = '0' + str(event.id) + '0' + str(profile.id)
            registration.order_id = order_id
            registration.save()
            request.session['order_id'] = order_id
            return redirect('payment:process_payment')

    else:
        registration_form = RegistrationForm()
        return render(request, 'events/event_page.html', {'event': event,
                                                        'registration_form': registration_form})
Esempio n. 2
0
def registration(request, id, slug):
    """Event registrations page."""
    event = get_object_or_404(Event, id=id, active=True)

    # If registration is closed, we should display a different page
    if event.registrationOpen is False:
        return render_to_response(
            "events/registration-closed.html", {'event': event})

    if request.method == "POST":
        form = RegistrationForm(request.POST, request.FILES)

        if form.is_valid():
            registration = form.save(commit=False)
            registration.event = event
            registration.status = "Invited"
            registration.hash = uuid.uuid1().hex
            registration.name = '%s %s' % (
                smart_str(registration.firstName),
                smart_str(registration.familyName))

            registration.save()

            # Email confirmation
            newMail(event.id, registration.id)

            data = {
                'event': event,
                'form': form,
                'registration': registration,
            }

            return render_to_response(
                'events/registration-done.html',
                data,
                context_instance=RequestContext(request))

    else:
        form = RegistrationForm(instance=event)

    return render_to_response(
        'events/registration.html',
        {'event': event, 'form': form},
        context_instance=RequestContext(request))
Esempio n. 3
0
def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            email = request.POST['email'].replace(" ", "")
            first_name = request.POST['first_name'].replace(" ", "")
            last_name = request.POST['last_name'].replace(" ", "")
            username = first_name.lower() + last_name.lower() + \
                       email.lower().replace(" ", "")
            password = request.POST['password1']

            if User.objects.filter(username=username).exists():
                user_id = User.objects.get(username=username).id
                args = {
                    'form':
                    form,
                    'uniqueNameErrors':
                    '<h4>A user with this first and last name and email already exists. '
                    '<a href="/password-reset/">Reset your password here.</a></h4>'
                }
                return render(request, 'events/reg_form.html', args)

            else:
                form.save()
                send_mail_user_reg(email, first_name, last_name, username,
                                   password)
                return redirect('/login/')

        else:
            args = {'form': form, 'errors': form.errors}
            return render(request, 'events/reg_form.html', args)

    else:
        form = RegistrationForm()
        args = {'form': form}
        return render(request, 'events/reg_form.html', args)