def __init__(self, event, *args, **kwargs):
        if len(args) and 'registration_preview' in args[0]:
            self.preview = True
        else:
            self.preview = False

        kwargs['label_suffix'] = ''

        super(SubscribeForm, self).__init__(*args, **kwargs)

        self.event = event

        # Check the limits
        closed_options = []
        for question in event.eventquestion_set.all():
            for option in question.options.all():
                if option.is_full():
                    closed_options += [option.pk]

        self._elements = []
        inserted_default_fields = False

        # The dynamic fields
        for question in event.eventquestion_set.order_by('order'):
            if question.order >= 0 and not inserted_default_fields:
                self.fields["first_name"] = forms.CharField(max_length=64, required=True, label="Voornaam")
                self._elements += [('field', 'first_name')]
                self.fields["last_name"] = forms.CharField(max_length=64, required=True, label="Achternaam")
                self._elements += [('field', 'last_name')]
                self.fields["email"] = forms.EmailField(required=True, label="Email")
                self._elements += [('field', 'email')]
                inserted_default_fields = True
            name = question.form_id()
            if question.question_type == "INT":
                self.fields[name] = forms.IntegerField(label=question.name, required=question.required)
                self._elements += [('field', name)]
            elif question.question_type == "TXT":
                self.fields[name] = forms.CharField(max_length=256, label=question.name, required=question.required)
                self._elements += [('field', name)]
            elif question.question_type == "AFD":
                if question.radio:
                    self.fields[name] = forms.CharField(max_length=256, label=question.name, required=question.required,
                                                        widget=forms.RadioSelect(choices=AFDELINGEN))
                else:
                    self.fields[name] = forms.CharField(max_length=256, label=question.name, required=question.required,
                                                        widget=forms.Select(choices=AFDELINGEN))
                self._elements += [('field', name)]
            elif question.question_type == "BOOL":
                options = question.options.all()
                active = True
                if len(options) and options[0].price != 0:
                    if options[0].price < 0:
                        label = "%s: \u20AC %.2f korting" % (question.name, 100 / float(-options[0].price))
                    else:
                        label = "%s: \u20AC %.2f" % (question.name, float(options[0].price) / 100)
                    if not options[0].active or options[0].is_full():
                        label += " (optie is vol)"
                        active = False
                else:
                    label = question.name
                self.fields[name] = forms.BooleanField(label=label, required=question.required)
                if not active:
                    self.fields[name].widget.attrs['disabled'] = 'disabled'
                self._elements += [('field', name)]
            elif question.question_type == "CHOICE":
                if question.radio:
                    self.fields[name] = forms.ModelChoiceField(widget=RadioSelectDisabled(), label=question.name, required=question.required, queryset=question.options.exclude(active=False).order_by('order'), empty_label=None)
                else:
                    self.fields[name] = forms.ModelChoiceField(widget=SelectDisabled(), label=question.name, required=question.required, queryset=question.options.exclude(active=False).order_by('order'), empty_label=None)
                self._elements += [('field', name)]
                self.fields[name].widget.disabledset = question.options.filter(Q(pk__in=closed_options) | Q(active=False))
            elif question.question_type == "TEXT":
                allowed_tags = ['a', 'b', 'code', 'em', 'h3', 'i', 'img', 'strong', 'ul', 'ol', 'li', 'p', 'br']
                allowed_attrs = {
                    '*': ['class', 'style'],
                    'a': ['href', 'target'],
                    'img': ['src', 'alt'],
                }
                text = mark_safe(bleach.clean(question.text, tags=allowed_tags, attributes=allowed_attrs))
                self._elements += [('text', text)]

        if not inserted_default_fields:
            self.fields["first_name"] = forms.CharField(max_length=64, required=True, label="Voornaam")
            self._elements += [('field', 'first_name')]
            self.fields["last_name"] = forms.CharField(max_length=64, required=True, label="Achternaam")
            self._elements += [('field', 'last_name')]
            self.fields["email"] = forms.EmailField(required=True, label="Email")
            self._elements += [('field', 'email')]
dataset/ETHPy150Open jonge-democraten/dyonisos/subscribe/forms.py/SubscribeForm.__init__/swapped operands of `/`