mirror of https://gitlab.federez.net/re2o/re2o
191 changed files with 9748 additions and 3432 deletions
Binary file not shown.
File diff suppressed because it is too large
@ -0,0 +1,181 @@ |
|||
# -*- coding: utf-8 -*- |
|||
# Generated by Django 1.10.7 on 2018-08-18 11:19 |
|||
from __future__ import unicode_literals |
|||
|
|||
import cotisations.validators |
|||
import django.core.validators |
|||
from django.db import migrations, models |
|||
import django.db.models.deletion |
|||
import re2o.aes_field |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('cotisations', '0032_custom_invoice'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AlterModelOptions( |
|||
name='article', |
|||
options={'permissions': (('view_article', 'Can view an article object'), ('buy_every_article', 'Can buy every article')), 'verbose_name': 'article', 'verbose_name_plural': 'articles'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='balancepayment', |
|||
options={'verbose_name': 'user balance'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='banque', |
|||
options={'permissions': (('view_banque', 'Can view a bank object'),), 'verbose_name': 'bank', 'verbose_name_plural': 'banks'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='cotisation', |
|||
options={'permissions': (('view_cotisation', 'Can view a subscription object'), ('change_all_cotisation', 'Can edit the previous subscriptions')), 'verbose_name': 'subscription', 'verbose_name_plural': 'subscriptions'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='custominvoice', |
|||
options={'permissions': (('view_custominvoice', 'Can view a custom invoice object'),)}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='facture', |
|||
options={'permissions': (('change_facture_control', 'Can edit the "controlled" state'), ('view_facture', 'Can view an invoice object'), ('change_all_facture', 'Can edit all the previous invoices')), 'verbose_name': 'invoice', 'verbose_name_plural': 'invoices'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='paiement', |
|||
options={'permissions': (('view_paiement', 'Can view a payment method object'), ('use_every_payment', 'Can use every payment method')), 'verbose_name': 'payment method', 'verbose_name_plural': 'payment methods'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='vente', |
|||
options={'permissions': (('view_vente', 'Can view a purchase object'), ('change_all_vente', 'Can edit all the previous purchases')), 'verbose_name': 'purchase', 'verbose_name_plural': 'purchases'}, |
|||
), |
|||
migrations.AlterField( |
|||
model_name='article', |
|||
name='available_for_everyone', |
|||
field=models.BooleanField(default=False, verbose_name='is available for every user'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='article', |
|||
name='duration', |
|||
field=models.PositiveIntegerField(blank=True, null=True, validators=[django.core.validators.MinValueValidator(0)], verbose_name='duration (in months)'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='article', |
|||
name='name', |
|||
field=models.CharField(max_length=255, verbose_name='designation'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='article', |
|||
name='prix', |
|||
field=models.DecimalField(decimal_places=2, max_digits=5, verbose_name='unit price'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='article', |
|||
name='type_cotisation', |
|||
field=models.CharField(blank=True, choices=[('Connexion', 'Connection'), ('Adhesion', 'Membership'), ('All', 'Both of them')], default=None, max_length=255, null=True, verbose_name='subscription type'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='article', |
|||
name='type_user', |
|||
field=models.CharField(choices=[('Adherent', 'Member'), ('Club', 'Club'), ('All', 'Both of them')], default='All', max_length=255, verbose_name='type of users concerned'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='banque', |
|||
name='name', |
|||
field=models.CharField(max_length=255), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='comnpaypayment', |
|||
name='payment_credential', |
|||
field=models.CharField(blank=True, default='', max_length=255, verbose_name='ComNpay VAT Number'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='comnpaypayment', |
|||
name='payment_pass', |
|||
field=re2o.aes_field.AESEncryptedField(blank=True, max_length=255, null=True, verbose_name='ComNpay secret key'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='comnpaypayment', |
|||
name='production', |
|||
field=models.BooleanField(default=True, verbose_name='Production mode enabled (production URL, instead of homologation)'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='cotisation', |
|||
name='date_end', |
|||
field=models.DateTimeField(verbose_name='end date'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='cotisation', |
|||
name='date_start', |
|||
field=models.DateTimeField(verbose_name='start date'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='cotisation', |
|||
name='type_cotisation', |
|||
field=models.CharField(choices=[('Connexion', 'Connection'), ('Adhesion', 'Membership'), ('All', 'Both of them')], default='All', max_length=255, verbose_name='subscription type'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='cotisation', |
|||
name='vente', |
|||
field=models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to='cotisations.Vente', verbose_name='purchase'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='facture', |
|||
name='cheque', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='cheque number'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='facture', |
|||
name='control', |
|||
field=models.BooleanField(default=False, verbose_name='controlled'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='facture', |
|||
name='valid', |
|||
field=models.BooleanField(default=True, verbose_name='validated'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='paiement', |
|||
name='available_for_everyone', |
|||
field=models.BooleanField(default=False, verbose_name='is available for every user'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='paiement', |
|||
name='is_balance', |
|||
field=models.BooleanField(default=False, editable=False, help_text='There should be only one balance payment method.', validators=[cotisations.validators.check_no_balance], verbose_name='is user balance'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='paiement', |
|||
name='moyen', |
|||
field=models.CharField(max_length=255, verbose_name='method'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='vente', |
|||
name='duration', |
|||
field=models.PositiveIntegerField(blank=True, null=True, verbose_name='duration (in months)'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='vente', |
|||
name='facture', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cotisations.BaseInvoice', verbose_name='invoice'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='vente', |
|||
name='name', |
|||
field=models.CharField(max_length=255, verbose_name='article'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='vente', |
|||
name='number', |
|||
field=models.IntegerField(validators=[django.core.validators.MinValueValidator(1)], verbose_name='amount'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='vente', |
|||
name='prix', |
|||
field=models.DecimalField(decimal_places=2, max_digits=5, verbose_name='price'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='vente', |
|||
name='type_cotisation', |
|||
field=models.CharField(blank=True, choices=[('Connexion', 'Connection'), ('Adhesion', 'Membership'), ('All', 'Both of them')], max_length=255, null=True, verbose_name='subscription type'), |
|||
), |
|||
] |
|||
Binary file not shown.
@ -0,0 +1,338 @@ |
|||
# Re2o est un logiciel d'administration développé initiallement au rezometz. Il |
|||
# se veut agnostique au réseau considéré, de manière à être installable en |
|||
# quelques clics. |
|||
# |
|||
# Copyright © 2018 Maël Kervella |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License along |
|||
# with this program; if not, write to the Free Software Foundation, Inc., |
|||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
|||
msgid "" |
|||
msgstr "" |
|||
"Project-Id-Version: 2.5\n" |
|||
"Report-Msgid-Bugs-To: \n" |
|||
"POT-Creation-Date: 2018-08-15 20:12+0200\n" |
|||
"PO-Revision-Date: 2018-06-23 16:01+0200\n" |
|||
"Last-Translator: Laouen Fernet <laouen.fernet@supelec.fr>\n" |
|||
"Language-Team: \n" |
|||
"Language: fr_FR\n" |
|||
"MIME-Version: 1.0\n" |
|||
"Content-Type: text/plain; charset=UTF-8\n" |
|||
"Content-Transfer-Encoding: 8bit\n" |
|||
|
|||
#: acl.py:42 |
|||
msgid "You don't have the right to view this application." |
|||
msgstr "Vous n'avez pas le droit de voir cette application." |
|||
|
|||
#: templates/logs/aff_stats_logs.html:36 |
|||
msgid "Edited object" |
|||
msgstr "Objet modifié" |
|||
|
|||
#: templates/logs/aff_stats_logs.html:37 |
|||
#: templates/logs/aff_stats_models.html:32 |
|||
msgid "Object type" |
|||
msgstr "Type d'objet" |
|||
|
|||
#: templates/logs/aff_stats_logs.html:38 |
|||
msgid "Edited by" |
|||
msgstr "Modifié par" |
|||
|
|||
#: templates/logs/aff_stats_logs.html:40 |
|||
msgid "Date of editing" |
|||
msgstr "Date de modification" |
|||
|
|||
#: templates/logs/aff_stats_logs.html:42 |
|||
msgid "Comment" |
|||
msgstr "Commentaire" |
|||
|
|||
#: templates/logs/aff_stats_logs.html:58 templates/logs/aff_summary.html:62 |
|||
#: templates/logs/aff_summary.html:85 templates/logs/aff_summary.html:104 |
|||
#: templates/logs/aff_summary.html:123 templates/logs/aff_summary.html:142 |
|||
msgid "Cancel" |
|||
msgstr "Annuler" |
|||
|
|||
#: templates/logs/aff_stats_models.html:29 |
|||
#, python-format |
|||
msgid "Statistics of the set %(key)s" |
|||
msgstr "Statistiques de l'ensemble %(key)s" |
|||
|
|||
#: templates/logs/aff_stats_models.html:33 |
|||
msgid "Number of stored entries" |
|||
msgstr "Nombre d'entrées enregistrées" |
|||
|
|||
#: templates/logs/aff_stats_users.html:31 |
|||
#, python-format |
|||
msgid "Statistics per %(key_dict)s of %(key)s" |
|||
msgstr "Statistiques par %(key_dict)s de %(key)s" |
|||
|
|||
#: templates/logs/aff_stats_users.html:34 |
|||
#, python-format |
|||
msgid "Number of %(key)s per %(key_dict)s" |
|||
msgstr "Nombre de %(key)s par %(key_dict)s" |
|||
|
|||
#: templates/logs/aff_stats_users.html:35 |
|||
msgid "Rank" |
|||
msgstr "Rang" |
|||
|
|||
#: templates/logs/aff_summary.html:37 |
|||
msgid "Date" |
|||
msgstr "Date" |
|||
|
|||
#: templates/logs/aff_summary.html:39 |
|||
msgid "Editing" |
|||
msgstr "Modification" |
|||
|
|||
#: templates/logs/aff_summary.html:48 |
|||
#, python-format |
|||
msgid "%(username)s has banned" |
|||
msgstr "%(username)s a banni" |
|||
|
|||
#: templates/logs/aff_summary.html:52 templates/logs/aff_summary.html:75 |
|||
msgid "No reason" |
|||
msgstr "Aucun motif" |
|||
|
|||
#: templates/logs/aff_summary.html:71 |
|||
#, python-format |
|||
msgid "%(username)s has graciously authorised" |
|||
msgstr "%(username)s a autorisé gracieusement" |
|||
|
|||
#: templates/logs/aff_summary.html:94 |
|||
#, python-format |
|||
msgid "%(username)s has updated" |
|||
msgstr "%(username)s a mis à jour" |
|||
|
|||
#: templates/logs/aff_summary.html:113 |
|||
#, python-format |
|||
msgid "%(username)s has sold %(number)sx %(name)s to" |
|||
msgstr "%(username)s a vendu %(number)sx %(name)s à" |
|||
|
|||
#: templates/logs/aff_summary.html:116 |
|||
#, python-format |
|||
msgid "+%(duration)s months" |
|||
msgstr "+%(duration)s mois" |
|||
|
|||
#: templates/logs/aff_summary.html:132 |
|||
#, python-format |
|||
msgid "%(username)s has edited an interface of" |
|||
msgstr "%(username)s a modifié une interface de" |
|||
|
|||
#: templates/logs/delete.html:29 |
|||
msgid "Deletion of actions" |
|||
msgstr "Suppression d'actions" |
|||
|
|||
#: templates/logs/delete.html:35 |
|||
#, python-format |
|||
msgid "" |
|||
"Warning: are you sure you want to delete this action %(objet_name)s " |
|||
"( %(objet)s )?" |
|||
msgstr "" |
|||
"Attention: voulez-vous vraiment supprimer cette action %(objet_name)s " |
|||
"( %(objet)s ) ?" |
|||
|
|||
#: templates/logs/delete.html:36 |
|||
msgid "Confirm" |
|||
msgstr "Confirmer" |
|||
|
|||
#: templates/logs/index.html:29 templates/logs/stats_general.html:29 |
|||
#: templates/logs/stats_logs.html:29 templates/logs/stats_models.html:29 |
|||
#: templates/logs/stats_users.html:29 |
|||
msgid "Statistics" |
|||
msgstr "Statistiques" |
|||
|
|||
#: templates/logs/index.html:32 templates/logs/stats_logs.html:32 views.py:403 |
|||
msgid "Actions performed" |
|||
msgstr "Actions effectuées" |
|||
|
|||
#: templates/logs/sidebar.html:33 |
|||
msgid "Summary" |
|||
msgstr "Résumé" |
|||
|
|||
#: templates/logs/sidebar.html:37 |
|||
msgid "Events" |
|||
msgstr "Évènements" |
|||
|
|||
#: templates/logs/sidebar.html:41 |
|||
msgid "General" |
|||
msgstr "Général" |
|||
|
|||
#: templates/logs/sidebar.html:45 |
|||
msgid "Database" |
|||
msgstr "Base de données" |
|||
|
|||
#: templates/logs/sidebar.html:49 |
|||
msgid "Wiring actions" |
|||
msgstr "Actions de câblage" |
|||
|
|||
#: templates/logs/sidebar.html:53 views.py:325 |
|||
msgid "Users" |
|||
msgstr "Utilisateurs" |
|||
|
|||
#: templates/logs/stats_general.html:32 |
|||
msgid "General statistics" |
|||
msgstr "Statistiques générales" |
|||
|
|||
#: templates/logs/stats_models.html:32 |
|||
msgid "Database statistics" |
|||
msgstr "Statistiques sur la base de données" |
|||
|
|||
#: templates/logs/stats_users.html:32 |
|||
msgid "Statistics about users" |
|||
msgstr "Statistiques sur les utilisateurs" |
|||
|
|||
#: views.py:191 |
|||
msgid "Nonexistent revision." |
|||
msgstr "Révision inexistante." |
|||
|
|||
#: views.py:194 |
|||
msgid "The action was deleted." |
|||
msgstr "L'action a été supprimée." |
|||
|
|||
#: views.py:227 |
|||
msgid "Category" |
|||
msgstr "Catégorie" |
|||
|
|||
#: views.py:228 |
|||
msgid "Number of users (members and clubs)" |
|||
msgstr "Nombre d'utilisateurs (adhérents et clubs)" |
|||
|
|||
#: views.py:229 |
|||
msgid "Number of members" |
|||
msgstr "Nombre d'adhérents" |
|||
|
|||
#: views.py:230 |
|||
msgid "Number of clubs" |
|||
msgstr "Nombre de clubs" |
|||
|
|||
#: views.py:234 |
|||
msgid "Activated users" |
|||
msgstr "Utilisateurs activés" |
|||
|
|||
#: views.py:242 |
|||
msgid "Disabled users" |
|||
msgstr "Utilisateurs désactivés" |
|||
|
|||
#: views.py:250 |
|||
msgid "Archived users" |
|||
msgstr "Utilisateurs archivés" |
|||
|
|||
#: views.py:258 |
|||
msgid "Contributing members" |
|||
msgstr "Adhérents cotisants" |
|||
|
|||
#: views.py:264 |
|||
msgid "Users benefiting from a connection" |
|||
msgstr "Utilisateurs bénéficiant d'une connexion" |
|||
|
|||
#: views.py:270 |
|||
msgid "Banned users" |
|||
msgstr "Utilisateurs bannis" |
|||
|
|||
#: views.py:276 |
|||
msgid "Users benefiting from a free connection" |
|||
msgstr "Utilisateurs bénéficiant d'une connexion gratuite" |
|||
|
|||
#: views.py:282 |
|||
msgid "Active interfaces (with access to the network)" |
|||
msgstr "Interfaces actives (ayant accès au réseau)" |
|||
|
|||
#: views.py:292 |
|||
msgid "Active interfaces assigned IPv4" |
|||
msgstr "Interfaces actives assignées IPv4" |
|||
|
|||
#: views.py:305 |
|||
msgid "IP range" |
|||
msgstr "Plage d'IP" |
|||
|
|||
#: views.py:306 |
|||
msgid "VLAN" |
|||
msgstr "VLAN" |
|||
|
|||
#: views.py:307 |
|||
msgid "Total number of IP addresses" |
|||
msgstr "Nombre total d'adresses IP" |
|||
|
|||
#: views.py:308 |
|||
msgid "Number of assigned IP addresses" |
|||
msgstr "Nombre d'adresses IP non assignées" |
|||
|
|||
#: views.py:309 |
|||
msgid "Number of IP address assigned to an activated machine" |
|||
msgstr "Nombre d'adresses IP assignées à une machine activée" |
|||
|
|||
#: views.py:310 |
|||
msgid "Number of nonassigned IP addresses" |
|||
msgstr "Nombre d'adresses IP non assignées" |
|||
|
|||
#: views.py:337 |
|||
msgid "Subscriptions" |
|||
msgstr "Cotisations" |
|||
|
|||
#: views.py:359 views.py:420 |
|||
msgid "Machines" |
|||
msgstr "Machines" |
|||
|
|||
#: views.py:386 |
|||
msgid "Topology" |
|||
msgstr "Topologie" |
|||
|
|||
#: views.py:405 |
|||
msgid "Number of actions" |
|||
msgstr "Nombre d'actions" |
|||
|
|||
#: views.py:419 views.py:437 views.py:442 views.py:447 views.py:462 |
|||
msgid "User" |
|||
msgstr "Utilisateur" |
|||
|
|||
#: views.py:423 |
|||
msgid "Invoice" |
|||
msgstr "Facture" |
|||
|
|||
#: views.py:426 |
|||
msgid "Ban" |
|||
msgstr "Bannissement" |
|||
|
|||
#: views.py:429 |
|||
msgid "Whitelist" |
|||
msgstr "Accès gracieux" |
|||
|
|||
#: views.py:432 |
|||
msgid "Rights" |
|||
msgstr "Droits" |
|||
|
|||
#: views.py:436 |
|||
msgid "School" |
|||
msgstr "Établissement" |
|||
|
|||
#: views.py:441 |
|||
msgid "Payment method" |
|||
msgstr "Moyen de paiement" |
|||
|
|||
#: views.py:446 |
|||
msgid "Bank" |
|||
msgstr "Banque" |
|||
|
|||
#: views.py:463 |
|||
msgid "Action" |
|||
msgstr "Action" |
|||
|
|||
#: views.py:494 |
|||
msgid "No model found." |
|||
msgstr "Aucun modèle trouvé." |
|||
|
|||
#: views.py:500 |
|||
msgid "Nonexistent entry." |
|||
msgstr "Entrée inexistante." |
|||
|
|||
#: views.py:507 |
|||
msgid "You don't have the right to access this menu." |
|||
msgstr "Vous n'avez pas le droit d'accéder à ce menu." |
|||
Binary file not shown.
File diff suppressed because it is too large
@ -0,0 +1,221 @@ |
|||
# -*- coding: utf-8 -*- |
|||
# Generated by Django 1.10.7 on 2018-08-15 17:18 |
|||
from __future__ import unicode_literals |
|||
|
|||
import datetime |
|||
import django.core.validators |
|||
from django.db import migrations, models |
|||
import django.db.models.deletion |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('machines', '0093_auto_20180807_1115'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AlterModelOptions( |
|||
name='dname', |
|||
options={'permissions': (('view_dname', 'Can view a DNAME record object'),), 'verbose_name': 'DNAME record', 'verbose_name_plural': 'DNAME records'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='domain', |
|||
options={'permissions': (('view_domain', 'Can view a domain object'),), 'verbose_name': 'domain', 'verbose_name_plural': 'domains'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='extension', |
|||
options={'permissions': (('view_extension', 'Can view an extension object'), ('use_all_extension', 'Can use all extensions')), 'verbose_name': 'DNS extension', 'verbose_name_plural': 'DNS extensions'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='interface', |
|||
options={'permissions': (('view_interface', 'Can view an interface object'), ('change_interface_machine', 'Can change the owner of an interface')), 'verbose_name': 'interface', 'verbose_name_plural': 'interfaces'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='iplist', |
|||
options={'permissions': (('view_iplist', 'Can view an IPv4 addresses list object'),), 'verbose_name': 'IPv4 addresses list', 'verbose_name_plural': 'IPv4 addresses lists'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='iptype', |
|||
options={'permissions': (('view_iptype', 'Can view an IP type object'), ('use_all_iptype', 'Can use all IP types')), 'verbose_name': 'IP type', 'verbose_name_plural': 'IP types'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='ipv6list', |
|||
options={'permissions': (('view_ipv6list', 'Can view an IPv6 addresses list object'), ('change_ipv6list_slaac_ip', 'Can change the SLAAC value of an IPv6 addresses list')), 'verbose_name': 'IPv6 addresses list', 'verbose_name_plural': 'IPv6 addresses lists'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='machine', |
|||
options={'permissions': (('view_machine', 'Can view a machine object'), ('change_machine_user', 'Can change the user of a machine')), 'verbose_name': 'machine', 'verbose_name_plural': 'machines'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='machinetype', |
|||
options={'permissions': (('view_machinetype', 'Can view a machine type object'), ('use_all_machinetype', 'Can use all machine types')), 'verbose_name': 'machine type', 'verbose_name_plural': 'machine types'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='mx', |
|||
options={'permissions': (('view_mx', 'Can view an MX record object'),), 'verbose_name': 'MX record', 'verbose_name_plural': 'MX records'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='nas', |
|||
options={'permissions': (('view_nas', 'Can view a NAS device object'),), 'verbose_name': 'NAS device', 'verbose_name_plural': 'NAS devices'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='ns', |
|||
options={'permissions': (('view_ns', 'Can view an NS record object'),), 'verbose_name': 'NS record', 'verbose_name_plural': 'NS records'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='ouvertureport', |
|||
options={'verbose_name': 'ports openings'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='ouvertureportlist', |
|||
options={'permissions': (('view_ouvertureportlist', 'Can view a ports opening list object'),), 'verbose_name': 'ports opening list', 'verbose_name_plural': 'ports opening lists'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='role', |
|||
options={'permissions': (('view_role', 'Can view a role object'),), 'verbose_name': 'server role', 'verbose_name_plural': 'server roles'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='service', |
|||
options={'permissions': (('view_service', 'Can view a service object'),), 'verbose_name': 'service to generate (DHCP, DNS, ...)', 'verbose_name_plural': 'services to generate (DHCP, DNS, ...)'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='service_link', |
|||
options={'permissions': (('view_service_link', 'Can view a service server link object'),), 'verbose_name': 'link between service and server', 'verbose_name_plural': 'links between service and server'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='soa', |
|||
options={'permissions': (('view_soa', 'Can view an SOA record object'),), 'verbose_name': 'SOA record', 'verbose_name_plural': 'SOA records'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='srv', |
|||
options={'permissions': (('view_srv', 'Can view an SRV record object'),), 'verbose_name': 'SRV record', 'verbose_name_plural': 'SRV records'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='sshfp', |
|||
options={'permissions': (('view_sshfp', 'Can view an SSHFP record object'),), 'verbose_name': 'SSHFP record', 'verbose_name_plural': 'SSHFP records'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='txt', |
|||
options={'permissions': (('view_txt', 'Can view a TXT record object'),), 'verbose_name': 'TXT record', 'verbose_name_plural': 'TXT records'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='vlan', |
|||
options={'permissions': (('view_vlan', 'Can view a VLAN object'),), 'verbose_name': 'VLAN', 'verbose_name_plural': 'VLANs'}, |
|||
), |
|||
migrations.AlterField( |
|||
model_name='domain', |
|||
name='name', |
|||
field=models.CharField(help_text='Mandatory and unique, must not contain dots.', max_length=255), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='extension', |
|||
name='name', |
|||
field=models.CharField(help_text='Zone name, must begin with a dot (.example.org)', max_length=255, unique=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='extension', |
|||
name='origin', |
|||
field=models.ForeignKey(blank=True, help_text='A record associated with the zone', null=True, on_delete=django.db.models.deletion.PROTECT, to='machines.IpList'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='extension', |
|||
name='origin_v6', |
|||
field=models.GenericIPAddressField(blank=True, help_text='AAAA record associated with the zone', null=True, protocol='IPv6'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='iptype', |
|||
name='domaine_ip_netmask', |
|||
field=models.IntegerField(default=24, help_text="Netmask for the domain's IPv4 range", validators=[django.core.validators.MaxValueValidator(31), django.core.validators.MinValueValidator(8)]), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='iptype', |
|||
name='domaine_ip_network', |
|||
field=models.GenericIPAddressField(blank=True, help_text="Network containing the domain's IPv4 range (optional)", null=True, protocol='IPv4'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='iptype', |
|||
name='reverse_v4', |
|||
field=models.BooleanField(default=False, help_text='Enable reverse DNS for IPv4'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='iptype', |
|||
name='reverse_v6', |
|||
field=models.BooleanField(default=False, help_text='Enable reverse DNS for IPv6'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='machine', |
|||
name='name', |
|||
field=models.CharField(blank=True, help_text='Optional', max_length=255, null=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='ouvertureportlist', |
|||
name='name', |
|||
field=models.CharField(help_text='Name of the ports configuration', max_length=255), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='role', |
|||
name='specific_role', |
|||
field=models.CharField(blank=True, choices=[('dhcp-server', 'DHCP server'), ('switch-conf-server', 'Switches configuration server'), ('dns-recursif-server', 'Recursive DNS server'), ('ntp-server', 'NTP server'), ('radius-server', 'RADIUS server'), ('log-server', 'Log server'), ('ldap-master-server', 'LDAP master server'), ('ldap-backup-server', 'LDAP backup server'), ('smtp-server', 'SMTP server'), ('postgresql-server', 'postgreSQL server'), ('mysql-server', 'mySQL server'), ('sql-client', 'SQL client'), ('gateway', 'Gateway')], max_length=32, null=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='service', |
|||
name='min_time_regen', |
|||
field=models.DurationField(default=datetime.timedelta(0, 60), help_text='Minimal time before regeneration of the service.'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='service', |
|||
name='regular_time_regen', |
|||
field=models.DurationField(default=datetime.timedelta(0, 3600), help_text='Maximal time before regeneration of the service.'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='soa', |
|||
name='expire', |
|||
field=models.PositiveIntegerField(default=3600000, help_text='Seconds before the secondary DNS stop answering requests in case of primary DNS timeout'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='soa', |
|||
name='mail', |
|||
field=models.EmailField(help_text='Contact email address for the zone', max_length=254), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='soa', |
|||
name='refresh', |
|||
field=models.PositiveIntegerField(default=86400, help_text='Seconds before the secondary DNS have to ask the primary DNS serial to detect a modification'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='soa', |
|||
name='retry', |
|||
field=models.PositiveIntegerField(default=7200, help_text='Seconds before the secondary DNS ask the serial again in case of a primary DNS timeout'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='soa', |
|||
name='ttl', |
|||
field=models.PositiveIntegerField(default=172800, help_text='Time to Live'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='srv', |
|||
name='port', |
|||
field=models.PositiveIntegerField(help_text='TCP/UDP port', validators=[django.core.validators.MaxValueValidator(65535)]), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='srv', |
|||
name='priority', |
|||
field=models.PositiveIntegerField(default=0, help_text='Priority of the target server (positive integer value, the lower it is, the more the server will be used if available)', validators=[django.core.validators.MaxValueValidator(65535)]), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='srv', |
|||
name='target', |
|||
field=models.ForeignKey(help_text='Target server', on_delete=django.db.models.deletion.PROTECT, to='machines.Domain'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='srv', |
|||
name='ttl', |
|||
field=models.PositiveIntegerField(default=172800, help_text='Time to Live'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='srv', |
|||
name='weight', |
|||
field=models.PositiveIntegerField(default=0, help_text='Relative weight for records with the same priority (integer value between 0 and 65535)', validators=[django.core.validators.MaxValueValidator(65535)]), |
|||
), |
|||
] |
|||
File diff suppressed because it is too large
Binary file not shown.
@ -1,70 +1,609 @@ |
|||
# SOME DESCRIPTIVE TITLE. |
|||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER |
|||
# This file is distributed under the same license as the PACKAGE package. |
|||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. |
|||
# Re2o est un logiciel d'administration développé initiallement au rezometz. Il |
|||
# se veut agnostique au réseau considéré, de manière à être installable en |
|||
# quelques clics. |
|||
# |
|||
#, fuzzy |
|||
# Copyright © 2018 Maël Kervella |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License along |
|||
# with this program; if not, write to the Free Software Foundation, Inc., |
|||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
|||
msgid "" |
|||
msgstr "" |
|||
"Project-Id-Version: PACKAGE VERSION\n" |
|||
"Project-Id-Version: 2.5\n" |
|||
"Report-Msgid-Bugs-To: \n" |
|||
"POT-Creation-Date: 2018-07-26 21:49+0200\n" |
|||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
|||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
|||
"Language: \n" |
|||
"POT-Creation-Date: 2018-08-18 13:26+0200\n" |
|||
"PO-Revision-Date: 2018-06-24 15:54+0200\n" |
|||
"Last-Translator: Laouen Fernet <laouen.fernet@supelec.fr>\n" |
|||
"Language-Team: \n" |
|||
"Language: fr_FR\n" |
|||
"MIME-Version: 1.0\n" |
|||
"Content-Type: text/plain; charset=UTF-8\n" |
|||
"Content-Transfer-Encoding: 8bit\n" |
|||
"Plural-Forms: nplurals=2; plural=(n > 1);\n" |
|||
|
|||
#: models.py:256 |
|||
msgid "Contact email adress" |
|||
msgstr "Adresse email de contact" |
|||
#: acl.py:42 |
|||
msgid "You don't have the right to view this application." |
|||
msgstr "Vous n'avez pas le droit de voir cette application." |
|||
|
|||
#: forms.py:59 templates/preferences/display_preferences.html:41 |
|||
msgid "Telephone number required" |
|||
msgstr "Numéro de téléphone requis" |
|||
|
|||
#: forms.py:61 |
|||
msgid "GPG fingerprint" |
|||
msgstr "Empreinte GPG" |
|||
|
|||
#: forms.py:62 |
|||
msgid "All can create a club" |
|||
msgstr "Tous peuvent créer un club" |
|||
|
|||
#: forms.py:63 |
|||
msgid "All can create a member" |
|||
msgstr "Tous peuvent créer un adhérent" |
|||
|
|||
#: forms.py:64 templates/preferences/display_preferences.html:43 |
|||
msgid "Self registration" |
|||
msgstr "Autoinscription" |
|||
|
|||
#: forms.py:65 |
|||
msgid "Default shell" |
|||
msgstr "Interface système par défaut" |
|||
|
|||
#: forms.py:81 |
|||
msgid "Possibility to set a password per machine" |
|||
msgstr "Possibilité de mettre un mot de passe par machine" |
|||
|
|||
#: forms.py:83 templates/preferences/display_preferences.html:87 |
|||
msgid "Maximum number of interfaces allowed for a standard user" |
|||
msgstr "Nombre maximum d'interfaces autorisé pour un utilisateur standard" |
|||
|
|||
#: forms.py:87 templates/preferences/display_preferences.html:91 |
|||
msgid "Maximum number of DNS aliases allowed for a standard user" |
|||
msgstr "Nombre maximum d'alias DNS autorisé pour un utilisateur standard" |
|||
|
|||
#: forms.py:90 |
|||
msgid "IPv6 mode" |
|||
msgstr "Mode IPv6" |
|||
|
|||
#: forms.py:91 |
|||
msgid "Can create a machine" |
|||
msgstr "Peut créer une machine" |
|||
|
|||
#: forms.py:107 |
|||
msgid "RADIUS general policy" |
|||
msgstr "Politique générale de RADIUS" |
|||
|
|||
#: forms.py:108 templates/preferences/display_preferences.html:116 |
|||
msgid "VLAN for machines accepted by RADIUS" |
|||
msgstr "VLAN pour les machines acceptées par RADIUS" |
|||
|
|||
#: forms.py:110 templates/preferences/display_preferences.html:118 |
|||
msgid "VLAN for machines rejected by RADIUS" |
|||
msgstr "VLAN pour les machines rejetées par RADIUS" |
|||
|
|||
#: forms.py:127 |
|||
msgid "General message" |
|||
msgstr "Message général" |
|||
|
|||
#: forms.py:128 templates/preferences/display_preferences.html:137 |
|||
msgid "Number of results displayed when searching" |
|||
msgstr "Nombre de résultats affichés lors de la recherche" |
|||
|
|||
#: forms.py:131 |
|||
msgid "Number of items per page, standard size (e.g. users)" |
|||
msgstr "Nombre d'éléments par page, taille standard (ex : utilisateurs)" |
|||
|
|||
#: forms.py:134 |
|||
msgid "Number of items per page, large size (e.g. machines)" |
|||
msgstr "Nombre d'éléments par page, taille importante (ex : machines)" |
|||
|
|||
#: forms.py:137 templates/preferences/display_preferences.html:145 |
|||
msgid "Time before expiration of the reset password link (in hours)" |
|||
msgstr "" |
|||
"Temps avant expiration du lien de réinitialisation de mot de passe (en " |
|||
"heures)" |
|||
|
|||
#: forms.py:140 templates/preferences/display_preferences.html:131 |
|||
msgid "Website name" |
|||
msgstr "Nom du site" |
|||
|
|||
#: forms.py:141 templates/preferences/display_preferences.html:133 |
|||
msgid "Email address for automatic emailing" |
|||
msgstr "Adresse mail pour les mails automatiques" |
|||
|
|||
#: forms.py:143 templates/preferences/display_preferences.html:151 |
|||
msgid "Summary of the General Terms of Use" |
|||
msgstr "Résumé des Conditions Générales d'Utilisation" |
|||
|
|||
#: forms.py:145 templates/preferences/display_preferences.html:155 |
|||
msgid "General Terms of Use" |
|||
msgstr "Conditions Générales d'Utilisation" |
|||
|
|||
#: forms.py:161 |
|||
msgid "Organisation name" |
|||
msgstr "Nom de l'association" |
|||
|
|||
#: forms.py:162 templates/preferences/display_preferences.html:170 |
|||
msgid "SIRET number" |
|||
msgstr "Numéro SIRET" |
|||
|
|||
#: forms.py:163 |
|||
msgid "Address (line 1)" |
|||
msgstr "Adresse (ligne 1)" |
|||
|
|||
#: forms.py:164 |
|||
msgid "Address (line 2)" |
|||
msgstr "Adresse (ligne 2)" |
|||
|
|||
#: forms.py:165 models.py:288 |
|||
#: templates/preferences/display_preferences.html:178 |
|||
msgid "Contact email address" |
|||
msgstr "Adresse mail de contact" |
|||
|
|||
#: forms.py:166 templates/preferences/display_preferences.html:182 |
|||
msgid "Telephone number" |
|||
msgstr "Numéro de téléphone" |
|||
|
|||
#: forms.py:167 templates/preferences/display_preferences.html:184 |
|||
msgid "Usual name" |
|||
msgstr "Nom d'usage" |
|||
|
|||
#: forms.py:168 |
|||
msgid "Account used for editing from /admin" |
|||
msgstr "Compte utilisé pour les modifications depuis /admin" |
|||
|
|||
#: forms.py:170 |
|||
msgid "Payment" |
|||
msgstr "Paiement" |
|||
|
|||
#: forms.py:171 |
|||
msgid "Payment ID" |
|||
msgstr "ID de paiement" |
|||
|
|||
#: forms.py:172 |
|||
msgid "Payment password" |
|||
msgstr "Mot de passe de paiement" |
|||
|
|||
#: forms.py:173 forms.py:224 templates/preferences/aff_service.html:33 |
|||
msgid "Description" |
|||
msgstr "Description" |
|||
|
|||
#: forms.py:189 |
|||
msgid "Message for the French welcome email" |
|||
msgstr "Message pour le mail de bienvenue en français" |
|||
|
|||
#: forms.py:191 |
|||
msgid "Message for the English welcome email" |
|||
msgstr "Message pour le mail de bienvenue en anglais" |
|||
|
|||
#: forms.py:208 |
|||
msgid "Facebook URL" |
|||
msgstr "URL du compte Facebook" |
|||
|
|||
#: forms.py:209 |
|||
msgid "Twitter URL" |
|||
msgstr "URL du compte Twitter" |
|||
|
|||
#: forms.py:210 templates/preferences/display_preferences.html:233 |
|||
msgid "Twitter account name" |
|||
msgstr "Nom du compte Twitter" |
|||
|
|||
#: forms.py:222 templates/preferences/aff_service.html:31 |
|||
#: templates/preferences/display_preferences.html:168 |
|||
msgid "Name" |
|||
msgstr "Nom" |
|||
|
|||
#: forms.py:223 templates/preferences/aff_service.html:32 |
|||
msgid "URL" |
|||
msgstr "URL" |
|||
|
|||
#: forms.py:225 templates/preferences/aff_service.html:34 |
|||
msgid "Image" |
|||
msgstr "Image" |
|||
|
|||
#: forms.py:232 |
|||
msgid "Current services" |
|||
msgstr "Services actuels" |
|||
|
|||
#: models.py:71 |
|||
msgid "Users can create a club" |
|||
msgstr "Les utilisateurs peuvent créer un club" |
|||
|
|||
#: models.py:75 |
|||
msgid "Users can create a member" |
|||
msgstr "Les utilisateurs peuvent créer un adhérent" |
|||
|
|||
#: models.py:79 |
|||
msgid "A new user can create their account on Re2o" |
|||
msgstr "Un nouvel utilisateur peut créer son compte sur Re2o" |
|||
|
|||
#: models.py:89 templates/preferences/display_preferences.html:49 |
|||
msgid "Users can edit their shell" |
|||
msgstr "Les utilisateurs peuvent modifier leur interface système" |
|||
|
|||
#: models.py:93 |
|||
msgid "Enable local email accounts for users" |
|||
msgstr "Active les comptes mail locaux pour les utilisateurs" |
|||
|
|||
#: models.py:98 |
|||
msgid "Domain to use for local email accounts" |
|||
msgstr "Domaine à utiliser pour les comptes mail locaux" |
|||
|
|||
#: models.py:102 |
|||
msgid "Maximum number of local email addresses for a standard user" |
|||
msgstr "" |
|||
"Nombre maximum d'adresses mail locales autorisé pour un utilisateur standard" |
|||
|
|||
#: models.py:108 |
|||
msgid "Can view the user options" |
|||
msgstr "Peut voir les options d'utilisateur" |
|||
|
|||
#: models.py:110 |
|||
msgid "user options" |
|||
msgstr "options d'utilisateur" |
|||
|
|||
#: models.py:117 |
|||
msgid "Email domain must begin with @" |
|||
msgstr "Un domaine mail doit commencer par @" |
|||
|
|||
#: models.py:135 |
|||
msgid "Autoconfiguration by RA" |
|||
msgstr "Configuration automatique par RA" |
|||
|
|||
#: models.py:136 |
|||
msgid "IP addresses assigning by DHCPv6" |
|||
msgstr "Attribution d'adresses IP par DHCPv6" |
|||
|
|||
#: models.py:137 |
|||
msgid "Disabled" |
|||
msgstr "Désactivé" |
|||
|
|||
#: models.py:159 |
|||
msgid "Can view the machine options" |
|||
msgstr "Peut voir les options de machine" |
|||
|
|||
#: models.py:161 |
|||
msgid "machine options" |
|||
msgstr "options de machine" |
|||
|
|||
#: models.py:180 |
|||
msgid "On the IP range's VLAN of the machine" |
|||
msgstr "Sur le VLAN de la plage d'IP de la machine" |
|||
|
|||
#: models.py:181 |
|||
msgid "Preset in 'VLAN for machines accepted by RADIUS'" |
|||
msgstr "Prédéfinie dans 'VLAN pour les machines acceptées par RADIUS'" |
|||
|
|||
#: models.py:206 |
|||
msgid "Can view the topology options" |
|||
msgstr "Peut voir les options de topologie" |
|||
|
|||
#: models.py:208 |
|||
msgid "topology options" |
|||
msgstr "options de topologie" |
|||
|
|||
#: models.py:225 |
|||
msgid "" |
|||
"General message displayed on the French version of the website (e.g. in case " |
|||
"of maintenance)" |
|||
msgstr "" |
|||
"Message général affiché sur la version française du site (ex : en cas de " |
|||
"maintenance)" |
|||
|
|||
#: models.py:263 |
|||
msgid "Description of the associated email adress." |
|||
#: models.py:231 |
|||
msgid "" |
|||
"General message displayed on the English version of the website (e.g. in " |
|||
"case of maintenance)" |
|||
msgstr "" |
|||
"Message général affiché sur la version anglaise du site (ex : en cas de " |
|||
"maintenance)" |
|||
|
|||
#: models.py:253 |
|||
msgid "Can view the general options" |
|||
msgstr "Peut voir les options générales" |
|||
|
|||
#: models.py:255 |
|||
msgid "general options" |
|||
msgstr "options générales" |
|||
|
|||
#: models.py:275 |
|||
msgid "Can view the service options" |
|||
msgstr "Peut voir les options de service" |
|||
|
|||
#: models.py:277 |
|||
msgid "service" |
|||
msgstr "service" |
|||
|
|||
#: models.py:278 |
|||
msgid "services" |
|||
msgstr "services" |
|||
|
|||
#: models.py:295 |
|||
msgid "Description of the associated email address." |
|||
msgstr "Description de l'adresse mail associée." |
|||
|
|||
#: models.py:273 |
|||
msgid "Can see contact email" |
|||
msgstr "Peut voir un mail de contact" |
|||
#: models.py:305 |
|||
msgid "Can view a contact email address object" |
|||
msgstr "Peut voir un objet adresse mail de contact" |
|||
|
|||
#: templates/preferences/aff_mailcontact.html:30 |
|||
msgid "Adress" |
|||
msgstr "Adresse" |
|||
#: models.py:307 |
|||
msgid "contact email address" |
|||
msgstr "adresse mail de contact" |
|||
|
|||
#: models.py:308 |
|||
msgid "contact email addresses" |
|||
msgstr "adresses mail de contact" |
|||
|
|||
#: models.py:318 |
|||
msgid "Networking organisation school Something" |
|||
msgstr "Association de réseau de l'école Machin" |
|||
|
|||
#: models.py:322 |
|||
msgid "Threadneedle Street" |
|||
msgstr "1 rue de la Vrillière" |
|||
|
|||
#: models.py:323 |
|||
msgid "London EC2R 8AH" |
|||
msgstr "75001 Paris" |
|||
|
|||
#: models.py:326 |
|||
msgid "Organisation" |
|||
msgstr "Association" |
|||
|
|||
#: models.py:340 |
|||
msgid "Can view the organisation options" |
|||
msgstr "Peut voir les options d'association" |
|||
|
|||
#: models.py:342 |
|||
msgid "organisation options" |
|||
msgstr "options d'association" |
|||
|
|||
#: models.py:371 |
|||
msgid "Can view the homepage options" |
|||
msgstr "Peut voir les options de page d'accueil" |
|||
|
|||
#: models.py:373 |
|||
msgid "homepage options" |
|||
msgstr "options de page d'accueil" |
|||
|
|||
#: models.py:391 |
|||
msgid "Can view the email message options" |
|||
msgstr "Peut voir les options de message pour les mails" |
|||
|
|||
#: models.py:394 |
|||
msgid "email message options" |
|||
msgstr "options de messages pour les mails" |
|||
|
|||
#: templates/preferences/aff_mailcontact.html:31 |
|||
msgid "Remark" |
|||
#: templates/preferences/display_preferences.html:174 |
|||
msgid "Address" |
|||
msgstr "Adresse" |
|||
|
|||
#: templates/preferences/aff_mailcontact.html:32 |
|||
msgid "Comment" |
|||
msgstr "Commentaire" |
|||
|
|||
#: templates/preferences/display_preferences.html:205 |
|||
msgid "Contact email adresses list" |
|||
msgstr "Liste des adresses email de contact" |
|||
#: templates/preferences/display_preferences.html:31 |
|||
#: templates/preferences/edit_preferences.html:30 |
|||
#: templates/preferences/preferences.html:29 |
|||
msgid "Preferences" |
|||
msgstr "Préférences" |
|||
|
|||
#: templates/preferences/display_preferences.html:34 |
|||
msgid "User preferences" |
|||
msgstr "Préférences d'utilisateur" |
|||
|
|||
#: templates/preferences/display_preferences.html:37 |
|||
#: templates/preferences/display_preferences.html:79 |
|||
#: templates/preferences/display_preferences.html:104 |
|||
#: templates/preferences/display_preferences.html:125 |
|||
#: templates/preferences/display_preferences.html:162 |
|||
#: templates/preferences/display_preferences.html:197 |
|||
#: templates/preferences/display_preferences.html:219 |
|||
#: templates/preferences/edit_preferences.html:40 views.py:170 views.py:234 |
|||
msgid "Edit" |
|||
msgstr "Modifier" |
|||
|
|||
#: templates/preferences/display_preferences.html:47 |
|||
msgid "Default shell for users" |
|||
msgstr "Interface système par défaut pour les utilisateurs" |
|||
|
|||
#: templates/preferences/display_preferences.html:53 |
|||
msgid "Creation of members by everyone" |
|||
msgstr "Création d'adhérents par tous" |
|||
|
|||
#: templates/preferences/display_preferences.html:55 |
|||
msgid "Creation of clubs by everyone" |
|||
msgstr "Création de clubs par tous" |
|||
|
|||
#: templates/preferences/display_preferences.html:59 |
|||
msgid "GPG fingerprint field" |
|||
msgstr "Champ empreinte GPG" |
|||
|
|||
#: templates/preferences/display_preferences.html:63 |
|||
msgid "Email accounts preferences" |
|||
msgstr "Préférences de comptes mail" |
|||
|
|||
#: templates/preferences/display_preferences.html:66 |
|||
msgid "Local email accounts enabled" |
|||
msgstr "Comptes mail locaux activés" |
|||
|
|||
#: templates/preferences/display_preferences.html:68 |
|||
msgid "Local email domain" |
|||
msgstr "Domaine de mail local" |
|||
|
|||
#: templates/preferences/display_preferences.html:72 |
|||
msgid "Maximum number of email aliases allowed" |
|||
msgstr "Nombre maximum d'alias mail autorisé pour un utilisateur standard" |
|||
|
|||
#: templates/preferences/display_preferences.html:76 |
|||
msgid "Machines preferences" |
|||
msgstr "Préférences de machines" |
|||
|
|||
#: templates/preferences/display_preferences.html:85 |
|||
msgid "Password per machine" |
|||
msgstr "Mot de passe par machine" |
|||
|
|||
#: templates/preferences/display_preferences.html:93 |
|||
msgid "IPv6 support" |
|||
msgstr "Support de l'IPv6" |
|||
|
|||
#: templates/preferences/display_preferences.html:97 |
|||
msgid "Creation of machines" |
|||
msgstr "Création de machines" |
|||
|
|||
#: templates/preferences/display_preferences.html:101 |
|||
msgid "Topology preferences" |
|||
msgstr "Préférences de topologie" |
|||
|
|||
#: templates/preferences/display_preferences.html:110 |
|||
msgid "General policy for VLAN setting" |
|||
msgstr "Politique générale pour le placement sur un VLAN" |
|||
|
|||
#: templates/preferences/display_preferences.html:112 |
|||
msgid "" |
|||
"This setting defines the VLAN policy after acceptance by RADIUS: either on " |
|||
"the IP range's VLAN of the machine, or a VLAN preset in 'VLAN for machines " |
|||
"accepted by RADIUS'" |
|||
msgstr "" |
|||
"Ce réglage définit la politique de placement sur un VLAN après acceptation " |
|||
"par RADIUS: soit sur le VLAN de la plage d'IP de la machine, soit sur le " |
|||
"VLAN prédéfini dans 'VLAN pour les machines acceptées par RADIUS'" |
|||
|
|||
#: templates/preferences/display_preferences.html:122 |
|||
msgid "General preferences" |
|||
msgstr "Préférences générales" |
|||
|
|||
#: templates/preferences/display_preferences.html:139 |
|||
msgid "Number of items per page (standard size)" |
|||
msgstr "Nombre d'éléments par page (taille standard)" |
|||
|
|||
#: templates/preferences/display_preferences.html:143 |
|||
msgid "Number of items per page (large size)" |
|||
msgstr "Nombre d'éléments par page (taille importante)" |
|||
|
|||
#: templates/preferences/display_preferences.html:149 |
|||
msgid "General message displayed on the website" |
|||
msgstr "Message général affiché sur le site" |
|||
|
|||
#: templates/preferences/display_preferences.html:159 |
|||
msgid "Information about the organisation" |
|||
msgstr "Informations sur l'association" |
|||
|
|||
#: templates/preferences/display_preferences.html:188 |
|||
msgid "User object of the organisation" |
|||
msgstr "Objet utilisateur de l'association" |
|||
|
|||
#: templates/preferences/display_preferences.html:190 |
|||
msgid "Description of the organisation" |
|||
msgstr "Description de l'association" |
|||
|
|||
#: templates/preferences/display_preferences.html:194 |
|||
msgid "Custom email message" |
|||
msgstr "Message personnalisé pour les mails" |
|||
|
|||
#: templates/preferences/display_preferences.html:203 |
|||
msgid "Welcome email (in French)" |
|||
msgstr "Mail de bienvenue (en français)" |
|||
|
|||
#: templates/preferences/display_preferences.html:207 |
|||
msgid "Add an adress" |
|||
msgid "Welcome email (in English)" |
|||
msgstr "Mail de bienvenue (en anglais)" |
|||
|
|||
#: templates/preferences/display_preferences.html:211 |
|||
msgid "List of services and homepage preferences" |
|||
msgstr "Liste des services et préférences de page d'accueil" |
|||
|
|||
#: templates/preferences/display_preferences.html:213 |
|||
msgid " Add a service" |
|||
msgstr " Ajouter un service" |
|||
|
|||
#: templates/preferences/display_preferences.html:215 |
|||
msgid " Delete one or several services" |
|||
msgstr " Supprimer un ou plusieurs services" |
|||
|
|||
#: templates/preferences/display_preferences.html:221 |
|||
msgid "List of contact email addresses" |
|||
msgstr "Liste des adresses mail de contact" |
|||
|
|||
#: templates/preferences/display_preferences.html:223 |
|||
msgid "Add an address" |
|||
msgstr "Ajouter une adresse" |
|||
|
|||
#: templates/preferences/display_preferences.html:209 |
|||
msgid "Delete one or multiple adresses" |
|||
msgstr "Supprimer une ou plusieurs adresses" |
|||
#: templates/preferences/display_preferences.html:225 |
|||
msgid "Delete one or several addresses" |
|||
msgstr " Supprimer une ou plusieurs adresses" |
|||
|
|||
#: views.py:210 |
|||
msgid "The adress was created." |
|||
msgstr "L'adresse a été créée." |
|||
#: templates/preferences/display_preferences.html:231 |
|||
msgid "Twitter account URL" |
|||
msgstr "URL du compte Twitter" |
|||
|
|||
#: views.py:230 |
|||
msgid "Email adress updated." |
|||
msgstr "L'adresse email a été mise à jour." |
|||
#: templates/preferences/display_preferences.html:237 |
|||
msgid "Facebook account URL" |
|||
msgstr "URL du compte Facebook" |
|||
|
|||
#: views.py:233 |
|||
msgid "Edit" |
|||
msgstr "Éditer" |
|||
#: templates/preferences/edit_preferences.html:35 |
|||
msgid "Editing of preferences" |
|||
msgstr "Modification des préférences" |
|||
|
|||
#: views.py:98 |
|||
msgid "Unknown object" |
|||
msgstr "Objet inconnu" |
|||
|
|||
#: views.py:104 |
|||
msgid "You don't have the right to edit this option." |
|||
msgstr "Vous n'avez pas le droit de modifier cette option." |
|||
|
|||
#: views.py:121 |
|||
msgid "The preferences were edited." |
|||
msgstr "Les préférences ont été modifiées." |
|||
|
|||
#: views.py:140 |
|||
msgid "The service was added." |
|||
msgstr "Le service a été ajouté." |
|||
|
|||
#: views.py:251 |
|||
msgid "The email adress was deleted." |
|||
msgstr "L'adresse email a été supprimée." |
|||
#: views.py:143 |
|||
msgid "Add a service" |
|||
msgstr " Ajouter un service" |
|||
|
|||
#: views.py:254 |
|||
#: views.py:167 |
|||
msgid "The service was edited." |
|||
msgstr "Le service a été modifié." |
|||
|
|||
#: views.py:188 |
|||
msgid "The service was deleted." |
|||
msgstr "Le service a été supprimé." |
|||
|
|||
#: views.py:190 |
|||
#, python-format |
|||
msgid "Error: the service %s can't be deleted." |
|||
msgstr "Erreur : le service %s ne peut pas être supprimé." |
|||
|
|||
#: views.py:194 views.py:256 |
|||
msgid "Delete" |
|||
msgstr "Supprimer" |
|||
|
|||
#: views.py:210 |
|||
msgid "The contact email address was created." |
|||
msgstr "L'adresse mail de contact a été supprimée." |
|||
|
|||
#: views.py:214 |
|||
msgid "Add a contact email address" |
|||
msgstr "Ajouter une adresse mail de contact" |
|||
|
|||
#: views.py:231 |
|||
msgid "The contact email address was edited." |
|||
msgstr "L'adresse mail de contact a été modifiée." |
|||
|
|||
#: views.py:253 |
|||
msgid "The contact email adress was deleted." |
|||
msgstr "L'adresse mail de contact a été supprimée." |
|||
|
|||
@ -0,0 +1,146 @@ |
|||
# -*- coding: utf-8 -*- |
|||
# Generated by Django 1.10.7 on 2018-08-18 11:29 |
|||
from __future__ import unicode_literals |
|||
|
|||
from django.db import migrations, models |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('preferences', '0049_optionaluser_self_change_shell'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AlterModelOptions( |
|||
name='assooption', |
|||
options={'permissions': (('view_assooption', 'Can view the organisation options'),), 'verbose_name': 'organisation options'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='generaloption', |
|||
options={'permissions': (('view_generaloption', 'Can view the general options'),), 'verbose_name': 'general options'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='homeoption', |
|||
options={'permissions': (('view_homeoption', 'Can view the homepage options'),), 'verbose_name': 'homepage options'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='mailcontact', |
|||
options={'permissions': (('view_mailcontact', 'Can view a contact email address object'),), 'verbose_name': 'contact email address', 'verbose_name_plural': 'contact email addresses'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='mailmessageoption', |
|||
options={'permissions': (('view_mailmessageoption', 'Can view the email message options'),), 'verbose_name': 'email message options'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='optionalmachine', |
|||
options={'permissions': (('view_optionalmachine', 'Can view the machine options'),), 'verbose_name': 'machine options'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='optionaltopologie', |
|||
options={'permissions': (('view_optionaltopologie', 'Can view the topology options'),), 'verbose_name': 'topology options'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='optionaluser', |
|||
options={'permissions': (('view_optionaluser', 'Can view the user options'),), 'verbose_name': 'user options'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='service', |
|||
options={'permissions': (('view_service', 'Can view the service options'),), 'verbose_name': 'service', 'verbose_name_plural': 'services'}, |
|||
), |
|||
migrations.AlterField( |
|||
model_name='assooption', |
|||
name='adresse1', |
|||
field=models.CharField(default='Threadneedle Street', max_length=128), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='assooption', |
|||
name='adresse2', |
|||
field=models.CharField(default='London EC2R 8AH', max_length=128), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='assooption', |
|||
name='name', |
|||
field=models.CharField(default='Networking organisation school Something', max_length=256), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='assooption', |
|||
name='pseudo', |
|||
field=models.CharField(default='Organisation', max_length=32), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generaloption', |
|||
name='general_message_en', |
|||
field=models.TextField(blank=True, default='', help_text='General message displayed on the English version of the website (e.g. in case of maintenance)'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generaloption', |
|||
name='general_message_fr', |
|||
field=models.TextField(blank=True, default='', help_text='General message displayed on the French version of the website (e.g. in case of maintenance)'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='homeoption', |
|||
name='facebook_url', |
|||
field=models.URLField(blank=True, null=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='homeoption', |
|||
name='twitter_account_name', |
|||
field=models.CharField(blank=True, max_length=32, null=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='homeoption', |
|||
name='twitter_url', |
|||
field=models.URLField(blank=True, null=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='mailcontact', |
|||
name='address', |
|||
field=models.EmailField(default='contact@example.org', help_text='Contact email address', max_length=254), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='mailcontact', |
|||
name='commentary', |
|||
field=models.CharField(blank=True, help_text='Description of the associated email address.', max_length=256, null=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionalmachine', |
|||
name='create_machine', |
|||
field=models.BooleanField(default=True), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionalmachine', |
|||
name='ipv6_mode', |
|||
field=models.CharField(choices=[('SLAAC', 'Autoconfiguration by RA'), ('DHCPV6', 'IP addresses assigning by DHCPv6'), ('DISABLED', 'Disabled')], default='DISABLED', max_length=32), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionaltopologie', |
|||
name='radius_general_policy', |
|||
field=models.CharField(choices=[('MACHINE', "On the IP range's VLAN of the machine"), ('DEFINED', "Preset in 'VLAN for machines accepted by RADIUS'")], default='DEFINED', max_length=32), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionaluser', |
|||
name='all_can_create_adherent', |
|||
field=models.BooleanField(default=False, help_text='Users can create a member'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionaluser', |
|||
name='all_can_create_club', |
|||
field=models.BooleanField(default=False, help_text='Users can create a club'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionaluser', |
|||
name='max_email_address', |
|||
field=models.IntegerField(default=15, help_text='Maximum number of local email addresses for a standard user'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionaluser', |
|||
name='self_adhesion', |
|||
field=models.BooleanField(default=False, help_text='A new user can create their account on Re2o'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='optionaluser', |
|||
name='self_change_shell', |
|||
field=models.BooleanField(default=False, help_text='Users can edit their shell'), |
|||
), |
|||
] |
|||
Binary file not shown.
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue