Changeset - 31c265a6b841
[Not reviewed]
0 3 0
Joel Addison - 3 years ago 2021-11-27 06:36:16
joel@addison.net.au
Adjust attendee profile
3 files changed with 3 insertions and 4 deletions:
0 comments (0 inline, 0 general)
pinaxcon/registrasion/forms.py
Show inline comments
 
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',
 
            'lca_chat',
 
            'future_conference',
 
        ]
 
        widgets = {
 
            'past_lca': forms.widgets.CheckboxSelectMultiple
 
        }
 
        field_classes = {
 
            "of_legal_age": YesNoField,
 
        }
pinaxcon/registrasion/models.py
Show inline comments
...
 
@@ -122,65 +122,65 @@ class AttendeeProfile(rego.AttendeeProfileBase):
 
    )
 
    address_line_2 = models.CharField(
 
        verbose_name="Address line 2",
 
        max_length=1024,
 
        blank=True,
 
    )
 
    address_suburb = models.CharField(
 
        verbose_name="City/Town/Suburb",
 
        max_length=1024,
 
        blank=True,
 
    )
 
    address_postcode = models.CharField(
 
        verbose_name="Postal/Zip code",
 
        max_length=1024,
 
        blank=True,
 
    )
 
    country = CountryField(
 
        verbose_name="Country",
 
        default="AU",
 
    )
 
    state = models.CharField(
 
        max_length=256,
 
        verbose_name="State/Territory/Province",
 
        help_text="If your Country is Australia, you must list a state.",
 
        blank=True,
 
    )
 

	
 
    of_legal_age = models.BooleanField(
 
        verbose_name="Are you over 18?",
 
        help_text="Being under 18 will not stop you from attending the "
 
                  "conference. We need to know whether you are over 18 to "
 
                  "allow us to cater for you at venues that serve alcohol.",
 
        blank=True, # LCA2022 - not needed.
 
        blank=True,
 
        default=False,
 
    )
 
    dietary_restrictions = models.CharField(
 
        verbose_name="Food allergies, intolerances, or dietary restrictions",
 
        max_length=256,
 
        blank=True,
 
    )
 
    accessibility_requirements = models.CharField(
 
        verbose_name="Accessibility-related requirements",
 
        max_length=256,
 
        blank=True,
 
    )
 
    gender = models.CharField(
 
        verbose_name="Gender",
 
        help_text="Gender data will only be used for demographic purposes.",
 
        max_length=64,
 
        blank=True,
 
    )
 

	
 
    children = models.CharField(
 
        verbose_name="Child Ages and Information",
 
        max_length=256,
 
        help_text="Linux.conf.au is a family friendly conference and provides "
 
            "free child-care for pre-school children from 6 months up to 5 years. We "
 
            "hope to also provide a programme for older children and will let you "
 
            "know closer to the conference. If you're wanting to bring your children "
 
            "to LCA, please let us know their age(s) so we can ensure we have "
 
            "enough spaces available.",
 
        blank=True
 
    )
 

	
 
    linux_australia = models.BooleanField(
vendor/regidesk/regidesk/templates/regidesk/ci_overview.html
Show inline comments
...
 
@@ -16,68 +16,68 @@
 
{% ticket_type as ticket_type %}
 

	
 
<a type="button" class="btn btn-outline-primary" href="{% url 'regidesk:check_in_scanner' %}">Return to scanning page</a>
 

	
 
<div class="card my-3">
 
    <div class="card-header">Content Check</div>
 
    <div class="card-body">
 
        <dl class="card-text row">
 
            <dt class="col-sm-3">Ticket type</dt>
 
            <dd class="col-sm-9">{{ ticket_type }}</dd>
 

	
 
            <dt class="col-sm-3">Name</dt>
 
            <dd class="col-sm-9">{{ user.attendee.attendeeprofilebase.attendeeprofile.name }}</dd>
 

	
 
            <dt class="col-sm-3">Company</dt>
 
            <dd class="col-sm-9">{% if ticket_type == "Student" or ticket_type == "Hobbyist" or "Only" in ticket_type %}{% else %}{{ user.attendee.attendeeprofilebase.attendeeprofile.company }}{% endif %}</dd>
 

	
 
            <dt class="col-sm-3">Free Text 1</dt>
 
            <dd class="col-sm-9">{{ user.attendee.attendeeprofilebase.attendeeprofile.free_text_1 }}</dd>
 

	
 
            <dt class="col-sm-3">Free Text 2</dt>
 
            <dd class="col-sm-9">{{ user.attendee.attendeeprofilebase.attendeeprofile.free_text_2 }}</dd>
 

	
 
            {% comment "Not needed for LCA2022 online" %}
 
            <dt class="col-sm-3">Penguin Dinner Tickets</dt>
 
            <dd class="col-sm-9">{{ penguin_dinner_count }}</dd>
 

	
 
            <dt class="col-sm-3">Speaker Dinner Tickets</dt>
 
            <dd class="col-sm-9">{{ speakers_dinner_count }}</dd>
 

	
 
            <dt class="col-sm-3">PDNS Tickets</dt>
 
            <dd class="col-sm-9">{{ pdns_count }}</dd>
 
            {% endcomment %}
 

	
 
            <dt class="col-sm-3">Over 18 years</dt>
 
            <dd class="col-sm-9">{% if user.attendee.attendeeprofilebase.attendeeprofile.of_legal_age %}Yes{% else %}<strong class="red">NO</strong>{% endif %}</dd>
 
            {% endcomment %}
 

	
 
            <dt class="col-sm-3">Username</dt>
 
            <dd class="col-sm-9">{{ user.username }}</dd>
 
        </dl>
 

	
 
        {% comment "Not needed for LCA2022 online" %}
 
        <h4>Shirts ordered</h4>
 
        <table class="table card-text">
 
            {% for shirt in shirts%}
 
            <tr>
 
                <td>{{ shirt.product }}</td>
 
                <td>{{ shirt.quantity }}</td>
 
            </tr>
 
            {% endfor %}
 
        </table>
 
        {% endcomment %}
 
    </div>
 
</div>
 

	
 
<div class="card my-3">
 
    <div class="card-header">Venueless</div>
 
    <div class="card-body">
 
        <dl class="card-text row">
 
            <dt class="col-sm-3">User Id</dt>
 
            <dd class="col-sm-9">{{ check_in.venueless_user_id }}</dd>
 

	
 
            <dt class="col-sm-3">Traits</dt>
 
            <dd class="col-sm-9">{{ check_in.venueless_traits }}</dd>
 

	
 
            <dt class="col-sm-3">Token</dt>
 
            <dd class="col-sm-9">{{ check_in.venueless_token|truncatechars:20 }}</dd>
 
        </dl>
0 comments (0 inline, 0 general)