VIP speakers

This commit is contained in:
Élie Bouttier 2017-11-03 20:35:24 +01:00
parent 9c53dd6878
commit 72f254b3d3
8 changed files with 47 additions and 15 deletions

View File

@ -179,6 +179,7 @@ ParticipantForm = modelform_factory(Participant, fields=('name', 'email', 'biogr
class ParticipantStaffForm(ParticipantForm):
class Meta(ParticipantForm.Meta):
fields = ('name', 'vip', 'email', 'biography')
labels = {
'name': _('Name'),
}

View File

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.1 on 2017-11-03 19:22
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('cfp', '0016_auto_20171103_1842'),
]
operations = [
migrations.AlterField(
model_name='participant',
name='vip',
field=models.BooleanField(default=False, verbose_name='Invited speaker'),
),
]

View File

@ -104,7 +104,7 @@ class Participant(PonyConfModel):
language = models.CharField(max_length=10, blank=True)
notes = models.TextField(default='', blank=True, verbose_name=_("Notes"),
help_text=_('This field is only visible by organizers.'))
vip = models.BooleanField(default=False)
vip = models.BooleanField(default=False, verbose_name=_('Invited speaker'))
conversation = models.OneToOneField(MessageThread)
objects = ParticipantManager()

View File

@ -5,7 +5,10 @@
{% block content %}
<h1>{{ participant }}</h1>
<h1>
{{ participant }}
{% if participant.vip %}<span class="badge">{% trans "VIP" %}</span>{% endif %}
</h1>
<p><a class="btn btn-success" href="{% url 'participant-edit' participant.token %}">{% trans "Edit" %}</a></p>
@ -19,6 +22,7 @@
<h2>{% trans "Informations" %}</h2>
<ul>
{% if participant.vip %}<li><b>{% trans "Invited speaker" %}</b></li>{% endif %}
<li><b>{% trans "E-mail:" %}</b> <a href="mailto:{{ participant.email }}">{{ participant.email }}</a></li>
{% if participant.twitter %}<li><b>{% trans "Twitter:" %}</b> <a href="{{ participant.twitter }}">{{ participant.twitter }}</a></li>{% endif %}
{% if participant.linkedin %}<li><b>{% trans "LinkedIn:" %}</b> <a href="{{ participant.linkedin }}">{{ participant.linkedin }}</a></li>{% endif %}

View File

@ -47,7 +47,10 @@
<tbody>
{% endif %}
<tr>
<td><a href="{% url 'participant-details' participant.token %}">{{ participant }}</a></td>
<td>
<a href="{% url 'participant-details' participant.token %}">{{ participant }}</a>
{% if participant.vip %}<span class="badge pull-right">VIP</span>{% endif %}
</td>
<td>
<span class="text-success">{% blocktrans count accepted=participant.accepted_talk_count %}accepted: {{ accepted }}{% plural %}accepted: {{ accepted }}{% endblocktrans %}</span>

View File

@ -68,7 +68,7 @@
{% for participant in talk.speakers.all %}
{% if forloop.first %}<ul>{% endif %}
<li><a href="{% url 'participant-details' participant.token %}">{{ participant }}</a></li>
<li><a href="{% url 'participant-details' participant.token %}">{{ participant }}</a>{% if participant.vip %} <span class="badge">VIP</span>{% endif %}</li>
{% if forloop.last %}</ul>{% endif %}
{% empty %}
<i>{% trans "No speakers." %}</i>

Binary file not shown.

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-03 18:42+0000\n"
"PO-Revision-Date: 2017-11-03 19:43+0100\n"
"POT-Creation-Date: 2017-11-03 19:20+0000\n"
"PO-Revision-Date: 2017-11-03 20:22+0100\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: fr\n"
@ -22,7 +22,7 @@ msgstr ""
msgid "Pending decision"
msgstr "Décision en attente"
#: cfp/forms.py:18 cfp/forms.py:103 cfp/forms.py:195
#: cfp/forms.py:18 cfp/forms.py:103 cfp/forms.py:196
msgid "Accepted"
msgstr "Accepté"
@ -34,7 +34,7 @@ msgstr "Décliné"
msgid "Waiting"
msgstr "En attente"
#: cfp/forms.py:29 cfp/forms.py:109 cfp/forms.py:201 cfp/models.py:343
#: cfp/forms.py:29 cfp/forms.py:109 cfp/forms.py:202 cfp/models.py:343
msgid "Confirmed"
msgstr "Confirmé"
@ -56,7 +56,7 @@ msgstr "Aucune"
msgid "Default duration: %(duration)d min"
msgstr "Durée par défaut : %(duration)d min"
#: cfp/forms.py:85 cfp/forms.py:97 cfp/forms.py:189
#: cfp/forms.py:85 cfp/forms.py:97 cfp/forms.py:190
#: cfp/templates/cfp/staff/talk_details.html:15
msgid "Category"
msgstr "Catégorie"
@ -81,7 +81,7 @@ msgstr "Notes"
msgid "Visible by speakers"
msgstr "Visible par les orateurs"
#: cfp/forms.py:115 cfp/forms.py:207 cfp/models.py:300
#: cfp/forms.py:115 cfp/forms.py:208 cfp/models.py:300
#: cfp/templates/cfp/staff/talk_details.html:21
#: cfp/templates/cfp/staff/talk_list.html:46
#: cfp/templates/cfp/staff/track_form.html:14
@ -136,7 +136,7 @@ msgstr "Vidéo"
msgid "Filter talks with / without video"
msgstr "Filtrer les exposés avec / sans vidéo"
#: cfp/forms.py:153 cfp/forms.py:219
#: cfp/forms.py:153 cfp/forms.py:220
msgid "Not assigned"
msgstr "Pas encore assignée"
@ -156,23 +156,23 @@ msgstr "Ajouter une étiquette"
msgid "Put in a room"
msgstr "Assigner à une salle"
#: cfp/forms.py:183 cfp/models.py:135 cfp/models.py:187 cfp/models.py:431
#: cfp/forms.py:184 cfp/models.py:135 cfp/models.py:187 cfp/models.py:431
#: cfp/templates/cfp/staff/participant_list.html:35
#: cfp/templates/cfp/staff/volunteer_list.html:29
msgid "Name"
msgstr "Nom"
#: cfp/forms.py:238
#: cfp/forms.py:239
msgid "New staff members will be informed of their new position by e-mail."
msgstr ""
"Les nouveaux membres du staff seront informés de leur nouveau rôle par "
"courrier électronique."
#: cfp/forms.py:258
#: cfp/forms.py:259
msgid "An user with that firstname and that lastname already exists."
msgstr "Un utilisateur avec ce prénom et ce nom existe déjà."
#: cfp/forms.py:263
#: cfp/forms.py:264
msgid "A user with that email already exists."
msgstr "Un utilisateur avec cet email existe déjà."
@ -278,6 +278,10 @@ msgstr "Numéro de téléphone"
msgid "This field is only visible by organizers."
msgstr "Ce champs est uniquement visible par les organisateurs."
#: cfp/models.py:107
msgid "Invited speaker"
msgstr "Orateur invité"
#: cfp/models.py:189
msgid "Color"
msgstr "Couleur"