Add assistance details field to speaker

Add multiline text field to gather details on travel and accommodation
assistance to help with speaker acceptance planning.
This commit is contained in:
Joel Addison 2019-06-24 21:59:47 +10:00
parent 23e09b0fb5
commit 41f6d067dd
4 changed files with 60 additions and 11 deletions

View file

@ -62,7 +62,7 @@
{% else %}
<div class="special_requirements monospace-text"><b>No Special Talk Requirements Requested</b></div>
{% endif %}
</div>
&nbsp;
</div>
@ -104,7 +104,7 @@
<div class="row">
<label class="list-label col-md-2">Abstract</label>
<div class="col-md-10">
<div class="abstract monospace-text well">{{ proposal.abstract_html|safe }}&nbsp;</div>
<div class="abstract monospace-text">{{ proposal.abstract_html|safe }}&nbsp;</div>
<p></p>
</div>
</div>
@ -112,7 +112,7 @@
<div class="row">
<label class="list-label col-md-2">Private Abstract</label>
<div class="col-md-10">
<div class="private_abstract monospace-text well">{{ proposal.private_abstract_html|safe }}&nbsp;</div>
<div class="private_abstract monospace-text">{{ proposal.private_abstract_html|safe }}&nbsp;</div>
<p></p>
</div>
</div>
@ -190,16 +190,16 @@
<div class="card-body">
<div class="row">
<label class="list-label col-md-2">Biography</label>
<div class="col-md-10 well monospace-text">{{ speaker.biography_html|safe }}&nbsp;</div>
<div class="col-md-10 monospace-text">{{ speaker.biography_html|safe }}&nbsp;</div>
</div>
<div class="row">
<label class="list-label col-md-2">Experience</label>
<div class="col-md-10 well monospace-text">{{ speaker.experience_html|safe }}&nbsp;</div>
<div class="col-md-10 monospace-text">{{ speaker.experience_html|safe }}&nbsp;</div>
</div>
{% if speaker.accessibility_html %}
<div class="row">
<label class="list-label col-md-2">Accessibility Requirements</label>
<div class="col-md-10 well monospace-text">{{ speaker.accessibility_html|safe }}&nbsp;</div>
<div class="col-md-10 monospace-text">{{ speaker.accessibility_html|safe }}&nbsp;</div>
</div>
{% endif %}
</div>
@ -216,7 +216,6 @@
</h2>
</div>
<div class="row">
<div class="col-12">
<table class="table">
@ -225,6 +224,7 @@
<th>Name</th>
<th>Travel</th>
<th>Accomodation</th>
<th>Details</th>
</tr>
</thead>
<tbody>
@ -234,10 +234,12 @@
<td>{{ speaker.name }}</td>
<td>{{ speaker.travel_assistance }}</td>
<td>{{ speaker.accommodation_assistance }}</td>
<td><div class="monospace-text">{{ speaker.assistance_html|safe }}</div></td>
{% else %}
<td><b>Unconfirmed co-presenter</b></td>
<td><b>Unknown</b></td>
<td><b>Unknown</b></td>
<td><b>Unknown</b></td>
{% endif %}
</tr>
{% endfor %}

View file

@ -20,6 +20,7 @@ class SpeakerForm(forms.ModelForm):
"accessibility",
"travel_assistance",
"accommodation_assistance",
"assistance",
"agreement",
]

View file

@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.21 on 2019-06-24 11:28
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('symposion_speakers', '0007_auto_20180712_1006'),
]
operations = [
migrations.AddField(
model_name='speaker',
name='assistance',
field=models.TextField(blank=True, help_text='We have budget set aside to provide financial assistance to linux.conf.au speakers and attendees who might otherwise find it difficult to attend. Please provide details on why you require travel and/or accommodation assistance in order to present your proposed sessions. For travel assistance, please also tell us where you will be coming from (country, state, etc) to assist with planning.', verbose_name='Travel/Accommodation assistance details'),
),
migrations.AddField(
model_name='speaker',
name='assistance_html',
field=models.TextField(blank=True),
),
migrations.AlterField(
model_name='speaker',
name='accommodation_assistance',
field=models.BooleanField(default=False, help_text='Check this box if you require us to provide you with accommodation in order to present your proposed sessions.', verbose_name='Accommodation assistance required'),
),
migrations.AlterField(
model_name='speaker',
name='travel_assistance',
field=models.BooleanField(default=False, help_text='Check this box if you require assistance to travel to linux.conf.au in order to present your proposed sessions.', verbose_name='Travel assistance required'),
),
]

View file

@ -66,17 +66,27 @@ class Speaker(models.Model):
travel_assistance = models.BooleanField(
blank=True,
default=False,
help_text=_("Check this box if you require assistance to travel to Christchurch to "
"present your proposed sessions."),
help_text=_("Check this box if you require assistance to travel to linux.conf.au "
"in order to present your proposed sessions."),
verbose_name=_("Travel assistance required"),
)
accommodation_assistance = models.BooleanField(
blank=True,
default=False,
help_text=_("Check this box if you require us to provide you with student-style "
"accommodation in order to present your proposed sessions."),
help_text=_("Check this box if you require us to provide you with accommodation "
"in order to present your proposed sessions."),
verbose_name=_("Accommodation assistance required"),
)
assistance = models.TextField(
blank=True,
help_text=_("We have budget set aside to provide financial assistance to "
"linux.conf.au speakers and attendees who might otherwise find it difficult to attend. "
"Please provide details on why you require travel and/or accommodation assistance "
"in order to present your proposed sessions. "
"For travel assistance, please also tell us where you will be coming from "
"(country, state, etc) to assist with planning."),
verbose_name=_("Travel/Accommodation assistance details"))
assistance_html = models.TextField(blank=True)
agreement = models.BooleanField(
default=False,
help_text=_("I agree to the "
@ -107,6 +117,7 @@ class Speaker(models.Model):
self.biography_html = parse(self.biography)
self.experience_html = parse(self.experience)
self.accessibility_html = parse(self.accessibility)
self.assistance_html = parse(self.assistance)
return super(Speaker, self).save(*args, **kwargs)
def __str__(self):