mirror of https://gitlab.crans.org/bde/nk20
Compare commits
5 Commits
24ac3ce45f
...
93f7e1d45b
Author | SHA1 | Date |
---|---|---|
Yohann D'ANELLO | 93f7e1d45b | |
Yohann D'ANELLO | 199219861c | |
Yohann D'ANELLO | 8b66bcc3d5 | |
Yohann D'ANELLO | 6759586ef3 | |
Yohann D'ANELLO | 33806967c8 |
|
@ -11,7 +11,7 @@
|
||||||
git:
|
git:
|
||||||
repo: https://gitlab.crans.org/bde/nk20.git
|
repo: https://gitlab.crans.org/bde/nk20.git
|
||||||
dest: /var/www/note_kfet
|
dest: /var/www/note_kfet
|
||||||
version: master
|
version: beta
|
||||||
force: true
|
force: true
|
||||||
|
|
||||||
- name: Use default env vars (should be updated!)
|
- name: Use default env vars (should be updated!)
|
||||||
|
@ -28,3 +28,16 @@
|
||||||
recurse: yes
|
recurse: yes
|
||||||
owner: www-data
|
owner: www-data
|
||||||
group: www-data
|
group: www-data
|
||||||
|
|
||||||
|
- name: Setup cron jobs
|
||||||
|
file:
|
||||||
|
src: /var/www/note_kfet/note.cron
|
||||||
|
dest: /etc/cron.d/note
|
||||||
|
state: link
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
|
||||||
|
- name: Restart cron service
|
||||||
|
systemd:
|
||||||
|
name: cron
|
||||||
|
state: restarted
|
||||||
|
|
|
@ -17,6 +17,7 @@ class ProfileInline(admin.StackedInline):
|
||||||
Inline user profile in user admin
|
Inline user profile in user admin
|
||||||
"""
|
"""
|
||||||
model = Profile
|
model = Profile
|
||||||
|
form = ProfileForm
|
||||||
can_delete = False
|
can_delete = False
|
||||||
|
|
||||||
|
|
||||||
|
@ -25,7 +26,6 @@ class CustomUserAdmin(UserAdmin):
|
||||||
inlines = (ProfileInline,)
|
inlines = (ProfileInline,)
|
||||||
list_display = ('username', 'email', 'first_name', 'last_name', 'is_staff')
|
list_display = ('username', 'email', 'first_name', 'last_name', 'is_staff')
|
||||||
list_select_related = ('profile',)
|
list_select_related = ('profile',)
|
||||||
form = ProfileForm
|
|
||||||
|
|
||||||
def get_inline_instances(self, request, obj=None):
|
def get_inline_instances(self, request, obj=None):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -37,6 +37,7 @@ class ProfileForm(forms.ModelForm):
|
||||||
"""
|
"""
|
||||||
A form for the extras field provided by the :model:`member.Profile` model.
|
A form for the extras field provided by the :model:`member.Profile` model.
|
||||||
"""
|
"""
|
||||||
|
last_report = forms.DateField(required=False, disabled=True, label=_("Last report date"))
|
||||||
|
|
||||||
def save(self, commit=True):
|
def save(self, commit=True):
|
||||||
if not self.instance.section or (("department" in self.changed_data
|
if not self.instance.section or (("department" in self.changed_data
|
||||||
|
|
|
@ -11,6 +11,7 @@ from django.db import models
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
from django.template import loader
|
from django.template import loader
|
||||||
from django.urls import reverse, reverse_lazy
|
from django.urls import reverse, reverse_lazy
|
||||||
|
from django.utils import timezone
|
||||||
from django.utils.encoding import force_bytes
|
from django.utils.encoding import force_bytes
|
||||||
from django.utils.http import urlsafe_base64_encode
|
from django.utils.http import urlsafe_base64_encode
|
||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
|
@ -92,6 +93,16 @@ class Profile(models.Model):
|
||||||
default=False,
|
default=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
report_frequency = models.PositiveSmallIntegerField(
|
||||||
|
verbose_name=_("report frequency (in days)"),
|
||||||
|
default=0,
|
||||||
|
)
|
||||||
|
|
||||||
|
last_report = models.DateField(
|
||||||
|
verbose_name=_("last report date"),
|
||||||
|
default=timezone.now,
|
||||||
|
)
|
||||||
|
|
||||||
email_confirmed = models.BooleanField(
|
email_confirmed = models.BooleanField(
|
||||||
verbose_name=_("email confirmed"),
|
verbose_name=_("email confirmed"),
|
||||||
default=False,
|
default=False,
|
||||||
|
|
|
@ -71,6 +71,8 @@ class UserUpdateView(ProtectQuerysetMixin, LoginRequiredMixin, UpdateView):
|
||||||
|
|
||||||
context['profile_form'] = self.profile_form(instance=context['user_object'].profile,
|
context['profile_form'] = self.profile_form(instance=context['user_object'].profile,
|
||||||
data=self.request.POST if self.request.POST else None)
|
data=self.request.POST if self.request.POST else None)
|
||||||
|
if not self.object.profile.report_frequency:
|
||||||
|
del context['profile_form'].fields["last_report"]
|
||||||
|
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
|
|
@ -41,6 +41,8 @@ class UserCreateView(CreateView):
|
||||||
context = super().get_context_data(**kwargs)
|
context = super().get_context_data(**kwargs)
|
||||||
context["profile_form"] = self.second_form(self.request.POST if self.request.POST else None)
|
context["profile_form"] = self.second_form(self.request.POST if self.request.POST else None)
|
||||||
del context["profile_form"].fields["section"]
|
del context["profile_form"].fields["section"]
|
||||||
|
del context["profile_form"].fields["report_frequency"]
|
||||||
|
del context["profile_form"].fields["last_report"]
|
||||||
|
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit 034d8c43b663ac3a33f6e3d06bcdcbbeea0bc517
|
Subproject commit 47dc4dd9e6742c3fd0f0d4ea654b1e9a0a39f4f7
|
|
@ -8,7 +8,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2020-08-05 21:06+0200\n"
|
"POT-Creation-Date: 2020-08-05 23:17+0200\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
@ -44,7 +44,7 @@ msgid "You can't invite more than 3 people to this activity."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/activity/models.py:24 apps/activity/models.py:49
|
#: apps/activity/models.py:24 apps/activity/models.py:49
|
||||||
#: apps/member/models.py:162 apps/note/models/notes.py:212
|
#: apps/member/models.py:173 apps/note/models/notes.py:212
|
||||||
#: apps/note/models/transactions.py:25 apps/note/models/transactions.py:45
|
#: apps/note/models/transactions.py:25 apps/note/models/transactions.py:45
|
||||||
#: apps/note/models/transactions.py:298 apps/permission/models.py:332
|
#: apps/note/models/transactions.py:298 apps/permission/models.py:332
|
||||||
#: apps/wei/models.py:67 apps/wei/models.py:119
|
#: apps/wei/models.py:67 apps/wei/models.py:119
|
||||||
|
@ -83,7 +83,7 @@ msgstr ""
|
||||||
msgid "type"
|
msgid "type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/activity/models.py:67 apps/logs/models.py:22 apps/member/models.py:270
|
#: apps/activity/models.py:67 apps/logs/models.py:22 apps/member/models.py:281
|
||||||
#: apps/note/models/notes.py:126 apps/treasury/models.py:222
|
#: apps/note/models/notes.py:126 apps/treasury/models.py:222
|
||||||
#: apps/wei/models.py:161 templates/treasury/sogecredit_detail.html:14
|
#: apps/wei/models.py:161 templates/treasury/sogecredit_detail.html:14
|
||||||
#: templates/wei/survey.html:16
|
#: templates/wei/survey.html:16
|
||||||
|
@ -186,13 +186,13 @@ msgstr ""
|
||||||
msgid "Type"
|
msgid "Type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/activity/tables.py:77 apps/member/forms.py:103
|
#: apps/activity/tables.py:77 apps/member/forms.py:104
|
||||||
#: apps/registration/forms.py:70 apps/treasury/forms.py:130
|
#: apps/registration/forms.py:70 apps/treasury/forms.py:130
|
||||||
#: apps/wei/forms/registration.py:95
|
#: apps/wei/forms/registration.py:95
|
||||||
msgid "Last name"
|
msgid "Last name"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/activity/tables.py:79 apps/member/forms.py:108
|
#: apps/activity/tables.py:79 apps/member/forms.py:109
|
||||||
#: apps/registration/forms.py:75 apps/treasury/forms.py:132
|
#: apps/registration/forms.py:75 apps/treasury/forms.py:132
|
||||||
#: apps/wei/forms/registration.py:100 templates/note/transaction_form.html:129
|
#: apps/wei/forms/registration.py:100 templates/note/transaction_form.html:129
|
||||||
msgid "First name"
|
msgid "First name"
|
||||||
|
@ -292,21 +292,21 @@ msgstr ""
|
||||||
msgid "changelogs"
|
msgid "changelogs"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/admin.py:52 apps/member/models.py:189
|
#: apps/member/admin.py:52 apps/member/models.py:200
|
||||||
#: templates/member/club_info.html:41
|
#: templates/member/club_info.html:41
|
||||||
msgid "membership fee (paid students)"
|
msgid "membership fee (paid students)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/admin.py:53 apps/member/models.py:194
|
#: apps/member/admin.py:53 apps/member/models.py:205
|
||||||
#: templates/member/club_info.html:44
|
#: templates/member/club_info.html:44
|
||||||
msgid "membership fee (unpaid students)"
|
msgid "membership fee (unpaid students)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/admin.py:67 apps/member/models.py:281
|
#: apps/member/admin.py:67 apps/member/models.py:292
|
||||||
msgid "roles"
|
msgid "roles"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/admin.py:68 apps/member/models.py:295
|
#: apps/member/admin.py:68 apps/member/models.py:306
|
||||||
msgid "fee"
|
msgid "fee"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -314,260 +314,272 @@ msgstr ""
|
||||||
msgid "member"
|
msgid "member"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:59 apps/member/views.py:84
|
#: apps/member/forms.py:40
|
||||||
|
msgid "Last report date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: apps/member/forms.py:60 apps/member/views.py:86
|
||||||
#: apps/registration/forms.py:28
|
#: apps/registration/forms.py:28
|
||||||
msgid "An alias with a similar name already exists."
|
msgid "An alias with a similar name already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:82 apps/registration/forms.py:50
|
#: apps/member/forms.py:83 apps/registration/forms.py:50
|
||||||
msgid "Inscription paid by Société Générale"
|
msgid "Inscription paid by Société Générale"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:84 apps/registration/forms.py:52
|
#: apps/member/forms.py:85 apps/registration/forms.py:52
|
||||||
msgid "Check this case is the Société Générale paid the inscription."
|
msgid "Check this case is the Société Générale paid the inscription."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:89 apps/registration/forms.py:57
|
#: apps/member/forms.py:90 apps/registration/forms.py:57
|
||||||
#: apps/wei/forms/registration.py:82
|
#: apps/wei/forms/registration.py:82
|
||||||
msgid "Credit type"
|
msgid "Credit type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:90 apps/registration/forms.py:58
|
#: apps/member/forms.py:91 apps/registration/forms.py:58
|
||||||
#: apps/wei/forms/registration.py:83
|
#: apps/wei/forms/registration.py:83
|
||||||
msgid "No credit"
|
msgid "No credit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:92
|
#: apps/member/forms.py:93
|
||||||
msgid "You can credit the note of the user."
|
msgid "You can credit the note of the user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:96 apps/registration/forms.py:63
|
#: apps/member/forms.py:97 apps/registration/forms.py:63
|
||||||
#: apps/wei/forms/registration.py:88
|
#: apps/wei/forms/registration.py:88
|
||||||
msgid "Credit amount"
|
msgid "Credit amount"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:113 apps/registration/forms.py:80
|
#: apps/member/forms.py:114 apps/registration/forms.py:80
|
||||||
#: apps/treasury/forms.py:134 apps/wei/forms/registration.py:105
|
#: apps/treasury/forms.py:134 apps/wei/forms/registration.py:105
|
||||||
#: templates/note/transaction_form.html:135
|
#: templates/note/transaction_form.html:135
|
||||||
msgid "Bank"
|
msgid "Bank"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:140
|
#: apps/member/forms.py:141
|
||||||
msgid "User"
|
msgid "User"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/forms.py:154
|
#: apps/member/forms.py:155
|
||||||
msgid "Roles"
|
msgid "Roles"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:38
|
#: apps/member/models.py:39
|
||||||
#: templates/registration/future_profile_detail.html:40
|
#: templates/registration/future_profile_detail.html:40
|
||||||
#: templates/wei/weimembership_form.html:48
|
#: templates/wei/weimembership_form.html:48
|
||||||
msgid "phone number"
|
msgid "phone number"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:45 templates/member/profile_info.html:29
|
#: apps/member/models.py:46 templates/member/profile_info.html:29
|
||||||
#: templates/registration/future_profile_detail.html:34
|
#: templates/registration/future_profile_detail.html:34
|
||||||
#: templates/wei/weimembership_form.html:42
|
#: templates/wei/weimembership_form.html:42
|
||||||
msgid "section"
|
msgid "section"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:46
|
#: apps/member/models.py:47
|
||||||
msgid "e.g. \"1A0\", \"9A♥\", \"SAPHIRE\""
|
msgid "e.g. \"1A0\", \"9A♥\", \"SAPHIRE\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:54 templates/wei/weimembership_form.html:36
|
#: apps/member/models.py:55 templates/wei/weimembership_form.html:36
|
||||||
msgid "department"
|
msgid "department"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:56
|
#: apps/member/models.py:57
|
||||||
msgid "Informatics (A0)"
|
msgid "Informatics (A0)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:57
|
#: apps/member/models.py:58
|
||||||
msgid "Mathematics (A1)"
|
msgid "Mathematics (A1)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:58
|
#: apps/member/models.py:59
|
||||||
msgid "Physics (A2)"
|
msgid "Physics (A2)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:59
|
#: apps/member/models.py:60
|
||||||
msgid "Applied physics (A'2)"
|
msgid "Applied physics (A'2)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:60
|
#: apps/member/models.py:61
|
||||||
msgid "Chemistry (A''2)"
|
msgid "Chemistry (A''2)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:61
|
#: apps/member/models.py:62
|
||||||
msgid "Biology (A3)"
|
msgid "Biology (A3)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:62
|
#: apps/member/models.py:63
|
||||||
msgid "SAPHIRE (B1234)"
|
msgid "SAPHIRE (B1234)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:63
|
#: apps/member/models.py:64
|
||||||
msgid "Mechanics (B1)"
|
msgid "Mechanics (B1)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:64
|
#: apps/member/models.py:65
|
||||||
msgid "Civil engineering (B2)"
|
msgid "Civil engineering (B2)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:65
|
#: apps/member/models.py:66
|
||||||
msgid "Mechanical engineering (B3)"
|
msgid "Mechanical engineering (B3)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:66
|
#: apps/member/models.py:67
|
||||||
msgid "EEA (B4)"
|
msgid "EEA (B4)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:67
|
#: apps/member/models.py:68
|
||||||
msgid "Design (C)"
|
msgid "Design (C)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:68
|
#: apps/member/models.py:69
|
||||||
msgid "Economy-management (D2)"
|
msgid "Economy-management (D2)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:69
|
#: apps/member/models.py:70
|
||||||
msgid "Social sciences (D3)"
|
msgid "Social sciences (D3)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:70
|
#: apps/member/models.py:71
|
||||||
msgid "English (E)"
|
msgid "English (E)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:71
|
#: apps/member/models.py:72
|
||||||
msgid "External (EXT)"
|
msgid "External (EXT)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:78
|
#: apps/member/models.py:79
|
||||||
msgid "promotion"
|
msgid "promotion"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:79
|
#: apps/member/models.py:80
|
||||||
msgid "Year of entry to the school (None if not ENS student)"
|
msgid "Year of entry to the school (None if not ENS student)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:83 templates/member/profile_info.html:32
|
#: apps/member/models.py:84 templates/member/profile_info.html:32
|
||||||
#: templates/registration/future_profile_detail.html:37
|
#: templates/registration/future_profile_detail.html:37
|
||||||
#: templates/wei/weimembership_form.html:45
|
#: templates/wei/weimembership_form.html:45
|
||||||
msgid "address"
|
msgid "address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:90
|
#: apps/member/models.py:91
|
||||||
#: templates/registration/future_profile_detail.html:43
|
#: templates/registration/future_profile_detail.html:43
|
||||||
#: templates/wei/weimembership_form.html:51
|
#: templates/wei/weimembership_form.html:51
|
||||||
msgid "paid"
|
msgid "paid"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:91
|
#: apps/member/models.py:92
|
||||||
msgid "Tells if the user receive a salary."
|
msgid "Tells if the user receive a salary."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:96
|
#: apps/member/models.py:97
|
||||||
|
msgid "report frequency (in days)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: apps/member/models.py:102
|
||||||
|
msgid "last report date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: apps/member/models.py:107
|
||||||
msgid "email confirmed"
|
msgid "email confirmed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:101
|
#: apps/member/models.py:112
|
||||||
msgid "registration valid"
|
msgid "registration valid"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:130 apps/member/models.py:131
|
#: apps/member/models.py:141 apps/member/models.py:142
|
||||||
msgid "user profile"
|
msgid "user profile"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:138
|
#: apps/member/models.py:149
|
||||||
msgid "Activate your Note Kfet account"
|
msgid "Activate your Note Kfet account"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:167 templates/member/club_info.html:57
|
#: apps/member/models.py:178 templates/member/club_info.html:57
|
||||||
#: templates/registration/future_profile_detail.html:22
|
#: templates/registration/future_profile_detail.html:22
|
||||||
#: templates/wei/weiclub_info.html:52 templates/wei/weimembership_form.html:24
|
#: templates/wei/weiclub_info.html:52 templates/wei/weimembership_form.html:24
|
||||||
msgid "email"
|
msgid "email"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:174
|
#: apps/member/models.py:185
|
||||||
msgid "parent club"
|
msgid "parent club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:183
|
#: apps/member/models.py:194
|
||||||
msgid "require memberships"
|
msgid "require memberships"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:184
|
#: apps/member/models.py:195
|
||||||
msgid "Uncheck if this club don't require memberships."
|
msgid "Uncheck if this club don't require memberships."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:200 templates/member/club_info.html:33
|
#: apps/member/models.py:211 templates/member/club_info.html:33
|
||||||
msgid "membership duration"
|
msgid "membership duration"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:201
|
#: apps/member/models.py:212
|
||||||
msgid "The longest time (in days) a membership can last (NULL = infinite)."
|
msgid "The longest time (in days) a membership can last (NULL = infinite)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:208 templates/member/club_info.html:23
|
#: apps/member/models.py:219 templates/member/club_info.html:23
|
||||||
msgid "membership start"
|
msgid "membership start"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:209
|
#: apps/member/models.py:220
|
||||||
msgid "How long after January 1st the members can renew their membership."
|
msgid "How long after January 1st the members can renew their membership."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:216 templates/member/club_info.html:28
|
#: apps/member/models.py:227 templates/member/club_info.html:28
|
||||||
msgid "membership end"
|
msgid "membership end"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:217
|
#: apps/member/models.py:228
|
||||||
msgid ""
|
msgid ""
|
||||||
"How long the membership can last after January 1st of the next year after "
|
"How long the membership can last after January 1st of the next year after "
|
||||||
"members can renew their membership."
|
"members can renew their membership."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:251 apps/member/models.py:276
|
#: apps/member/models.py:262 apps/member/models.py:287
|
||||||
#: apps/note/models/notes.py:163
|
#: apps/note/models/notes.py:163
|
||||||
msgid "club"
|
msgid "club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:252
|
#: apps/member/models.py:263
|
||||||
msgid "clubs"
|
msgid "clubs"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:286
|
#: apps/member/models.py:297
|
||||||
msgid "membership starts on"
|
msgid "membership starts on"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:290
|
#: apps/member/models.py:301
|
||||||
msgid "membership ends on"
|
msgid "membership ends on"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:342
|
#: apps/member/models.py:353
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "The role {role} does not apply to the club {club}."
|
msgid "The role {role} does not apply to the club {club}."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:353 apps/member/views.py:588
|
#: apps/member/models.py:364 apps/member/views.py:590
|
||||||
msgid "User is already a member of the club"
|
msgid "User is already a member of the club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:400
|
#: apps/member/models.py:411
|
||||||
msgid "User is not a member of the parent club"
|
msgid "User is not a member of the parent club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:453
|
#: apps/member/models.py:464
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Membership of {user} for the club {club}"
|
msgid "Membership of {user} for the club {club}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:456
|
#: apps/member/models.py:467
|
||||||
msgid "membership"
|
msgid "membership"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/models.py:457
|
#: apps/member/models.py:468
|
||||||
msgid "memberships"
|
msgid "memberships"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -585,71 +597,71 @@ msgstr ""
|
||||||
msgid "This address must be valid."
|
msgid "This address must be valid."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:133
|
#: apps/member/views.py:135
|
||||||
msgid "Profile detail"
|
msgid "Profile detail"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:167
|
#: apps/member/views.py:169
|
||||||
msgid "Search user"
|
msgid "Search user"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:201 apps/member/views.py:387
|
#: apps/member/views.py:203 apps/member/views.py:389
|
||||||
msgid "Note aliases"
|
msgid "Note aliases"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:215
|
#: apps/member/views.py:217
|
||||||
msgid "Update note picture"
|
msgid "Update note picture"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:273 templates/member/profile_info.html:43
|
#: apps/member/views.py:275 templates/member/profile_info.html:43
|
||||||
msgid "Manage auth token"
|
msgid "Manage auth token"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:301
|
#: apps/member/views.py:303
|
||||||
msgid "Create new club"
|
msgid "Create new club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:313
|
#: apps/member/views.py:315
|
||||||
msgid "Search club"
|
msgid "Search club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:338
|
#: apps/member/views.py:340
|
||||||
msgid "Club detail"
|
msgid "Club detail"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:404
|
#: apps/member/views.py:406
|
||||||
msgid "Update club"
|
msgid "Update club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:438
|
#: apps/member/views.py:440
|
||||||
msgid "Add new member to the club"
|
msgid "Add new member to the club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:579 apps/wei/views.py:862
|
#: apps/member/views.py:581 apps/wei/views.py:862
|
||||||
msgid ""
|
msgid ""
|
||||||
"This user don't have enough money to join this club, and can't have a "
|
"This user don't have enough money to join this club, and can't have a "
|
||||||
"negative balance."
|
"negative balance."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:592
|
#: apps/member/views.py:594
|
||||||
msgid "The membership must start after {:%m-%d-%Y}."
|
msgid "The membership must start after {:%m-%d-%Y}."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:597
|
#: apps/member/views.py:599
|
||||||
msgid "The membership must begin before {:%m-%d-%Y}."
|
msgid "The membership must begin before {:%m-%d-%Y}."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:614 apps/member/views.py:616 apps/member/views.py:618
|
#: apps/member/views.py:616 apps/member/views.py:618 apps/member/views.py:620
|
||||||
#: apps/registration/views.py:290 apps/registration/views.py:292
|
#: apps/registration/views.py:292 apps/registration/views.py:294
|
||||||
#: apps/registration/views.py:294 apps/wei/views.py:867 apps/wei/views.py:871
|
#: apps/registration/views.py:296 apps/wei/views.py:867 apps/wei/views.py:871
|
||||||
msgid "This field is required."
|
msgid "This field is required."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:702
|
#: apps/member/views.py:704
|
||||||
msgid "Manage roles of an user in the club"
|
msgid "Manage roles of an user in the club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/member/views.py:727
|
#: apps/member/views.py:729
|
||||||
msgid "Members of the club"
|
msgid "Members of the club"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -1116,52 +1128,52 @@ msgstr ""
|
||||||
msgid "Register new user"
|
msgid "Register new user"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:80
|
#: apps/registration/views.py:82
|
||||||
msgid "Email validation"
|
msgid "Email validation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:82
|
#: apps/registration/views.py:84
|
||||||
msgid "Validate email"
|
msgid "Validate email"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:124
|
#: apps/registration/views.py:126
|
||||||
msgid "Email validation unsuccessful"
|
msgid "Email validation unsuccessful"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:135
|
#: apps/registration/views.py:137
|
||||||
msgid "Email validation email sent"
|
msgid "Email validation email sent"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:143
|
#: apps/registration/views.py:145
|
||||||
msgid "Resend email validation link"
|
msgid "Resend email validation link"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:161
|
#: apps/registration/views.py:163
|
||||||
msgid "Pre-registered users list"
|
msgid "Pre-registered users list"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:188
|
#: apps/registration/views.py:190
|
||||||
msgid "Unregistered users"
|
msgid "Unregistered users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:201
|
#: apps/registration/views.py:203
|
||||||
msgid "Registration detail"
|
msgid "Registration detail"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:256
|
#: apps/registration/views.py:258
|
||||||
msgid "You must join the BDE."
|
msgid "You must join the BDE."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:278
|
#: apps/registration/views.py:280
|
||||||
msgid "You must join BDE club before joining Kfet club."
|
msgid "You must join BDE club before joining Kfet club."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:283
|
#: apps/registration/views.py:285
|
||||||
msgid ""
|
msgid ""
|
||||||
"The entered amount is not enough for the memberships, should be at least {}"
|
"The entered amount is not enough for the memberships, should be at least {}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: apps/registration/views.py:358
|
#: apps/registration/views.py:360
|
||||||
msgid "Invalidate pre-registration"
|
msgid "Invalidate pre-registration"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2020-08-05 21:06+0200\n"
|
"POT-Creation-Date: 2020-08-05 23:17+0200\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
@ -45,7 +45,7 @@ msgid "You can't invite more than 3 people to this activity."
|
||||||
msgstr "Vous ne pouvez pas inviter plus de 3 personnes à cette activité."
|
msgstr "Vous ne pouvez pas inviter plus de 3 personnes à cette activité."
|
||||||
|
|
||||||
#: apps/activity/models.py:24 apps/activity/models.py:49
|
#: apps/activity/models.py:24 apps/activity/models.py:49
|
||||||
#: apps/member/models.py:162 apps/note/models/notes.py:212
|
#: apps/member/models.py:173 apps/note/models/notes.py:212
|
||||||
#: apps/note/models/transactions.py:25 apps/note/models/transactions.py:45
|
#: apps/note/models/transactions.py:25 apps/note/models/transactions.py:45
|
||||||
#: apps/note/models/transactions.py:298 apps/permission/models.py:332
|
#: apps/note/models/transactions.py:298 apps/permission/models.py:332
|
||||||
#: apps/wei/models.py:67 apps/wei/models.py:119
|
#: apps/wei/models.py:67 apps/wei/models.py:119
|
||||||
|
@ -84,7 +84,7 @@ msgstr "description"
|
||||||
msgid "type"
|
msgid "type"
|
||||||
msgstr "type"
|
msgstr "type"
|
||||||
|
|
||||||
#: apps/activity/models.py:67 apps/logs/models.py:22 apps/member/models.py:270
|
#: apps/activity/models.py:67 apps/logs/models.py:22 apps/member/models.py:281
|
||||||
#: apps/note/models/notes.py:126 apps/treasury/models.py:222
|
#: apps/note/models/notes.py:126 apps/treasury/models.py:222
|
||||||
#: apps/wei/models.py:161 templates/treasury/sogecredit_detail.html:14
|
#: apps/wei/models.py:161 templates/treasury/sogecredit_detail.html:14
|
||||||
#: templates/wei/survey.html:16
|
#: templates/wei/survey.html:16
|
||||||
|
@ -187,13 +187,13 @@ msgstr "supprimer"
|
||||||
msgid "Type"
|
msgid "Type"
|
||||||
msgstr "Type"
|
msgstr "Type"
|
||||||
|
|
||||||
#: apps/activity/tables.py:77 apps/member/forms.py:103
|
#: apps/activity/tables.py:77 apps/member/forms.py:104
|
||||||
#: apps/registration/forms.py:70 apps/treasury/forms.py:130
|
#: apps/registration/forms.py:70 apps/treasury/forms.py:130
|
||||||
#: apps/wei/forms/registration.py:95
|
#: apps/wei/forms/registration.py:95
|
||||||
msgid "Last name"
|
msgid "Last name"
|
||||||
msgstr "Nom de famille"
|
msgstr "Nom de famille"
|
||||||
|
|
||||||
#: apps/activity/tables.py:79 apps/member/forms.py:108
|
#: apps/activity/tables.py:79 apps/member/forms.py:109
|
||||||
#: apps/registration/forms.py:75 apps/treasury/forms.py:132
|
#: apps/registration/forms.py:75 apps/treasury/forms.py:132
|
||||||
#: apps/wei/forms/registration.py:100 templates/note/transaction_form.html:129
|
#: apps/wei/forms/registration.py:100 templates/note/transaction_form.html:129
|
||||||
msgid "First name"
|
msgid "First name"
|
||||||
|
@ -293,21 +293,21 @@ msgstr "journal de modification"
|
||||||
msgid "changelogs"
|
msgid "changelogs"
|
||||||
msgstr "journaux de modifications"
|
msgstr "journaux de modifications"
|
||||||
|
|
||||||
#: apps/member/admin.py:52 apps/member/models.py:189
|
#: apps/member/admin.py:52 apps/member/models.py:200
|
||||||
#: templates/member/club_info.html:41
|
#: templates/member/club_info.html:41
|
||||||
msgid "membership fee (paid students)"
|
msgid "membership fee (paid students)"
|
||||||
msgstr "cotisation pour adhérer (normalien élève)"
|
msgstr "cotisation pour adhérer (normalien élève)"
|
||||||
|
|
||||||
#: apps/member/admin.py:53 apps/member/models.py:194
|
#: apps/member/admin.py:53 apps/member/models.py:205
|
||||||
#: templates/member/club_info.html:44
|
#: templates/member/club_info.html:44
|
||||||
msgid "membership fee (unpaid students)"
|
msgid "membership fee (unpaid students)"
|
||||||
msgstr "cotisation pour adhérer (normalien étudiant)"
|
msgstr "cotisation pour adhérer (normalien étudiant)"
|
||||||
|
|
||||||
#: apps/member/admin.py:67 apps/member/models.py:281
|
#: apps/member/admin.py:67 apps/member/models.py:292
|
||||||
msgid "roles"
|
msgid "roles"
|
||||||
msgstr "rôles"
|
msgstr "rôles"
|
||||||
|
|
||||||
#: apps/member/admin.py:68 apps/member/models.py:295
|
#: apps/member/admin.py:68 apps/member/models.py:306
|
||||||
msgid "fee"
|
msgid "fee"
|
||||||
msgstr "cotisation"
|
msgstr "cotisation"
|
||||||
|
|
||||||
|
@ -315,217 +315,229 @@ msgstr "cotisation"
|
||||||
msgid "member"
|
msgid "member"
|
||||||
msgstr "adhérent"
|
msgstr "adhérent"
|
||||||
|
|
||||||
#: apps/member/forms.py:59 apps/member/views.py:84
|
#: apps/member/forms.py:40
|
||||||
|
msgid "Last report date"
|
||||||
|
msgstr "Date de dernier rapport"
|
||||||
|
|
||||||
|
#: apps/member/forms.py:60 apps/member/views.py:86
|
||||||
#: apps/registration/forms.py:28
|
#: apps/registration/forms.py:28
|
||||||
msgid "An alias with a similar name already exists."
|
msgid "An alias with a similar name already exists."
|
||||||
msgstr "Un alias avec un nom similaire existe déjà."
|
msgstr "Un alias avec un nom similaire existe déjà."
|
||||||
|
|
||||||
#: apps/member/forms.py:82 apps/registration/forms.py:50
|
#: apps/member/forms.py:83 apps/registration/forms.py:50
|
||||||
msgid "Inscription paid by Société Générale"
|
msgid "Inscription paid by Société Générale"
|
||||||
msgstr "Inscription payée par la Société générale"
|
msgstr "Inscription payée par la Société générale"
|
||||||
|
|
||||||
#: apps/member/forms.py:84 apps/registration/forms.py:52
|
#: apps/member/forms.py:85 apps/registration/forms.py:52
|
||||||
msgid "Check this case is the Société Générale paid the inscription."
|
msgid "Check this case is the Société Générale paid the inscription."
|
||||||
msgstr "Cochez cette case si la Société Générale a payé l'inscription."
|
msgstr "Cochez cette case si la Société Générale a payé l'inscription."
|
||||||
|
|
||||||
#: apps/member/forms.py:89 apps/registration/forms.py:57
|
#: apps/member/forms.py:90 apps/registration/forms.py:57
|
||||||
#: apps/wei/forms/registration.py:82
|
#: apps/wei/forms/registration.py:82
|
||||||
msgid "Credit type"
|
msgid "Credit type"
|
||||||
msgstr "Type de rechargement"
|
msgstr "Type de rechargement"
|
||||||
|
|
||||||
#: apps/member/forms.py:90 apps/registration/forms.py:58
|
#: apps/member/forms.py:91 apps/registration/forms.py:58
|
||||||
#: apps/wei/forms/registration.py:83
|
#: apps/wei/forms/registration.py:83
|
||||||
msgid "No credit"
|
msgid "No credit"
|
||||||
msgstr "Pas de rechargement"
|
msgstr "Pas de rechargement"
|
||||||
|
|
||||||
#: apps/member/forms.py:92
|
#: apps/member/forms.py:93
|
||||||
msgid "You can credit the note of the user."
|
msgid "You can credit the note of the user."
|
||||||
msgstr "Vous pouvez créditer la note de l'utisateur avant l'adhésion."
|
msgstr "Vous pouvez créditer la note de l'utisateur avant l'adhésion."
|
||||||
|
|
||||||
#: apps/member/forms.py:96 apps/registration/forms.py:63
|
#: apps/member/forms.py:97 apps/registration/forms.py:63
|
||||||
#: apps/wei/forms/registration.py:88
|
#: apps/wei/forms/registration.py:88
|
||||||
msgid "Credit amount"
|
msgid "Credit amount"
|
||||||
msgstr "Montant à créditer"
|
msgstr "Montant à créditer"
|
||||||
|
|
||||||
#: apps/member/forms.py:113 apps/registration/forms.py:80
|
#: apps/member/forms.py:114 apps/registration/forms.py:80
|
||||||
#: apps/treasury/forms.py:134 apps/wei/forms/registration.py:105
|
#: apps/treasury/forms.py:134 apps/wei/forms/registration.py:105
|
||||||
#: templates/note/transaction_form.html:135
|
#: templates/note/transaction_form.html:135
|
||||||
msgid "Bank"
|
msgid "Bank"
|
||||||
msgstr "Banque"
|
msgstr "Banque"
|
||||||
|
|
||||||
#: apps/member/forms.py:140
|
#: apps/member/forms.py:141
|
||||||
msgid "User"
|
msgid "User"
|
||||||
msgstr "Utilisateur"
|
msgstr "Utilisateur"
|
||||||
|
|
||||||
#: apps/member/forms.py:154
|
#: apps/member/forms.py:155
|
||||||
msgid "Roles"
|
msgid "Roles"
|
||||||
msgstr "Rôles"
|
msgstr "Rôles"
|
||||||
|
|
||||||
#: apps/member/models.py:38
|
#: apps/member/models.py:39
|
||||||
#: templates/registration/future_profile_detail.html:40
|
#: templates/registration/future_profile_detail.html:40
|
||||||
#: templates/wei/weimembership_form.html:48
|
#: templates/wei/weimembership_form.html:48
|
||||||
msgid "phone number"
|
msgid "phone number"
|
||||||
msgstr "numéro de téléphone"
|
msgstr "numéro de téléphone"
|
||||||
|
|
||||||
#: apps/member/models.py:45 templates/member/profile_info.html:29
|
#: apps/member/models.py:46 templates/member/profile_info.html:29
|
||||||
#: templates/registration/future_profile_detail.html:34
|
#: templates/registration/future_profile_detail.html:34
|
||||||
#: templates/wei/weimembership_form.html:42
|
#: templates/wei/weimembership_form.html:42
|
||||||
msgid "section"
|
msgid "section"
|
||||||
msgstr "section"
|
msgstr "section"
|
||||||
|
|
||||||
#: apps/member/models.py:46
|
#: apps/member/models.py:47
|
||||||
msgid "e.g. \"1A0\", \"9A♥\", \"SAPHIRE\""
|
msgid "e.g. \"1A0\", \"9A♥\", \"SAPHIRE\""
|
||||||
msgstr "e.g. \"1A0\", \"9A♥\", \"SAPHIRE\""
|
msgstr "e.g. \"1A0\", \"9A♥\", \"SAPHIRE\""
|
||||||
|
|
||||||
#: apps/member/models.py:54 templates/wei/weimembership_form.html:36
|
#: apps/member/models.py:55 templates/wei/weimembership_form.html:36
|
||||||
msgid "department"
|
msgid "department"
|
||||||
msgstr "département"
|
msgstr "département"
|
||||||
|
|
||||||
#: apps/member/models.py:56
|
#: apps/member/models.py:57
|
||||||
msgid "Informatics (A0)"
|
msgid "Informatics (A0)"
|
||||||
msgstr "Informatique (A0)"
|
msgstr "Informatique (A0)"
|
||||||
|
|
||||||
#: apps/member/models.py:57
|
#: apps/member/models.py:58
|
||||||
msgid "Mathematics (A1)"
|
msgid "Mathematics (A1)"
|
||||||
msgstr "Mathématiques (A1)"
|
msgstr "Mathématiques (A1)"
|
||||||
|
|
||||||
#: apps/member/models.py:58
|
#: apps/member/models.py:59
|
||||||
msgid "Physics (A2)"
|
msgid "Physics (A2)"
|
||||||
msgstr "Physique (A2)"
|
msgstr "Physique (A2)"
|
||||||
|
|
||||||
#: apps/member/models.py:59
|
#: apps/member/models.py:60
|
||||||
msgid "Applied physics (A'2)"
|
msgid "Applied physics (A'2)"
|
||||||
msgstr "Physique appliquée (A'2)"
|
msgstr "Physique appliquée (A'2)"
|
||||||
|
|
||||||
#: apps/member/models.py:60
|
#: apps/member/models.py:61
|
||||||
msgid "Chemistry (A''2)"
|
msgid "Chemistry (A''2)"
|
||||||
msgstr "Chimie (A''2)"
|
msgstr "Chimie (A''2)"
|
||||||
|
|
||||||
#: apps/member/models.py:61
|
#: apps/member/models.py:62
|
||||||
msgid "Biology (A3)"
|
msgid "Biology (A3)"
|
||||||
msgstr "Biologie (A3)"
|
msgstr "Biologie (A3)"
|
||||||
|
|
||||||
#: apps/member/models.py:62
|
#: apps/member/models.py:63
|
||||||
msgid "SAPHIRE (B1234)"
|
msgid "SAPHIRE (B1234)"
|
||||||
msgstr "SAPHIRE (B1234)"
|
msgstr "SAPHIRE (B1234)"
|
||||||
|
|
||||||
#: apps/member/models.py:63
|
#: apps/member/models.py:64
|
||||||
msgid "Mechanics (B1)"
|
msgid "Mechanics (B1)"
|
||||||
msgstr "Mécanique (B1)"
|
msgstr "Mécanique (B1)"
|
||||||
|
|
||||||
#: apps/member/models.py:64
|
#: apps/member/models.py:65
|
||||||
msgid "Civil engineering (B2)"
|
msgid "Civil engineering (B2)"
|
||||||
msgstr "Génie civil (B2)"
|
msgstr "Génie civil (B2)"
|
||||||
|
|
||||||
#: apps/member/models.py:65
|
#: apps/member/models.py:66
|
||||||
msgid "Mechanical engineering (B3)"
|
msgid "Mechanical engineering (B3)"
|
||||||
msgstr "Génie mécanique (B3)"
|
msgstr "Génie mécanique (B3)"
|
||||||
|
|
||||||
#: apps/member/models.py:66
|
#: apps/member/models.py:67
|
||||||
msgid "EEA (B4)"
|
msgid "EEA (B4)"
|
||||||
msgstr "EEA (B4)"
|
msgstr "EEA (B4)"
|
||||||
|
|
||||||
#: apps/member/models.py:67
|
#: apps/member/models.py:68
|
||||||
msgid "Design (C)"
|
msgid "Design (C)"
|
||||||
msgstr "Design (C)"
|
msgstr "Design (C)"
|
||||||
|
|
||||||
#: apps/member/models.py:68
|
#: apps/member/models.py:69
|
||||||
msgid "Economy-management (D2)"
|
msgid "Economy-management (D2)"
|
||||||
msgstr "Économie-gestion (D2)"
|
msgstr "Économie-gestion (D2)"
|
||||||
|
|
||||||
#: apps/member/models.py:69
|
#: apps/member/models.py:70
|
||||||
msgid "Social sciences (D3)"
|
msgid "Social sciences (D3)"
|
||||||
msgstr "Sciences sociales (D3)"
|
msgstr "Sciences sociales (D3)"
|
||||||
|
|
||||||
#: apps/member/models.py:70
|
#: apps/member/models.py:71
|
||||||
msgid "English (E)"
|
msgid "English (E)"
|
||||||
msgstr "Anglais (E)"
|
msgstr "Anglais (E)"
|
||||||
|
|
||||||
#: apps/member/models.py:71
|
#: apps/member/models.py:72
|
||||||
msgid "External (EXT)"
|
msgid "External (EXT)"
|
||||||
msgstr "Externe (EXT)"
|
msgstr "Externe (EXT)"
|
||||||
|
|
||||||
#: apps/member/models.py:78
|
#: apps/member/models.py:79
|
||||||
msgid "promotion"
|
msgid "promotion"
|
||||||
msgstr "promotion"
|
msgstr "promotion"
|
||||||
|
|
||||||
#: apps/member/models.py:79
|
#: apps/member/models.py:80
|
||||||
msgid "Year of entry to the school (None if not ENS student)"
|
msgid "Year of entry to the school (None if not ENS student)"
|
||||||
msgstr "Année d'entrée dans l'école (None si non-étudiant·e de l'ENS)"
|
msgstr "Année d'entrée dans l'école (None si non-étudiant·e de l'ENS)"
|
||||||
|
|
||||||
#: apps/member/models.py:83 templates/member/profile_info.html:32
|
#: apps/member/models.py:84 templates/member/profile_info.html:32
|
||||||
#: templates/registration/future_profile_detail.html:37
|
#: templates/registration/future_profile_detail.html:37
|
||||||
#: templates/wei/weimembership_form.html:45
|
#: templates/wei/weimembership_form.html:45
|
||||||
msgid "address"
|
msgid "address"
|
||||||
msgstr "adresse"
|
msgstr "adresse"
|
||||||
|
|
||||||
#: apps/member/models.py:90
|
#: apps/member/models.py:91
|
||||||
#: templates/registration/future_profile_detail.html:43
|
#: templates/registration/future_profile_detail.html:43
|
||||||
#: templates/wei/weimembership_form.html:51
|
#: templates/wei/weimembership_form.html:51
|
||||||
msgid "paid"
|
msgid "paid"
|
||||||
msgstr "payé"
|
msgstr "payé"
|
||||||
|
|
||||||
#: apps/member/models.py:91
|
#: apps/member/models.py:92
|
||||||
msgid "Tells if the user receive a salary."
|
msgid "Tells if the user receive a salary."
|
||||||
msgstr "Indique si l'utilisateur perçoit un salaire."
|
msgstr "Indique si l'utilisateur perçoit un salaire."
|
||||||
|
|
||||||
#: apps/member/models.py:96
|
#: apps/member/models.py:97
|
||||||
|
msgid "report frequency (in days)"
|
||||||
|
msgstr "fréquence des rapports (en jours)"
|
||||||
|
|
||||||
|
#: apps/member/models.py:102
|
||||||
|
msgid "last report date"
|
||||||
|
msgstr "date de dernier rapport"
|
||||||
|
|
||||||
|
#: apps/member/models.py:107
|
||||||
msgid "email confirmed"
|
msgid "email confirmed"
|
||||||
msgstr "adresse email confirmée"
|
msgstr "adresse email confirmée"
|
||||||
|
|
||||||
#: apps/member/models.py:101
|
#: apps/member/models.py:112
|
||||||
msgid "registration valid"
|
msgid "registration valid"
|
||||||
msgstr "inscription valid"
|
msgstr "inscription valid"
|
||||||
|
|
||||||
#: apps/member/models.py:130 apps/member/models.py:131
|
#: apps/member/models.py:141 apps/member/models.py:142
|
||||||
msgid "user profile"
|
msgid "user profile"
|
||||||
msgstr "profil utilisateur"
|
msgstr "profil utilisateur"
|
||||||
|
|
||||||
#: apps/member/models.py:138
|
#: apps/member/models.py:149
|
||||||
msgid "Activate your Note Kfet account"
|
msgid "Activate your Note Kfet account"
|
||||||
msgstr "Activez votre compte Note Kfet"
|
msgstr "Activez votre compte Note Kfet"
|
||||||
|
|
||||||
#: apps/member/models.py:167 templates/member/club_info.html:57
|
#: apps/member/models.py:178 templates/member/club_info.html:57
|
||||||
#: templates/registration/future_profile_detail.html:22
|
#: templates/registration/future_profile_detail.html:22
|
||||||
#: templates/wei/weiclub_info.html:52 templates/wei/weimembership_form.html:24
|
#: templates/wei/weiclub_info.html:52 templates/wei/weimembership_form.html:24
|
||||||
msgid "email"
|
msgid "email"
|
||||||
msgstr "courriel"
|
msgstr "courriel"
|
||||||
|
|
||||||
#: apps/member/models.py:174
|
#: apps/member/models.py:185
|
||||||
msgid "parent club"
|
msgid "parent club"
|
||||||
msgstr "club parent"
|
msgstr "club parent"
|
||||||
|
|
||||||
#: apps/member/models.py:183
|
#: apps/member/models.py:194
|
||||||
msgid "require memberships"
|
msgid "require memberships"
|
||||||
msgstr "nécessite des adhésions"
|
msgstr "nécessite des adhésions"
|
||||||
|
|
||||||
#: apps/member/models.py:184
|
#: apps/member/models.py:195
|
||||||
msgid "Uncheck if this club don't require memberships."
|
msgid "Uncheck if this club don't require memberships."
|
||||||
msgstr "Décochez si ce club n'utilise pas d'adhésions."
|
msgstr "Décochez si ce club n'utilise pas d'adhésions."
|
||||||
|
|
||||||
#: apps/member/models.py:200 templates/member/club_info.html:33
|
#: apps/member/models.py:211 templates/member/club_info.html:33
|
||||||
msgid "membership duration"
|
msgid "membership duration"
|
||||||
msgstr "durée de l'adhésion"
|
msgstr "durée de l'adhésion"
|
||||||
|
|
||||||
#: apps/member/models.py:201
|
#: apps/member/models.py:212
|
||||||
msgid "The longest time (in days) a membership can last (NULL = infinite)."
|
msgid "The longest time (in days) a membership can last (NULL = infinite)."
|
||||||
msgstr "La durée maximale (en jours) d'une adhésion (NULL = infinie)."
|
msgstr "La durée maximale (en jours) d'une adhésion (NULL = infinie)."
|
||||||
|
|
||||||
#: apps/member/models.py:208 templates/member/club_info.html:23
|
#: apps/member/models.py:219 templates/member/club_info.html:23
|
||||||
msgid "membership start"
|
msgid "membership start"
|
||||||
msgstr "début de l'adhésion"
|
msgstr "début de l'adhésion"
|
||||||
|
|
||||||
#: apps/member/models.py:209
|
#: apps/member/models.py:220
|
||||||
msgid "How long after January 1st the members can renew their membership."
|
msgid "How long after January 1st the members can renew their membership."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Combien de temps après le 1er Janvier les adhérents peuvent renouveler leur "
|
"Combien de temps après le 1er Janvier les adhérents peuvent renouveler leur "
|
||||||
"adhésion."
|
"adhésion."
|
||||||
|
|
||||||
#: apps/member/models.py:216 templates/member/club_info.html:28
|
#: apps/member/models.py:227 templates/member/club_info.html:28
|
||||||
msgid "membership end"
|
msgid "membership end"
|
||||||
msgstr "fin de l'adhésion"
|
msgstr "fin de l'adhésion"
|
||||||
|
|
||||||
#: apps/member/models.py:217
|
#: apps/member/models.py:228
|
||||||
msgid ""
|
msgid ""
|
||||||
"How long the membership can last after January 1st of the next year after "
|
"How long the membership can last after January 1st of the next year after "
|
||||||
"members can renew their membership."
|
"members can renew their membership."
|
||||||
|
@ -533,46 +545,46 @@ msgstr ""
|
||||||
"Combien de temps l'adhésion peut durer après le 1er Janvier de l'année "
|
"Combien de temps l'adhésion peut durer après le 1er Janvier de l'année "
|
||||||
"suivante avant que les adhérents peuvent renouveler leur adhésion."
|
"suivante avant que les adhérents peuvent renouveler leur adhésion."
|
||||||
|
|
||||||
#: apps/member/models.py:251 apps/member/models.py:276
|
#: apps/member/models.py:262 apps/member/models.py:287
|
||||||
#: apps/note/models/notes.py:163
|
#: apps/note/models/notes.py:163
|
||||||
msgid "club"
|
msgid "club"
|
||||||
msgstr "club"
|
msgstr "club"
|
||||||
|
|
||||||
#: apps/member/models.py:252
|
#: apps/member/models.py:263
|
||||||
msgid "clubs"
|
msgid "clubs"
|
||||||
msgstr "clubs"
|
msgstr "clubs"
|
||||||
|
|
||||||
#: apps/member/models.py:286
|
#: apps/member/models.py:297
|
||||||
msgid "membership starts on"
|
msgid "membership starts on"
|
||||||
msgstr "l'adhésion commence le"
|
msgstr "l'adhésion commence le"
|
||||||
|
|
||||||
#: apps/member/models.py:290
|
#: apps/member/models.py:301
|
||||||
msgid "membership ends on"
|
msgid "membership ends on"
|
||||||
msgstr "l'adhésion finit le"
|
msgstr "l'adhésion finit le"
|
||||||
|
|
||||||
#: apps/member/models.py:342
|
#: apps/member/models.py:353
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "The role {role} does not apply to the club {club}."
|
msgid "The role {role} does not apply to the club {club}."
|
||||||
msgstr "Le rôle {role} ne s'applique pas au club {club}."
|
msgstr "Le rôle {role} ne s'applique pas au club {club}."
|
||||||
|
|
||||||
#: apps/member/models.py:353 apps/member/views.py:588
|
#: apps/member/models.py:364 apps/member/views.py:590
|
||||||
msgid "User is already a member of the club"
|
msgid "User is already a member of the club"
|
||||||
msgstr "L'utilisateur est déjà membre du club"
|
msgstr "L'utilisateur est déjà membre du club"
|
||||||
|
|
||||||
#: apps/member/models.py:400
|
#: apps/member/models.py:411
|
||||||
msgid "User is not a member of the parent club"
|
msgid "User is not a member of the parent club"
|
||||||
msgstr "L'utilisateur n'est pas membre du club parent"
|
msgstr "L'utilisateur n'est pas membre du club parent"
|
||||||
|
|
||||||
#: apps/member/models.py:453
|
#: apps/member/models.py:464
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Membership of {user} for the club {club}"
|
msgid "Membership of {user} for the club {club}"
|
||||||
msgstr "Adhésion de {user} pour le club {club}"
|
msgstr "Adhésion de {user} pour le club {club}"
|
||||||
|
|
||||||
#: apps/member/models.py:456
|
#: apps/member/models.py:467
|
||||||
msgid "membership"
|
msgid "membership"
|
||||||
msgstr "adhésion"
|
msgstr "adhésion"
|
||||||
|
|
||||||
#: apps/member/models.py:457
|
#: apps/member/models.py:468
|
||||||
msgid "memberships"
|
msgid "memberships"
|
||||||
msgstr "adhésions"
|
msgstr "adhésions"
|
||||||
|
|
||||||
|
@ -590,47 +602,47 @@ msgstr "Modifier le profil"
|
||||||
msgid "This address must be valid."
|
msgid "This address must be valid."
|
||||||
msgstr "Cette adresse doit être valide."
|
msgstr "Cette adresse doit être valide."
|
||||||
|
|
||||||
#: apps/member/views.py:133
|
#: apps/member/views.py:135
|
||||||
msgid "Profile detail"
|
msgid "Profile detail"
|
||||||
msgstr "Détails de l'utilisateur"
|
msgstr "Détails de l'utilisateur"
|
||||||
|
|
||||||
#: apps/member/views.py:167
|
#: apps/member/views.py:169
|
||||||
msgid "Search user"
|
msgid "Search user"
|
||||||
msgstr "Chercher un utilisateur"
|
msgstr "Chercher un utilisateur"
|
||||||
|
|
||||||
#: apps/member/views.py:201 apps/member/views.py:387
|
#: apps/member/views.py:203 apps/member/views.py:389
|
||||||
msgid "Note aliases"
|
msgid "Note aliases"
|
||||||
msgstr "Alias de la note"
|
msgstr "Alias de la note"
|
||||||
|
|
||||||
#: apps/member/views.py:215
|
#: apps/member/views.py:217
|
||||||
msgid "Update note picture"
|
msgid "Update note picture"
|
||||||
msgstr "Modifier la photo de la note"
|
msgstr "Modifier la photo de la note"
|
||||||
|
|
||||||
#: apps/member/views.py:273 templates/member/profile_info.html:43
|
#: apps/member/views.py:275 templates/member/profile_info.html:43
|
||||||
msgid "Manage auth token"
|
msgid "Manage auth token"
|
||||||
msgstr "Gérer les jetons d'authentification"
|
msgstr "Gérer les jetons d'authentification"
|
||||||
|
|
||||||
#: apps/member/views.py:301
|
#: apps/member/views.py:303
|
||||||
msgid "Create new club"
|
msgid "Create new club"
|
||||||
msgstr "Créer un nouveau club"
|
msgstr "Créer un nouveau club"
|
||||||
|
|
||||||
#: apps/member/views.py:313
|
#: apps/member/views.py:315
|
||||||
msgid "Search club"
|
msgid "Search club"
|
||||||
msgstr "Chercher un club"
|
msgstr "Chercher un club"
|
||||||
|
|
||||||
#: apps/member/views.py:338
|
#: apps/member/views.py:340
|
||||||
msgid "Club detail"
|
msgid "Club detail"
|
||||||
msgstr "Détails du club"
|
msgstr "Détails du club"
|
||||||
|
|
||||||
#: apps/member/views.py:404
|
#: apps/member/views.py:406
|
||||||
msgid "Update club"
|
msgid "Update club"
|
||||||
msgstr "Modifier le club"
|
msgstr "Modifier le club"
|
||||||
|
|
||||||
#: apps/member/views.py:438
|
#: apps/member/views.py:440
|
||||||
msgid "Add new member to the club"
|
msgid "Add new member to the club"
|
||||||
msgstr "Ajouter un nouveau membre au club"
|
msgstr "Ajouter un nouveau membre au club"
|
||||||
|
|
||||||
#: apps/member/views.py:579 apps/wei/views.py:862
|
#: apps/member/views.py:581 apps/wei/views.py:862
|
||||||
msgid ""
|
msgid ""
|
||||||
"This user don't have enough money to join this club, and can't have a "
|
"This user don't have enough money to join this club, and can't have a "
|
||||||
"negative balance."
|
"negative balance."
|
||||||
|
@ -638,25 +650,25 @@ msgstr ""
|
||||||
"Cet utilisateur n'a pas assez d'argent pour rejoindre ce club et ne peut pas "
|
"Cet utilisateur n'a pas assez d'argent pour rejoindre ce club et ne peut pas "
|
||||||
"avoir un solde négatif."
|
"avoir un solde négatif."
|
||||||
|
|
||||||
#: apps/member/views.py:592
|
#: apps/member/views.py:594
|
||||||
msgid "The membership must start after {:%m-%d-%Y}."
|
msgid "The membership must start after {:%m-%d-%Y}."
|
||||||
msgstr "L'adhésion doit commencer après le {:%d/%m/%Y}."
|
msgstr "L'adhésion doit commencer après le {:%d/%m/%Y}."
|
||||||
|
|
||||||
#: apps/member/views.py:597
|
#: apps/member/views.py:599
|
||||||
msgid "The membership must begin before {:%m-%d-%Y}."
|
msgid "The membership must begin before {:%m-%d-%Y}."
|
||||||
msgstr "L'adhésion doit commencer avant le {:%d/%m/%Y}."
|
msgstr "L'adhésion doit commencer avant le {:%d/%m/%Y}."
|
||||||
|
|
||||||
#: apps/member/views.py:614 apps/member/views.py:616 apps/member/views.py:618
|
#: apps/member/views.py:616 apps/member/views.py:618 apps/member/views.py:620
|
||||||
#: apps/registration/views.py:290 apps/registration/views.py:292
|
#: apps/registration/views.py:292 apps/registration/views.py:294
|
||||||
#: apps/registration/views.py:294 apps/wei/views.py:867 apps/wei/views.py:871
|
#: apps/registration/views.py:296 apps/wei/views.py:867 apps/wei/views.py:871
|
||||||
msgid "This field is required."
|
msgid "This field is required."
|
||||||
msgstr "Ce champ est requis."
|
msgstr "Ce champ est requis."
|
||||||
|
|
||||||
#: apps/member/views.py:702
|
#: apps/member/views.py:704
|
||||||
msgid "Manage roles of an user in the club"
|
msgid "Manage roles of an user in the club"
|
||||||
msgstr "Gérer les rôles d'un utilisateur dans le club"
|
msgstr "Gérer les rôles d'un utilisateur dans le club"
|
||||||
|
|
||||||
#: apps/member/views.py:727
|
#: apps/member/views.py:729
|
||||||
msgid "Members of the club"
|
msgid "Members of the club"
|
||||||
msgstr "Membres du club"
|
msgstr "Membres du club"
|
||||||
|
|
||||||
|
@ -1143,54 +1155,54 @@ msgstr "Adhérer au club Kfet"
|
||||||
msgid "Register new user"
|
msgid "Register new user"
|
||||||
msgstr "Enregistrer un nouvel utilisateur"
|
msgstr "Enregistrer un nouvel utilisateur"
|
||||||
|
|
||||||
#: apps/registration/views.py:80
|
#: apps/registration/views.py:82
|
||||||
msgid "Email validation"
|
msgid "Email validation"
|
||||||
msgstr "Validation de l'adresse mail"
|
msgstr "Validation de l'adresse mail"
|
||||||
|
|
||||||
#: apps/registration/views.py:82
|
#: apps/registration/views.py:84
|
||||||
msgid "Validate email"
|
msgid "Validate email"
|
||||||
msgstr "Valider l'adresse e-mail"
|
msgstr "Valider l'adresse e-mail"
|
||||||
|
|
||||||
#: apps/registration/views.py:124
|
#: apps/registration/views.py:126
|
||||||
msgid "Email validation unsuccessful"
|
msgid "Email validation unsuccessful"
|
||||||
msgstr " La validation de l'adresse mail a échoué"
|
msgstr " La validation de l'adresse mail a échoué"
|
||||||
|
|
||||||
#: apps/registration/views.py:135
|
#: apps/registration/views.py:137
|
||||||
msgid "Email validation email sent"
|
msgid "Email validation email sent"
|
||||||
msgstr "L'email de vérification de l'adresse email a bien été envoyé."
|
msgstr "L'email de vérification de l'adresse email a bien été envoyé."
|
||||||
|
|
||||||
#: apps/registration/views.py:143
|
#: apps/registration/views.py:145
|
||||||
msgid "Resend email validation link"
|
msgid "Resend email validation link"
|
||||||
msgstr "Renvoyer le lien de validation"
|
msgstr "Renvoyer le lien de validation"
|
||||||
|
|
||||||
#: apps/registration/views.py:161
|
#: apps/registration/views.py:163
|
||||||
msgid "Pre-registered users list"
|
msgid "Pre-registered users list"
|
||||||
msgstr "Liste des utilisateurs en attente d'inscription"
|
msgstr "Liste des utilisateurs en attente d'inscription"
|
||||||
|
|
||||||
#: apps/registration/views.py:188
|
#: apps/registration/views.py:190
|
||||||
msgid "Unregistered users"
|
msgid "Unregistered users"
|
||||||
msgstr "Utilisateurs en attente d'inscription"
|
msgstr "Utilisateurs en attente d'inscription"
|
||||||
|
|
||||||
#: apps/registration/views.py:201
|
#: apps/registration/views.py:203
|
||||||
msgid "Registration detail"
|
msgid "Registration detail"
|
||||||
msgstr "Détails de l'inscription"
|
msgstr "Détails de l'inscription"
|
||||||
|
|
||||||
#: apps/registration/views.py:256
|
#: apps/registration/views.py:258
|
||||||
msgid "You must join the BDE."
|
msgid "You must join the BDE."
|
||||||
msgstr "Vous devez adhérer au BDE."
|
msgstr "Vous devez adhérer au BDE."
|
||||||
|
|
||||||
#: apps/registration/views.py:278
|
#: apps/registration/views.py:280
|
||||||
msgid "You must join BDE club before joining Kfet club."
|
msgid "You must join BDE club before joining Kfet club."
|
||||||
msgstr "Vous devez adhérer au club BDE avant d'adhérer au club Kfet."
|
msgstr "Vous devez adhérer au club BDE avant d'adhérer au club Kfet."
|
||||||
|
|
||||||
#: apps/registration/views.py:283
|
#: apps/registration/views.py:285
|
||||||
msgid ""
|
msgid ""
|
||||||
"The entered amount is not enough for the memberships, should be at least {}"
|
"The entered amount is not enough for the memberships, should be at least {}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Le montant crédité est trop faible pour adhérer, il doit être au minimum de "
|
"Le montant crédité est trop faible pour adhérer, il doit être au minimum de "
|
||||||
"{}"
|
"{}"
|
||||||
|
|
||||||
#: apps/registration/views.py:358
|
#: apps/registration/views.py:360
|
||||||
msgid "Invalidate pre-registration"
|
msgid "Invalidate pre-registration"
|
||||||
msgstr "Invalider l'inscription"
|
msgstr "Invalider l'inscription"
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
# Attention, il faut *copier* ce fichier dans /etc/cron.d, owner root:root et droits 644
|
||||||
|
# Les cronjobs dont a besoin la Note Kfet
|
||||||
|
|
||||||
|
# m h dom mon dow user command
|
||||||
|
# Envoyer les mails en attente
|
||||||
|
* * * * * root cd /var/www/note_kfet && env/bin/python manage.py send_mail >> /var/www/note_kfet/cron_mail.log
|
||||||
|
* * * * * root cd /var/www/note_kfet && env/bin/python manage.py retry_deferred >> /var/www/note_kfet/cron_mail_deferred.log
|
||||||
|
00 0 * * * root cd /var/www/note_kfet && env/bin/python manage.py purge_mail_log 7 >> /var/www/note_kfet/cron_mail_purge.log
|
||||||
|
# Vérifier la cohérence de la base et mailer en cas de problème
|
||||||
|
00 4 * * * root cd /var/www/note_kfet && env/bin/python manage.py check_consistency --sum-all --check-all --mail
|
||||||
|
# TODO
|
||||||
|
# Mettre à jour le wiki (modification sans (dé)validation, activités passées)
|
||||||
|
#30 5 * * * root /home/note/note-kfet-2015-serveur/serveur/Wiki.py --human --raw
|
||||||
|
# Spammer les gens en négatif
|
||||||
|
00 5 * * 2 root cd /var/www/note_kfet && env/bin/python manage.py send_mail_to_negative_balances --spam
|
||||||
|
# Envoyer le rapport mensuel aux trésoriers et respos info
|
||||||
|
00 8 6 * * root cd /var/www/note_kfet && env/bin/python manage.py send_mail_to_negative_balances --report
|
||||||
|
# Envoyer les rapports aux gens
|
||||||
|
55 6 * * * root cd /var/www/note_kfet && env/bin/python manage.py send_reports
|
|
@ -16,9 +16,24 @@
|
||||||
crossorigin="anonymous"></script>
|
crossorigin="anonymous"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
<p>
|
||||||
|
Bonjour,
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Vous recevez ce mail car vous avez défini une « Fréquence des rapports » dans la Note.<br>
|
||||||
|
Le premier rapport récapitule toutes vos consommations depuis la création de votre compte.<br>
|
||||||
|
Ensuite, un rapport vous est envoyé à la fréquence demandée seulement si vous avez consommé
|
||||||
|
depuis le dernier rapport.<br>
|
||||||
|
Pour arrêter de recevoir des rapports, il vous suffit de modifier votre profil Note et de
|
||||||
|
mettre la fréquence des rapports à 0 ou -1.<br>
|
||||||
|
Pour toutes suggestions par rapport à ce service, contactez
|
||||||
|
<a href="mailto:notekfet2020@lists.crans.org">notekfet2020@lists.crans.org</a>.
|
||||||
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Rapport d'activité de {{ user.first_name }} {{ user.last_name }} (note : {{ user }})
|
Rapport d'activité de {{ user.first_name }} {{ user.last_name }} (note : {{ user }})
|
||||||
depuis le {{ last_week }} jusqu'au {{ now }}.
|
depuis le {{ last_report }} jusqu'au {{ now }}.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
|
Loading…
Reference in New Issue