talks materials and video
This commit is contained in:
parent
0a1442b450
commit
5318b43160
|
@ -28,6 +28,7 @@ class TalkForm(forms.ModelForm):
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
categories = kwargs.pop('categories')
|
categories = kwargs.pop('categories')
|
||||||
super().__init__(*args, **kwargs)
|
super().__init__(*args, **kwargs)
|
||||||
|
self.fields['materials'].required = False
|
||||||
if categories.exists():
|
if categories.exists():
|
||||||
self.fields['category'].queryset = categories
|
self.fields['category'].queryset = categories
|
||||||
else:
|
else:
|
||||||
|
@ -92,6 +93,14 @@ class TalkFilterForm(forms.Form):
|
||||||
label=_('Scheduled'),
|
label=_('Scheduled'),
|
||||||
help_text=_('Filter talks already / not yet scheduled'),
|
help_text=_('Filter talks already / not yet scheduled'),
|
||||||
)
|
)
|
||||||
|
materials = forms.NullBooleanField(
|
||||||
|
label=_('Materials'),
|
||||||
|
help_text=_('Filter talks with / without materials'),
|
||||||
|
)
|
||||||
|
video = forms.NullBooleanField(
|
||||||
|
label=_('Video'),
|
||||||
|
help_text=_('Filter talks with / without video'),
|
||||||
|
)
|
||||||
|
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
site = kwargs.pop('site')
|
site = kwargs.pop('site')
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.11.5 on 2017-09-27 18:20
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
import cfp.models
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('cfp', '0009_conference_schedule_publishing_date'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='talk',
|
||||||
|
name='materials',
|
||||||
|
field=models.FileField(help_text='You can use this field to share some materials related to your intervention.', null=True, upload_to=cfp.models.talks_materials_destination, verbose_name='Materials'),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='talk',
|
||||||
|
name='video',
|
||||||
|
field=models.URLField(blank=True, default='', max_length=1000, verbose_name='Video URL'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -14,6 +14,7 @@ from colorful.fields import RGBColorField
|
||||||
|
|
||||||
import uuid
|
import uuid
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
|
from os.path import join
|
||||||
|
|
||||||
from ponyconf.utils import PonyConfModel
|
from ponyconf.utils import PonyConfModel
|
||||||
from mailing.models import MessageThread
|
from mailing.models import MessageThread
|
||||||
|
@ -250,6 +251,9 @@ class TalkManager(models.Manager):
|
||||||
qs = qs.annotate(score=Coalesce(Avg('vote__vote'), 0))
|
qs = qs.annotate(score=Coalesce(Avg('vote__vote'), 0))
|
||||||
return qs
|
return qs
|
||||||
|
|
||||||
|
def talks_materials_destination(talk, filename):
|
||||||
|
return join(talk.site.name, talk.slug, filename)
|
||||||
|
|
||||||
|
|
||||||
class Talk(PonyConfModel):
|
class Talk(PonyConfModel):
|
||||||
|
|
||||||
|
@ -280,8 +284,9 @@ class Talk(PonyConfModel):
|
||||||
duration = models.PositiveIntegerField(default=0, verbose_name=_('Duration (min)'))
|
duration = models.PositiveIntegerField(default=0, verbose_name=_('Duration (min)'))
|
||||||
room = models.ForeignKey(Room, blank=True, null=True, default=None)
|
room = models.ForeignKey(Room, blank=True, null=True, default=None)
|
||||||
plenary = models.BooleanField(default=False)
|
plenary = models.BooleanField(default=False)
|
||||||
#materials = models.FileField(null=True, upload_to=talk_materials_destination, verbose_name=_('Materials'),
|
materials = models.FileField(null=True, upload_to=talks_materials_destination, verbose_name=_('Materials'),
|
||||||
# help_text=_('You can use this field to share some materials related to your intervention.'))
|
help_text=_('You can use this field to share some materials related to your intervention.'))
|
||||||
|
video = models.URLField(max_length=1000, blank=True, default='', verbose_name='Video URL')
|
||||||
|
|
||||||
token = models.UUIDField(default=uuid.uuid4, editable=False, unique=True)
|
token = models.UUIDField(default=uuid.uuid4, editable=False, unique=True)
|
||||||
|
|
||||||
|
|
|
@ -176,6 +176,15 @@ def talk_list(request):
|
||||||
talks = talks.filter(vote__user=request.user)
|
talks = talks.filter(vote__user=request.user)
|
||||||
else:
|
else:
|
||||||
talks = talks.exclude(vote__user=request.user)
|
talks = talks.exclude(vote__user=request.user)
|
||||||
|
if data['materials'] != None:
|
||||||
|
show_filters = True
|
||||||
|
talks = talks.filter(materials__isnull=not data['materials'])
|
||||||
|
if data['video'] != None:
|
||||||
|
show_filters = True
|
||||||
|
if data['video']:
|
||||||
|
talks = talks.exclude(video__exact='')
|
||||||
|
else:
|
||||||
|
talks = talks.filter(video__exact='')
|
||||||
# Action
|
# Action
|
||||||
action_form = TalkActionForm(request.POST or None, talks=talks, site=request.conference.site)
|
action_form = TalkActionForm(request.POST or None, talks=talks, site=request.conference.site)
|
||||||
if request.method == 'POST' and action_form.is_valid():
|
if request.method == 'POST' and action_form.is_valid():
|
||||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2017-08-29 23:11+0000\n"
|
"POT-Creation-Date: 2017-09-27 18:39+0000\n"
|
||||||
"PO-Revision-Date: 2017-08-30 01:14+0200\n"
|
"PO-Revision-Date: 2017-08-30 01:14+0200\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
|
@ -30,148 +30,164 @@ msgstr "Accepté"
|
||||||
msgid "Declined"
|
msgid "Declined"
|
||||||
msgstr "Décliné"
|
msgstr "Décliné"
|
||||||
|
|
||||||
#: cfp/forms.py:49
|
#: cfp/forms.py:50
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Default duration: %(duration)d min"
|
msgid "Default duration: %(duration)d min"
|
||||||
msgstr "Durée par défaut : %(duration)d min"
|
msgstr "Durée par défaut : %(duration)d min"
|
||||||
|
|
||||||
#: cfp/forms.py:54 cfp/forms.py:66 cfp/forms.py:134
|
#: cfp/forms.py:55 cfp/forms.py:67 cfp/forms.py:143
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:15
|
#: cfp/templates/cfp/staff/talk_details.html:15
|
||||||
msgid "Category"
|
msgid "Category"
|
||||||
msgstr "Catégorie"
|
msgstr "Catégorie"
|
||||||
|
|
||||||
#: cfp/forms.py:55 cfp/templates/cfp/staff/talk_list.html:39
|
#: cfp/forms.py:56 cfp/templates/cfp/staff/talk_list.html:39
|
||||||
msgid "Title"
|
msgid "Title"
|
||||||
msgstr "Titre"
|
msgstr "Titre"
|
||||||
|
|
||||||
#: cfp/forms.py:56 cfp/models.py:140
|
#: cfp/forms.py:57 cfp/models.py:141
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:61 volunteers/models.py:14
|
#: cfp/templates/cfp/staff/talk_details.html:61 volunteers/models.py:14
|
||||||
msgid "Description"
|
msgid "Description"
|
||||||
msgstr "Description"
|
msgstr "Description"
|
||||||
|
|
||||||
#: cfp/forms.py:57 cfp/models.py:105
|
#: cfp/forms.py:58 cfp/models.py:106
|
||||||
#: cfp/templates/cfp/staff/participant_details.html:16
|
#: cfp/templates/cfp/staff/participant_details.html:16
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:75
|
#: cfp/templates/cfp/staff/talk_details.html:75
|
||||||
msgid "Notes"
|
msgid "Notes"
|
||||||
msgstr "Notes"
|
msgstr "Notes"
|
||||||
|
|
||||||
#: cfp/forms.py:60
|
#: cfp/forms.py:61
|
||||||
msgid "Visible by speakers"
|
msgid "Visible by speakers"
|
||||||
msgstr "Visible par les orateurs"
|
msgstr "Visible par les orateurs"
|
||||||
|
|
||||||
#: cfp/forms.py:72 cfp/forms.py:140
|
#: cfp/forms.py:73 cfp/forms.py:149
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:18
|
#: cfp/templates/cfp/staff/talk_details.html:18
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:81
|
#: cfp/templates/cfp/staff/talk_details.html:81
|
||||||
#: cfp/templates/cfp/staff/talk_list.html:43
|
#: cfp/templates/cfp/staff/talk_list.html:43
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
msgstr "Statut"
|
msgstr "Statut"
|
||||||
|
|
||||||
#: cfp/forms.py:78 cfp/forms.py:146 cfp/models.py:272
|
#: cfp/forms.py:79 cfp/forms.py:155 cfp/models.py:276
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:21
|
#: cfp/templates/cfp/staff/talk_details.html:21
|
||||||
#: cfp/templates/cfp/staff/talk_list.html:42
|
#: cfp/templates/cfp/staff/talk_list.html:42
|
||||||
#: cfp/templates/cfp/staff/track_form.html:14
|
#: cfp/templates/cfp/staff/track_form.html:14
|
||||||
msgid "Track"
|
msgid "Track"
|
||||||
msgstr "Session"
|
msgstr "Session"
|
||||||
|
|
||||||
#: cfp/forms.py:84 cfp/templates/cfp/staff/talk_details.html:84
|
#: cfp/forms.py:85 cfp/templates/cfp/staff/talk_details.html:84
|
||||||
msgid "Vote"
|
msgid "Vote"
|
||||||
msgstr "Vote"
|
msgstr "Vote"
|
||||||
|
|
||||||
#: cfp/forms.py:85
|
#: cfp/forms.py:86
|
||||||
msgid "Filter talks you already / not yet voted for"
|
msgid "Filter talks you already / not yet voted for"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Filtrer les propositions pour lesquelles vous avez déjà voté / pas encore "
|
"Filtrer les propositions pour lesquelles vous avez déjà voté / pas encore "
|
||||||
"voté"
|
"voté"
|
||||||
|
|
||||||
#: cfp/forms.py:88 cfp/templates/cfp/staff/room_form.html:14
|
#: cfp/forms.py:89 cfp/templates/cfp/staff/room_form.html:14
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:35
|
#: cfp/templates/cfp/staff/talk_details.html:35
|
||||||
msgid "Room"
|
msgid "Room"
|
||||||
msgstr "Salle"
|
msgstr "Salle"
|
||||||
|
|
||||||
#: cfp/forms.py:89
|
#: cfp/forms.py:90
|
||||||
msgid "Filter talks already / not yet affected to a room"
|
msgid "Filter talks already / not yet affected to a room"
|
||||||
msgstr "Filtrer les exposés déjà / pas encore affectées à une salle"
|
msgstr "Filtrer les exposés déjà / pas encore affectées à une salle"
|
||||||
|
|
||||||
#: cfp/forms.py:92
|
#: cfp/forms.py:93
|
||||||
msgid "Scheduled"
|
msgid "Scheduled"
|
||||||
msgstr "Programmé"
|
msgstr "Programmé"
|
||||||
|
|
||||||
#: cfp/forms.py:93
|
#: cfp/forms.py:94
|
||||||
msgid "Filter talks already / not yet scheduled"
|
msgid "Filter talks already / not yet scheduled"
|
||||||
msgstr "Filtrer les exposés déjà / pas encore planifiées"
|
msgstr "Filtrer les exposés déjà / pas encore planifiées"
|
||||||
|
|
||||||
#: cfp/forms.py:102 cfp/forms.py:158
|
#: cfp/forms.py:97 cfp/models.py:287
|
||||||
|
msgid "Materials"
|
||||||
|
msgstr "Supports"
|
||||||
|
|
||||||
|
#: cfp/forms.py:98
|
||||||
|
msgid "Filter talks with / without materials"
|
||||||
|
msgstr "Filtrer les exposés avec / sans supports"
|
||||||
|
|
||||||
|
#: cfp/forms.py:101
|
||||||
|
msgid "Video"
|
||||||
|
msgstr "Vidéo"
|
||||||
|
|
||||||
|
#: cfp/forms.py:102
|
||||||
|
msgid "Filter talks with / without video"
|
||||||
|
msgstr "Filtrer les exposés avec / sans vidéo"
|
||||||
|
|
||||||
|
#: cfp/forms.py:111 cfp/forms.py:167
|
||||||
msgid "Not assigned"
|
msgid "Not assigned"
|
||||||
msgstr "Pas encore assignée"
|
msgstr "Pas encore assignée"
|
||||||
|
|
||||||
#: cfp/forms.py:107
|
#: cfp/forms.py:116
|
||||||
msgid "Accept talk?"
|
msgid "Accept talk?"
|
||||||
msgstr "Accepter la proposition ?"
|
msgstr "Accepter la proposition ?"
|
||||||
|
|
||||||
#: cfp/forms.py:108
|
#: cfp/forms.py:117
|
||||||
msgid "Assign to a track"
|
msgid "Assign to a track"
|
||||||
msgstr "Assigner à une session"
|
msgstr "Assigner à une session"
|
||||||
|
|
||||||
#: cfp/forms.py:109
|
#: cfp/forms.py:118
|
||||||
msgid "Put in a room"
|
msgid "Put in a room"
|
||||||
msgstr "Assigner à une salle"
|
msgstr "Assigner à une salle"
|
||||||
|
|
||||||
#: cfp/forms.py:128 cfp/models.py:138
|
#: cfp/forms.py:137 cfp/models.py:139
|
||||||
#: cfp/templates/cfp/staff/participant_list.html:34 volunteers/models.py:12
|
#: cfp/templates/cfp/staff/participant_list.html:34 volunteers/models.py:12
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr "Nom"
|
msgstr "Nom"
|
||||||
|
|
||||||
#: cfp/forms.py:174
|
#: cfp/forms.py:183
|
||||||
msgid "New staff members will be informed of their new position by e-mail."
|
msgid "New staff members will be informed of their new position by e-mail."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Les nouveaux membres du staff seront informés de leur nouveau rôle par "
|
"Les nouveaux membres du staff seront informés de leur nouveau rôle par "
|
||||||
"courrier électronique."
|
"courrier électronique."
|
||||||
|
|
||||||
#: cfp/forms.py:194
|
#: cfp/forms.py:203
|
||||||
msgid "An user with that firstname and that lastname already exists."
|
msgid "An user with that firstname and that lastname already exists."
|
||||||
msgstr "Un utilisateur avec ce prénom et ce nom existe déjà."
|
msgstr "Un utilisateur avec ce prénom et ce nom existe déjà."
|
||||||
|
|
||||||
#: cfp/forms.py:199
|
#: cfp/forms.py:208
|
||||||
msgid "A user with that email already exists."
|
msgid "A user with that email already exists."
|
||||||
msgstr "Un utilisateur avec cet email existe déjà."
|
msgstr "Un utilisateur avec cet email existe déjà."
|
||||||
|
|
||||||
#: cfp/models.py:26
|
#: cfp/models.py:27
|
||||||
msgid "Conference name"
|
msgid "Conference name"
|
||||||
msgstr "Nom de la conférence"
|
msgstr "Nom de la conférence"
|
||||||
|
|
||||||
#: cfp/models.py:27
|
#: cfp/models.py:28
|
||||||
msgid "Homepage (markdown)"
|
msgid "Homepage (markdown)"
|
||||||
msgstr "Page d’accueil (markdown)"
|
msgstr "Page d’accueil (markdown)"
|
||||||
|
|
||||||
#: cfp/models.py:28
|
#: cfp/models.py:29
|
||||||
msgid "Venue information"
|
msgid "Venue information"
|
||||||
msgstr "Informations sur le lieu"
|
msgstr "Informations sur le lieu"
|
||||||
|
|
||||||
#: cfp/models.py:29
|
#: cfp/models.py:30
|
||||||
msgid "City"
|
msgid "City"
|
||||||
msgstr "Ville"
|
msgstr "Ville"
|
||||||
|
|
||||||
#: cfp/models.py:30
|
#: cfp/models.py:31
|
||||||
msgid "Contact email"
|
msgid "Contact email"
|
||||||
msgstr "Email de contact"
|
msgstr "Email de contact"
|
||||||
|
|
||||||
#: cfp/models.py:31
|
#: cfp/models.py:32
|
||||||
msgid "Reply email"
|
msgid "Reply email"
|
||||||
msgstr "Adresse de réponse"
|
msgstr "Adresse de réponse"
|
||||||
|
|
||||||
#: cfp/models.py:32
|
#: cfp/models.py:33
|
||||||
msgid "Staff members"
|
msgid "Staff members"
|
||||||
msgstr "Membres du staff"
|
msgstr "Membres du staff"
|
||||||
|
|
||||||
#: cfp/models.py:33
|
#: cfp/models.py:34
|
||||||
msgid "Secure domain (HTTPS)"
|
msgid "Secure domain (HTTPS)"
|
||||||
msgstr "Domaine sécurisé (HTTPS)"
|
msgstr "Domaine sécurisé (HTTPS)"
|
||||||
|
|
||||||
#: cfp/models.py:34
|
#: cfp/models.py:35
|
||||||
msgid "Schedule publishing date"
|
msgid "Schedule publishing date"
|
||||||
msgstr "Date de publication du programme"
|
msgstr "Date de publication du programme"
|
||||||
|
|
||||||
#: cfp/models.py:66
|
#: cfp/models.py:67
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"The reply email should be a formatable string accepting a token argument (e."
|
"The reply email should be a formatable string accepting a token argument (e."
|
||||||
|
@ -180,79 +196,78 @@ msgstr ""
|
||||||
"L’adresse de réponse doit être une chaine de texte formatable avec un "
|
"L’adresse de réponse doit être une chaine de texte formatable avec un "
|
||||||
"argument « token » (e.g. ponyconf+{token}@exemple.com)."
|
"argument « token » (e.g. ponyconf+{token}@exemple.com)."
|
||||||
|
|
||||||
#: cfp/models.py:88
|
#: cfp/models.py:89
|
||||||
msgid "Your Name"
|
msgid "Your Name"
|
||||||
msgstr "Votre Nom"
|
msgstr "Votre Nom"
|
||||||
|
|
||||||
#: cfp/models.py:91 cfp/templates/cfp/staff/participant_details.html:12
|
#: cfp/models.py:92 cfp/templates/cfp/staff/participant_details.html:12
|
||||||
msgid "Biography"
|
msgid "Biography"
|
||||||
msgstr "Biographie"
|
msgstr "Biographie"
|
||||||
|
|
||||||
#: cfp/models.py:94
|
#: cfp/models.py:95
|
||||||
msgid "Twitter"
|
msgid "Twitter"
|
||||||
msgstr "Twitter"
|
msgstr "Twitter"
|
||||||
|
|
||||||
#: cfp/models.py:95
|
#: cfp/models.py:96
|
||||||
msgid "LinkedIn"
|
msgid "LinkedIn"
|
||||||
msgstr "LinkedIn"
|
msgstr "LinkedIn"
|
||||||
|
|
||||||
#: cfp/models.py:96
|
#: cfp/models.py:97
|
||||||
msgid "Github"
|
msgid "Github"
|
||||||
msgstr "Github"
|
msgstr "Github"
|
||||||
|
|
||||||
#: cfp/models.py:97
|
#: cfp/models.py:98
|
||||||
msgid "Website"
|
msgid "Website"
|
||||||
msgstr "Site web"
|
msgstr "Site web"
|
||||||
|
|
||||||
#: cfp/models.py:98
|
#: cfp/models.py:99
|
||||||
msgid "Facebook"
|
msgid "Facebook"
|
||||||
msgstr "Facebook"
|
msgstr "Facebook"
|
||||||
|
|
||||||
#: cfp/models.py:99
|
#: cfp/models.py:100
|
||||||
msgid "Mastodon"
|
msgid "Mastodon"
|
||||||
msgstr "Mastodon"
|
msgstr "Mastodon"
|
||||||
|
|
||||||
#: cfp/models.py:101
|
#: cfp/models.py:102
|
||||||
msgid "Phone number"
|
msgid "Phone number"
|
||||||
msgstr "Numéro de téléphone"
|
msgstr "Numéro de téléphone"
|
||||||
|
|
||||||
#: cfp/models.py:105
|
#: cfp/models.py:106
|
||||||
msgid "This field is only visible by organizers."
|
msgid "This field is only visible by organizers."
|
||||||
msgstr "Ce champs est uniquement visible par les organisateurs."
|
msgstr "Ce champs est uniquement visible par les organisateurs."
|
||||||
|
|
||||||
#: cfp/models.py:192
|
#: cfp/models.py:193
|
||||||
msgid "Default duration (min)"
|
msgid "Default duration (min)"
|
||||||
msgstr "Durée par défaut (min)"
|
msgstr "Durée par défaut (min)"
|
||||||
|
|
||||||
#: cfp/models.py:193
|
#: cfp/models.py:194
|
||||||
msgid "Color on program"
|
msgid "Color on program"
|
||||||
msgstr "Couleur sur le programme"
|
msgstr "Couleur sur le programme"
|
||||||
|
|
||||||
#: cfp/models.py:194
|
#: cfp/models.py:195
|
||||||
msgid "Label on program"
|
msgid "Label on program"
|
||||||
msgstr "Label dans le xml du programme"
|
msgstr "Label dans le xml du programme"
|
||||||
|
|
||||||
#: cfp/models.py:267 cfp/templates/cfp/staff/base.html:17
|
#: cfp/models.py:271 cfp/templates/cfp/staff/base.html:17
|
||||||
#: cfp/templates/cfp/staff/participant_list.html:8
|
#: cfp/templates/cfp/staff/participant_list.html:8
|
||||||
#: cfp/templates/cfp/staff/talk_details.html:65
|
#: cfp/templates/cfp/staff/talk_details.html:65
|
||||||
#: cfp/templates/cfp/staff/talk_list.html:41
|
#: cfp/templates/cfp/staff/talk_list.html:41
|
||||||
msgid "Speakers"
|
msgid "Speakers"
|
||||||
msgstr "Orateurs"
|
msgstr "Orateurs"
|
||||||
|
|
||||||
#: cfp/models.py:268
|
#: cfp/models.py:272
|
||||||
msgid "Talk Title"
|
msgid "Talk Title"
|
||||||
msgstr "Titre de la proposition"
|
msgstr "Titre de la proposition"
|
||||||
|
|
||||||
#: cfp/models.py:271
|
#: cfp/models.py:275
|
||||||
msgid "Description of your talk"
|
msgid "Description of your talk"
|
||||||
msgstr "Description de votre proposition"
|
msgstr "Description de votre proposition"
|
||||||
|
|
||||||
#: cfp/models.py:273
|
#: cfp/models.py:277
|
||||||
msgid "Message to organizers"
|
msgid "Message to organizers"
|
||||||
msgstr "Message aux organisateurs"
|
msgstr "Message aux organisateurs"
|
||||||
|
|
||||||
#: cfp/models.py:273
|
#: cfp/models.py:277
|
||||||
#, fuzzy
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"If you have any constraint or if you have anything that may help you to "
|
"If you have any constraint or if you have anything that may help you to "
|
||||||
"select your talk, like a video or slides of your talk, please write it down "
|
"select your talk, like a video or slides of your talk, please write it down "
|
||||||
|
@ -262,30 +277,37 @@ msgstr ""
|
||||||
"votre proposition, comme une vidéo, des slides, n'hésitez pas à les ajouter "
|
"votre proposition, comme une vidéo, des slides, n'hésitez pas à les ajouter "
|
||||||
"ici."
|
"ici."
|
||||||
|
|
||||||
#: cfp/models.py:274
|
#: cfp/models.py:278
|
||||||
msgid "Talk Category"
|
msgid "Talk Category"
|
||||||
msgstr "Catégorie de proposition"
|
msgstr "Catégorie de proposition"
|
||||||
|
|
||||||
#: cfp/models.py:275
|
#: cfp/models.py:279
|
||||||
msgid "I'm ok to be recorded on video"
|
msgid "I'm ok to be recorded on video"
|
||||||
msgstr "J’accepte d’être enregistré en vidéo"
|
msgstr "J’accepte d’être enregistré en vidéo"
|
||||||
|
|
||||||
#: cfp/models.py:276
|
#: cfp/models.py:280
|
||||||
msgid "Video licence"
|
msgid "Video licence"
|
||||||
msgstr "Licence vidéo"
|
msgstr "Licence vidéo"
|
||||||
|
|
||||||
#: cfp/models.py:277
|
#: cfp/models.py:281
|
||||||
msgid "I need sound"
|
msgid "I need sound"
|
||||||
msgstr "J’ai besoin de son"
|
msgstr "J’ai besoin de son"
|
||||||
|
|
||||||
#: cfp/models.py:279
|
#: cfp/models.py:283
|
||||||
msgid "Beginning date and time"
|
msgid "Beginning date and time"
|
||||||
msgstr "Date et heure de début"
|
msgstr "Date et heure de début"
|
||||||
|
|
||||||
#: cfp/models.py:280
|
#: cfp/models.py:284
|
||||||
msgid "Duration (min)"
|
msgid "Duration (min)"
|
||||||
msgstr "Durée (min)"
|
msgstr "Durée (min)"
|
||||||
|
|
||||||
|
#: cfp/models.py:288
|
||||||
|
msgid ""
|
||||||
|
"You can use this field to share some materials related to your intervention."
|
||||||
|
msgstr ""
|
||||||
|
"Vous pouvez utiliser ce champs pour partager les supports de votre "
|
||||||
|
"intervention."
|
||||||
|
|
||||||
#: cfp/signals.py:79
|
#: cfp/signals.py:79
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "[%(prefix)s] Message from the staff"
|
msgid "[%(prefix)s] Message from the staff"
|
||||||
|
@ -679,7 +701,7 @@ msgstr "responsable"
|
||||||
msgid "No tracks."
|
msgid "No tracks."
|
||||||
msgstr "Aucune session."
|
msgstr "Aucune session."
|
||||||
|
|
||||||
#: cfp/views.py:75
|
#: cfp/views.py:76
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hi {},\n"
|
"Hi {},\n"
|
||||||
"\n"
|
"\n"
|
||||||
|
@ -719,35 +741,35 @@ msgstr ""
|
||||||
"{}\n"
|
"{}\n"
|
||||||
"\n"
|
"\n"
|
||||||
|
|
||||||
#: cfp/views.py:186 cfp/views.py:281
|
#: cfp/views.py:196 cfp/views.py:291
|
||||||
msgid "The talk has been accepted."
|
msgid "The talk has been accepted."
|
||||||
msgstr "L’exposé a été accepté."
|
msgstr "L’exposé a été accepté."
|
||||||
|
|
||||||
#: cfp/views.py:188 cfp/views.py:283
|
#: cfp/views.py:198 cfp/views.py:293
|
||||||
msgid "The talk has been declined."
|
msgid "The talk has been declined."
|
||||||
msgstr "L’exposé a été décliné."
|
msgstr "L’exposé a été décliné."
|
||||||
|
|
||||||
#: cfp/views.py:251 cfp/views.py:339
|
#: cfp/views.py:261 cfp/views.py:349
|
||||||
msgid "Message sent!"
|
msgid "Message sent!"
|
||||||
msgstr "Message envoyé !"
|
msgstr "Message envoyé !"
|
||||||
|
|
||||||
#: cfp/views.py:264
|
#: cfp/views.py:274
|
||||||
msgid "Vote successfully created"
|
msgid "Vote successfully created"
|
||||||
msgstr "A voté !"
|
msgstr "A voté !"
|
||||||
|
|
||||||
#: cfp/views.py:264
|
#: cfp/views.py:274
|
||||||
msgid "Vote successfully updated"
|
msgid "Vote successfully updated"
|
||||||
msgstr "Vote mis à jour"
|
msgstr "Vote mis à jour"
|
||||||
|
|
||||||
#: cfp/views.py:285
|
#: cfp/views.py:295
|
||||||
msgid "Decision taken in account"
|
msgid "Decision taken in account"
|
||||||
msgstr "Décision enregistrée"
|
msgstr "Décision enregistrée"
|
||||||
|
|
||||||
#: cfp/views.py:367
|
#: cfp/views.py:377
|
||||||
msgid "[{}] You have been added to the staff team"
|
msgid "[{}] You have been added to the staff team"
|
||||||
msgstr "[{}] Vous avez été ajouté aux membres du staff"
|
msgstr "[{}] Vous avez été ajouté aux membres du staff"
|
||||||
|
|
||||||
#: cfp/views.py:368
|
#: cfp/views.py:378
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hi {},\n"
|
"Hi {},\n"
|
||||||
"\n"
|
"\n"
|
||||||
|
@ -771,15 +793,15 @@ msgstr ""
|
||||||
"{}\n"
|
"{}\n"
|
||||||
"\n"
|
"\n"
|
||||||
|
|
||||||
#: cfp/views.py:389
|
#: cfp/views.py:399
|
||||||
msgid "Modifications successfully saved."
|
msgid "Modifications successfully saved."
|
||||||
msgstr "Modification enregistrée avec succès."
|
msgstr "Modification enregistrée avec succès."
|
||||||
|
|
||||||
#: cfp/views.py:466
|
#: cfp/views.py:476
|
||||||
msgid "User created successfully."
|
msgid "User created successfully."
|
||||||
msgstr "Utilisateur créé avec succès."
|
msgstr "Utilisateur créé avec succès."
|
||||||
|
|
||||||
#: cfp/views.py:485
|
#: cfp/views.py:497
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Format '%s' not available"
|
msgid "Format '%s' not available"
|
||||||
msgstr "Format '%s' non disponible"
|
msgstr "Format '%s' non disponible"
|
||||||
|
@ -1051,12 +1073,6 @@ msgstr "Contacter"
|
||||||
#~ msgstr ""
|
#~ msgstr ""
|
||||||
#~ "Si vous souhaitez apporter des précisions à l'équipe d'organisation."
|
#~ "Si vous souhaitez apporter des précisions à l'équipe d'organisation."
|
||||||
|
|
||||||
#~ msgid "Filter talks with / without materials"
|
|
||||||
#~ msgstr "Filtrer les exposés avec / sans supports"
|
|
||||||
|
|
||||||
#~ msgid "Filter talks with / without video"
|
|
||||||
#~ msgstr "Filtrer les exposés avec / sans vidéo"
|
|
||||||
|
|
||||||
#~ msgid "Name or nickname"
|
#~ msgid "Name or nickname"
|
||||||
#~ msgstr "Nom ou pseudo"
|
#~ msgstr "Nom ou pseudo"
|
||||||
|
|
||||||
|
@ -1101,16 +1117,6 @@ msgstr "Contacter"
|
||||||
#~ msgid "Max. number of attendees"
|
#~ msgid "Max. number of attendees"
|
||||||
#~ msgstr "Nombre maximum d’inscrits"
|
#~ msgstr "Nombre maximum d’inscrits"
|
||||||
|
|
||||||
#~ msgid "Materials"
|
|
||||||
#~ msgstr "Supports"
|
|
||||||
|
|
||||||
#~ msgid ""
|
|
||||||
#~ "You can use this field to share some materials related to your "
|
|
||||||
#~ "intervention."
|
|
||||||
#~ msgstr ""
|
|
||||||
#~ "Vous pouvez utiliser ce champs pour partager les supports de votre "
|
|
||||||
#~ "intervention."
|
|
||||||
|
|
||||||
#~ msgid "conference (short)"
|
#~ msgid "conference (short)"
|
||||||
#~ msgstr "conférence (courte)"
|
#~ msgstr "conférence (courte)"
|
||||||
|
|
||||||
|
@ -1179,9 +1185,6 @@ msgstr "Contacter"
|
||||||
#~ msgid "required but unlimited"
|
#~ msgid "required but unlimited"
|
||||||
#~ msgstr "requis mais non limité"
|
#~ msgstr "requis mais non limité"
|
||||||
|
|
||||||
#~ msgid "Video"
|
|
||||||
#~ msgstr "Vidéo"
|
|
||||||
|
|
||||||
#~ msgid "download"
|
#~ msgid "download"
|
||||||
#~ msgstr "Télécharger"
|
#~ msgstr "Télécharger"
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue