Files @ ef420b2d4300
Branch filter:

Location: symposion_app/pinaxcon/registrasion/forms.py

Joel Addison
Embedded schedule view

Allow the schedule to be embedded in external platforms.
Hide header and footer when embedded for easier consumption.
from pinaxcon.registrasion import models

from django import forms


class YesNoField(forms.TypedChoiceField):

    def __init__(self, *args, **kwargs):
        kwargs['required'] = True
        super(YesNoField, self).__init__(
            *args,
            coerce=lambda x: x in ['True', 'Yes', True],
            choices=((None, '--------'), (False, 'No'), (True, 'Yes')),
            **kwargs
        )


class ProfileForm(forms.ModelForm):
    ''' A form for requesting badge and profile information. '''

    required_css_class = 'label-required'

    class Meta:
        model = models.AttendeeProfile
        exclude = [
            'attendee',
            'of_legal_age',
            'dietary_restrictions',
            'children',
            'future_conference',
        ]
        widgets = {
            'past_lca': forms.widgets.CheckboxSelectMultiple
        }
        field_classes = {
            "of_legal_age": YesNoField,
        }