VIP speakers
This commit is contained in:
parent
9c53dd6878
commit
72f254b3d3
|
@ -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'),
|
||||
}
|
||||
|
|
20
cfp/migrations/0017_auto_20171103_1922.py
Normal file
20
cfp/migrations/0017_auto_20171103_1922.py
Normal 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'),
|
||||
),
|
||||
]
|
|
@ -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()
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -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>
|
||||
—
|
||||
|
|
|
@ -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.
|
@ -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"
|
||||
|
|
Loading…
Reference in New Issue
Block a user