start admin internationalisation

This commit is contained in:
Valentin Samir 2015-05-27 22:56:20 +02:00
parent 54e4314305
commit f0de5f738b
3 changed files with 287 additions and 54 deletions

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: cas_server\n" "Project-Id-Version: cas_server\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-23 19:01+0200\n" "POT-Creation-Date: 2015-05-27 22:56+0200\n"
"PO-Revision-Date: 2015-05-23 19:03+0100\n" "PO-Revision-Date: 2015-05-23 19:03+0100\n"
"Last-Translator: Valentin Samir <valentin.samir@crans.org>\n" "Last-Translator: Valentin Samir <valentin.samir@crans.org>\n"
"Language-Team: django <LL@li.org>\n" "Language-Team: django <LL@li.org>\n"
@ -17,28 +17,133 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.6.10\n" "X-Generator: Poedit 1.6.10\n"
#: forms.py:10 #: forms.py:22
msgid "login" msgid "login"
msgstr "username" msgstr "username"
#: forms.py:12 #: forms.py:24
msgid "password" msgid "password"
msgstr "password" msgstr "password"
#: forms.py:14 #: forms.py:26
msgid "warn" msgid "warn"
msgstr " Warn me before logging me into other sites." msgstr " Warn me before logging me into other sites."
#: forms.py:32 #: forms.py:46
msgid "Bad user" msgid "Bad user"
msgstr "The credentials you provided cannot be determined to be authentic." msgstr "The credentials you provided cannot be determined to be authentic."
#: models.py:57 #: models.py:89
#, python-format #, fuzzy, python-format
msgid "Error during service logout %s" #| msgid "Error during service logout %s"
msgid "Error during service logout %r"
msgstr "Error during service logout %s" msgstr "Error during service logout %s"
#: models.py:189 #: models.py:147
msgid "position"
msgstr ""
#: models.py:154 models.py:239
msgid "name"
msgstr ""
#: models.py:155
#, fuzzy
#| msgid "Connect to the service"
msgid "A name for the service"
msgstr "Connect to the service"
#: models.py:160 models.py:266 models.py:283
msgid "pattern"
msgstr ""
#: models.py:166
msgid "user field"
msgstr ""
#: models.py:167
msgid "Name of the attribut to transmit as username, empty = login"
msgstr ""
#: models.py:171
msgid "restrict username"
msgstr ""
#: models.py:172
msgid "Limit username allowed to connect to the list provided bellow"
msgstr ""
#: models.py:176
msgid "proxy"
msgstr ""
#: models.py:177
msgid ""
"A ProxyGrantingTicket can be delivered to the service in order to "
"authenticate for the user on a backend service"
msgstr ""
#: models.py:182
msgid "single sign out"
msgstr ""
#: models.py:183
#, fuzzy
#| msgid "Connect to the service"
msgid "Enable SSO for the service"
msgstr "Connect to the service"
#: models.py:225
msgid "username"
msgstr ""
#: models.py:226
#, fuzzy
#| msgid "Connect to the service"
msgid "username allowed to connect to the service"
msgstr "Connect to the service"
#: models.py:240
#, fuzzy
#| msgid "The attribut %(field)s is needed to use that service"
msgid "name of an attribut to send to the service"
msgstr "The attribut %(field)s is needed to use that service"
#: models.py:245 models.py:289
msgid "replace"
msgstr ""
#: models.py:246
msgid ""
"name under which the attribut will be showto the service. empty = default "
"name of the attribut"
msgstr ""
#: models.py:261 models.py:278
msgid "attribut"
msgstr ""
#: models.py:262
msgid "Name of the attribut which must verify pattern"
msgstr ""
#: models.py:267
msgid "a regular expression"
msgstr ""
#: models.py:279
msgid "Name of the attribut for which the value must be replace"
msgstr ""
#: models.py:284
msgid "An regular expression maching whats need to be replaced"
msgstr ""
#: models.py:290
msgid "replace expression, groups are capture by \\1, \\2 …"
msgstr ""
#: models.py:337
#, python-format #, python-format
msgid "" msgid ""
"Error during service logout %(service)s:\n" "Error during service logout %(service)s:\n"
@ -71,45 +176,45 @@ msgstr "Login"
msgid "Connect to the service" msgid "Connect to the service"
msgstr "Connect to the service" msgstr "Connect to the service"
#: views.py:76 #: views.py:116
#, python-format #, python-format
msgid "Authentication has been required by service %(name)s (%(url)s)" msgid "Authentication has been required by service %(name)s (%(url)s)"
msgstr "Authentication has been required by service %(name)s (%(url)s)" msgstr "Authentication has been required by service %(name)s (%(url)s)"
#: views.py:81 #: views.py:135
#, python-format #, python-format
msgid "Service %(url)s non allowed." msgid "Service %(url)s non allowed."
msgstr "Service %(url)s non allowed." msgstr "Service %(url)s non allowed."
#: views.py:83 #: views.py:141
msgid "Username non allowed" msgid "Username non allowed"
msgstr "Username non allowed" msgstr "Username non allowed"
#: views.py:85 #: views.py:147
msgid "User charateristics non allowed" msgid "User charateristics non allowed"
msgstr "User charateristics non allowed" msgstr "User charateristics non allowed"
#: views.py:87 #: views.py:153
#, python-format #, python-format
msgid "The attribut %(field)s is needed to use that service" msgid "The attribut %(field)s is needed to use that service"
msgstr "The attribut %(field)s is needed to use that service" msgstr "The attribut %(field)s is needed to use that service"
#: views.py:103 #: views.py:174
#, python-format #, python-format
msgid "Authentication renewal required by service %(name)s (%(url)s)." msgid "Authentication renewal required by service %(name)s (%(url)s)."
msgstr "Authentication renewal required by service %(name)s (%(url)s)." msgstr "Authentication renewal required by service %(name)s (%(url)s)."
#: views.py:105 #: views.py:181
#, python-format #, python-format
msgid "Authentication required by service %(name)s (%(url)s)." msgid "Authentication required by service %(name)s (%(url)s)."
msgstr "Authentication required by service %(name)s (%(url)s)." msgstr "Authentication required by service %(name)s (%(url)s)."
#: views.py:107 #: views.py:188
#, python-format #, python-format
msgid "Service %s non allowed" msgid "Service %s non allowed"
msgstr "Service %s non allowed" msgstr "Service %s non allowed"
#: views.py:123 #: views.py:206
msgid "Successfully logout" msgid "Successfully logout"
msgstr "" msgstr ""
"<h3>Logout successful</h3>You have successfully logged out of the Central " "<h3>Logout successful</h3>You have successfully logged out of the Central "

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: cas_server\n" "Project-Id-Version: cas_server\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-23 19:01+0200\n" "POT-Creation-Date: 2015-05-27 22:56+0200\n"
"PO-Revision-Date: 2015-05-23 19:02+0100\n" "PO-Revision-Date: 2015-05-23 19:02+0100\n"
"Last-Translator: Valentin Samir <valentin.samir@crans.org>\n" "Last-Translator: Valentin Samir <valentin.samir@crans.org>\n"
"Language-Team: django <LL@li.org>\n" "Language-Team: django <LL@li.org>\n"
@ -18,28 +18,133 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.6.10\n" "X-Generator: Poedit 1.6.10\n"
#: forms.py:10 #: forms.py:22
msgid "login" msgid "login"
msgstr "Identifiant" msgstr "Identifiant"
#: forms.py:12 #: forms.py:24
msgid "password" msgid "password"
msgstr "mot de passe" msgstr "mot de passe"
#: forms.py:14 #: forms.py:26
msgid "warn" msgid "warn"
msgstr "Prévenez-moi avant d'accéder à d'autres services." msgstr "Prévenez-moi avant d'accéder à d'autres services."
#: forms.py:32 #: forms.py:46
msgid "Bad user" msgid "Bad user"
msgstr "Les informations transmises n'ont pas permis de vous authentifier." msgstr "Les informations transmises n'ont pas permis de vous authentifier."
#: models.py:57 #: models.py:89
#, python-format #, fuzzy, python-format
msgid "Error during service logout %s" #| msgid "Error during service logout %s"
msgid "Error during service logout %r"
msgstr "Une erreur est survenue durant la déconnexion du service %s" msgstr "Une erreur est survenue durant la déconnexion du service %s"
#: models.py:189 #: models.py:147
msgid "position"
msgstr ""
#: models.py:154 models.py:239
msgid "name"
msgstr ""
#: models.py:155
#, fuzzy
#| msgid "Connect to the service"
msgid "A name for the service"
msgstr "Se connecter au service"
#: models.py:160 models.py:266 models.py:283
msgid "pattern"
msgstr ""
#: models.py:166
msgid "user field"
msgstr ""
#: models.py:167
msgid "Name of the attribut to transmit as username, empty = login"
msgstr ""
#: models.py:171
msgid "restrict username"
msgstr ""
#: models.py:172
msgid "Limit username allowed to connect to the list provided bellow"
msgstr ""
#: models.py:176
msgid "proxy"
msgstr ""
#: models.py:177
msgid ""
"A ProxyGrantingTicket can be delivered to the service in order to "
"authenticate for the user on a backend service"
msgstr ""
#: models.py:182
msgid "single sign out"
msgstr ""
#: models.py:183
#, fuzzy
#| msgid "Connect to the service"
msgid "Enable SSO for the service"
msgstr "Se connecter au service"
#: models.py:225
msgid "username"
msgstr ""
#: models.py:226
#, fuzzy
#| msgid "Connect to the service"
msgid "username allowed to connect to the service"
msgstr "Se connecter au service"
#: models.py:240
#, fuzzy
#| msgid "The attribut %(field)s is needed to use that service"
msgid "name of an attribut to send to the service"
msgstr "L'attribut %(field)s est nécessaire pour se connecter à ce service"
#: models.py:245 models.py:289
msgid "replace"
msgstr ""
#: models.py:246
msgid ""
"name under which the attribut will be showto the service. empty = default "
"name of the attribut"
msgstr ""
#: models.py:261 models.py:278
msgid "attribut"
msgstr ""
#: models.py:262
msgid "Name of the attribut which must verify pattern"
msgstr ""
#: models.py:267
msgid "a regular expression"
msgstr ""
#: models.py:279
msgid "Name of the attribut for which the value must be replace"
msgstr ""
#: models.py:284
msgid "An regular expression maching whats need to be replaced"
msgstr ""
#: models.py:290
msgid "replace expression, groups are capture by \\1, \\2 …"
msgstr ""
#: models.py:337
#, python-format #, python-format
msgid "" msgid ""
"Error during service logout %(service)s:\n" "Error during service logout %(service)s:\n"
@ -72,47 +177,47 @@ msgstr "Connexion"
msgid "Connect to the service" msgid "Connect to the service"
msgstr "Se connecter au service" msgstr "Se connecter au service"
#: views.py:76 #: views.py:116
#, python-format #, python-format
msgid "Authentication has been required by service %(name)s (%(url)s)" msgid "Authentication has been required by service %(name)s (%(url)s)"
msgstr "" msgstr ""
"Une demande d'authentification a été émise pour le service %(name)s " "Une demande d'authentification a été émise pour le service %(name)s "
"(%(url)s)." "(%(url)s)."
#: views.py:81 #: views.py:135
#, python-format #, python-format
msgid "Service %(url)s non allowed." msgid "Service %(url)s non allowed."
msgstr "le service %(url)s n'est pas autorisé." msgstr "le service %(url)s n'est pas autorisé."
#: views.py:83 #: views.py:141
msgid "Username non allowed" msgid "Username non allowed"
msgstr "Nom d'utilisateur non authorisé" msgstr "Nom d'utilisateur non authorisé"
#: views.py:85 #: views.py:147
msgid "User charateristics non allowed" msgid "User charateristics non allowed"
msgstr "Caractéristique utilisateur non autorisée" msgstr "Caractéristique utilisateur non autorisée"
#: views.py:87 #: views.py:153
#, python-format #, python-format
msgid "The attribut %(field)s is needed to use that service" msgid "The attribut %(field)s is needed to use that service"
msgstr "L'attribut %(field)s est nécessaire pour se connecter à ce service" msgstr "L'attribut %(field)s est nécessaire pour se connecter à ce service"
#: views.py:103 #: views.py:174
#, python-format #, python-format
msgid "Authentication renewal required by service %(name)s (%(url)s)." msgid "Authentication renewal required by service %(name)s (%(url)s)."
msgstr "Demande de réauthentification pour le service %(name)s (%(url)s)." msgstr "Demande de réauthentification pour le service %(name)s (%(url)s)."
#: views.py:105 #: views.py:181
#, python-format #, python-format
msgid "Authentication required by service %(name)s (%(url)s)." msgid "Authentication required by service %(name)s (%(url)s)."
msgstr "Authentification requise par le service %(name)s (%(url)s)." msgstr "Authentification requise par le service %(name)s (%(url)s)."
#: views.py:107 #: views.py:188
#, python-format #, python-format
msgid "Service %s non allowed" msgid "Service %s non allowed"
msgstr "Le service %s n'est pas autorisé" msgstr "Le service %s n'est pas autorisé"
#: views.py:123 #: views.py:206
msgid "Successfully logout" msgid "Successfully logout"
msgstr "" msgstr ""
"<h3>Déconnexion réussie</h3>\n" "<h3>Déconnexion réussie</h3>\n"

View File

@ -16,7 +16,7 @@ from django.conf import settings
from django.db import models from django.db import models
from django.contrib import messages from django.contrib import messages
from picklefield.fields import PickledObjectField from picklefield.fields import PickledObjectField
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext_lazy as _
import re import re
import os import os
@ -142,33 +142,45 @@ class ServicePattern(models.Model):
class Meta: class Meta:
ordering = ("pos", ) ordering = ("pos", )
pos = models.IntegerField(default=100) pos = models.IntegerField(
default=100,
verbose_name=_(u"position")
)
name = models.CharField( name = models.CharField(
max_length=255, max_length=255,
unique=True, unique=True,
blank=True, blank=True,
null=True, null=True,
help_text="Un nom pour le service" verbose_name=_(u"name"),
help_text=_(u"A name for the service")
)
pattern = models.CharField(
max_length=255,
unique=True,
verbose_name=_(u"pattern")
) )
pattern = models.CharField(max_length=255, unique=True)
user_field = models.CharField( user_field = models.CharField(
max_length=255, max_length=255,
default="", default="",
blank=True, blank=True,
help_text="Nom de l'attribut transmit comme username, vide = login" verbose_name=_(u"user field"),
help_text=_("Name of the attribut to transmit as username, empty = login")
) )
restrict_users = models.BooleanField( restrict_users = models.BooleanField(
default=False, default=False,
help_text="Limiter les utilisateur autorisé a se connecté a ce service à celle ci-dessous" verbose_name=_(u"restrict username"),
help_text=_("Limit username allowed to connect to the list provided bellow")
) )
proxy = models.BooleanField( proxy = models.BooleanField(
default=False, default=False,
help_text="Un ProxyGrantingTicket peut être délivré au service pour " \ verbose_name=_(u"proxy"),
"s'authentifier en temps que l'utilisateur sur d'autres services" help_text=_("A ProxyGrantingTicket can be delivered to the service " \
"in order to authenticate for the user on a backend service")
) )
single_sign_out = models.BooleanField( single_sign_out = models.BooleanField(
default=False, default=False,
help_text="Activer le SSO sur le service" verbose_name=_(u"single sign out"),
help_text=_("Enable SSO for the service")
) )
def __unicode__(self): def __unicode__(self):
@ -208,7 +220,11 @@ class ServicePattern(models.Model):
class Username(models.Model): class Username(models.Model):
"""A list of allowed usernames on a service pattern""" """A list of allowed usernames on a service pattern"""
value = models.CharField(max_length=255) value = models.CharField(
max_length=255,
verbose_name=_(u"username"),
help_text=_(u"username allowed to connect to the service")
)
service_pattern = models.ForeignKey(ServicePattern, related_name="usernames") service_pattern = models.ForeignKey(ServicePattern, related_name="usernames")
def __unicode__(self): def __unicode__(self):
@ -220,13 +236,15 @@ class ReplaceAttributName(models.Model):
unique_together = ('name', 'replace', 'service_pattern') unique_together = ('name', 'replace', 'service_pattern')
name = models.CharField( name = models.CharField(
max_length=255, max_length=255,
help_text=u"nom d'un attributs à transmettre au service" verbose_name=_(u"name"),
help_text=_(u"name of an attribut to send to the service")
) )
replace = models.CharField( replace = models.CharField(
max_length=255, max_length=255,
blank=True, blank=True,
help_text=u"nom sous lequel l'attribut sera présenté " \ verbose_name=_(u"replace"),
u"au service. vide = inchangé" help_text=_(u"name under which the attribut will be show" \
u"to the service. empty = default name of the attribut")
) )
service_pattern = models.ForeignKey(ServicePattern, related_name="attributs") service_pattern = models.ForeignKey(ServicePattern, related_name="attributs")
@ -240,11 +258,13 @@ class FilterAttributValue(models.Model):
"""A list of filter on attributs for a service pattern""" """A list of filter on attributs for a service pattern"""
attribut = models.CharField( attribut = models.CharField(
max_length=255, max_length=255,
help_text=u"Nom de l'attribut devant vérifier pattern" verbose_name=_(u"attribut"),
help_text=_(u"Name of the attribut which must verify pattern")
) )
pattern = models.CharField( pattern = models.CharField(
max_length=255, max_length=255,
help_text=u"Une expression régulière" verbose_name=_(u"pattern"),
help_text=_(u"a regular expression")
) )
service_pattern = models.ForeignKey(ServicePattern, related_name="filters") service_pattern = models.ForeignKey(ServicePattern, related_name="filters")
@ -255,16 +275,19 @@ class ReplaceAttributValue(models.Model):
"""Replacement to apply on attributs values for a service pattern""" """Replacement to apply on attributs values for a service pattern"""
attribut = models.CharField( attribut = models.CharField(
max_length=255, max_length=255,
help_text=u"Nom de l'attribut dont la valeur doit être modifié" verbose_name=_(u"attribut"),
help_text=_(u"Name of the attribut for which the value must be replace")
) )
pattern = models.CharField( pattern = models.CharField(
max_length=255, max_length=255,
help_text=u"Une expression régulière de ce qui doit être modifié" verbose_name=_(u"pattern"),
help_text=_(u"An regular expression maching whats need to be replaced")
) )
replace = models.CharField( replace = models.CharField(
max_length=255, max_length=255,
blank=True, blank=True,
help_text=u"Par quoi le remplacer, les groupes sont capturé par \\1, \\2 …" verbose_name=_(u"replace"),
help_text=_(u"replace expression, groups are capture by \\1, \\2 …")
) )
service_pattern = models.ForeignKey(ServicePattern, related_name="replacements") service_pattern = models.ForeignKey(ServicePattern, related_name="replacements")