Remove english "translation" and use full english text in the sources. Update french translation.

This commit is contained in:
Valentin Samir 2016-07-30 01:31:43 +02:00
parent 3d0f2496dd
commit b45f8df09e
9 changed files with 169 additions and 495 deletions

View file

@ -82,7 +82,10 @@ class FederateSelect(BootsrapForm):
#: A checkbox to remember the user choices of :attr:`provider<FederateSelect.provider>` #: A checkbox to remember the user choices of :attr:`provider<FederateSelect.provider>`
remember = forms.BooleanField(label=_('Remember the identity provider'), required=False) remember = forms.BooleanField(label=_('Remember the identity provider'), required=False)
#: A checkbox to ask to be warn before emiting a ticket for another service #: A checkbox to ask to be warn before emiting a ticket for another service
warn = forms.BooleanField(label=_('warn'), required=False) warn = forms.BooleanField(
label=_('Warn me before logging me into other sites.'),
required=False
)
#: Is the service asking the authentication renewal ? #: Is the service asking the authentication renewal ?
renew = forms.BooleanField(widget=forms.HiddenInput(), required=False) renew = forms.BooleanField(widget=forms.HiddenInput(), required=False)
@ -94,7 +97,7 @@ class UserCredential(BootsrapForm):
Form used on the login page to retrive user credentials Form used on the login page to retrive user credentials
""" """
#: The user username #: The user username
username = forms.CharField(label=_('login')) username = forms.CharField(label=_('username'))
#: The service url for which the user want a ticket #: The service url for which the user want a ticket
service = forms.CharField(label=_('service'), widget=forms.HiddenInput(), required=False) service = forms.CharField(label=_('service'), widget=forms.HiddenInput(), required=False)
#: The user password #: The user password
@ -103,7 +106,10 @@ class UserCredential(BootsrapForm):
lt = forms.CharField(widget=forms.HiddenInput(), required=False) lt = forms.CharField(widget=forms.HiddenInput(), required=False)
method = forms.CharField(widget=forms.HiddenInput(), required=False) method = forms.CharField(widget=forms.HiddenInput(), required=False)
#: A checkbox to ask to be warn before emiting a ticket for another service #: A checkbox to ask to be warn before emiting a ticket for another service
warn = forms.BooleanField(label=_('warn'), required=False) warn = forms.BooleanField(
label=_('Warn me before logging me into other sites.'),
required=False
)
#: Is the service asking the authentication renewal ? #: Is the service asking the authentication renewal ?
renew = forms.BooleanField(widget=forms.HiddenInput(), required=False) renew = forms.BooleanField(widget=forms.HiddenInput(), required=False)
@ -124,7 +130,9 @@ class UserCredential(BootsrapForm):
if auth.test_password(cleaned_data.get("password")): if auth.test_password(cleaned_data.get("password")):
cleaned_data["username"] = auth.username cleaned_data["username"] = auth.username
else: else:
raise forms.ValidationError(_(u"Bad user")) raise forms.ValidationError(
_(u"The credentials you provided cannot be determined to be authentic.")
)
return cleaned_data return cleaned_data

View file

@ -1,371 +0,0 @@
# 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.
#
msgid ""
msgstr ""
"Project-Id-Version: cas_server\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-07-04 17:36+0200\n"
"PO-Revision-Date: 2016-07-04 17:39+0200\n"
"Last-Translator: Valentin Samir <valentin.samir@crans.org>\n"
"Language-Team: django <LL@li.org>\n"
"Language: en\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.8\n"
#: apps.py:19 templates/cas_server/base.html:3
#: templates/cas_server/base.html:20
msgid "Central Authentication Service"
msgstr "Central Authentication Service"
#: forms.py:43
msgid "Identity provider"
msgstr "Identity provider"
#: forms.py:45 forms.py:55 forms.py:106
msgid "service"
msgstr ""
#: forms.py:47
msgid "Remember the identity provider"
msgstr "Remember the identity provider"
#: forms.py:48 forms.py:59
msgid "warn"
msgstr " Warn me before logging me into other sites."
#: forms.py:54
msgid "login"
msgstr "username"
#: forms.py:56
msgid "password"
msgstr "password"
#: forms.py:71
msgid "Bad user"
msgstr "The credentials you provided cannot be determined to be authentic."
#: forms.py:96
msgid "User not found in the temporary database, please try to reconnect"
msgstr ""
#: management/commands/cas_clean_federate.py:20
msgid "Clean old federated users"
msgstr "Clean old federated users"
#: management/commands/cas_clean_sessions.py:22
msgid "Clean deleted sessions"
msgstr "Clean deleted sessions"
#: management/commands/cas_clean_tickets.py:22
msgid "Clean old trickets"
msgstr "Clean old trickets"
#: models.py:42
msgid "identity provider"
msgstr "identity provider"
#: models.py:43
msgid "identity providers"
msgstr "identity providers"
#: models.py:47
msgid "suffix"
msgstr ""
#: models.py:48
msgid ""
"Suffix append to backend CAS returner username: `returned_username`@`suffix`"
msgstr ""
#: models.py:50
msgid "server url"
msgstr ""
#: models.py:59
msgid "CAS protocol version"
msgstr ""
#: models.py:60
msgid ""
"Version of the CAS protocol to use when sending requests the the backend CAS"
msgstr ""
#: models.py:65
msgid "verbose name"
msgstr ""
#: models.py:66
msgid "Name for this identity provider displayed on the login page"
msgstr ""
#: models.py:70 models.py:317
msgid "position"
msgstr "position"
#: models.py:80
msgid "display"
msgstr ""
#: models.py:81
msgid "Display the provider on the login page"
msgstr ""
#: models.py:164
msgid "User"
msgstr ""
#: models.py:165
msgid "Users"
msgstr ""
#: models.py:234
#, python-format
msgid "Error during service logout %s"
msgstr "Error during service logout %s"
#: models.py:312
msgid "Service pattern"
msgstr "Service pattern"
#: models.py:313
msgid "Services patterns"
msgstr ""
#: models.py:318
msgid "service patterns are sorted using the position attribute"
msgstr ""
#: models.py:325 models.py:449
msgid "name"
msgstr "name"
#: models.py:326
msgid "A name for the service"
msgstr "A name for the service"
#: models.py:331 models.py:478 models.py:497
msgid "pattern"
msgstr "pattern"
#: models.py:333
msgid ""
"A regular expression matching services. Will usually looks like '^https://"
"some\\.server\\.com/path/.*$'.As it is a regular expression, special "
"character must be escaped with a '\\'."
msgstr ""
"A regular expression matching services. Will usually looks like '^https://"
"some\\.server\\.com/path/.*$'.As it is a regular expression, special "
"character must be escaped with a '\\'."
#: models.py:342
msgid "user field"
msgstr ""
#: models.py:343
msgid "Name of the attribut to transmit as username, empty = login"
msgstr "Name of the attribut to transmit as username, empty = login"
#: models.py:347
msgid "restrict username"
msgstr ""
#: models.py:348
msgid "Limit username allowed to connect to the list provided bellow"
msgstr "Limit username allowed to connect to the list provided bellow"
#: models.py:352
msgid "proxy"
msgstr "proxy"
#: models.py:353
msgid "Proxy tickets can be delivered to the service"
msgstr "Proxy tickets can be delivered to the service"
#: models.py:357
msgid "proxy callback"
msgstr "proxy callback"
#: models.py:358
msgid "can be used as a proxy callback to deliver PGT"
msgstr "can be used as a proxy callback to deliver PGT"
#: models.py:362
msgid "single log out"
msgstr ""
#: models.py:363
msgid "Enable SLO for the service"
msgstr "Enable SLO for the service"
#: models.py:370
msgid "single log out callback"
msgstr ""
#: models.py:371
msgid ""
"URL where the SLO request will be POST. empty = service url\n"
"This is usefull for non HTTP proxied services."
msgstr ""
#: models.py:433
msgid "username"
msgstr ""
#: models.py:434
msgid "username allowed to connect to the service"
msgstr "username allowed to connect to the service"
#: models.py:450
msgid "name of an attribut to send to the service, use * for all attributes"
msgstr "name of an attribut to send to the service, use * for all attributes"
#: models.py:455 models.py:503
msgid "replace"
msgstr "replace"
#: models.py:456
msgid ""
"name under which the attribut will be showto the service. empty = default "
"name of the attribut"
msgstr ""
"name under which the attribut will be showto the service. empty = default "
"name of the attribut"
#: models.py:473 models.py:492
msgid "attribut"
msgstr "attribut"
#: models.py:474
msgid "Name of the attribut which must verify pattern"
msgstr "Name of the attribut which must verify pattern"
#: models.py:479
msgid "a regular expression"
msgstr "a regular expression"
#: models.py:493
msgid "Name of the attribut for which the value must be replace"
msgstr "Name of the attribut for which the value must be replace"
#: models.py:498
msgid "An regular expression maching whats need to be replaced"
msgstr "An regular expression maching whats need to be replaced"
#: models.py:504
msgid "replace expression, groups are capture by \\1, \\2 …"
msgstr "replace expression, groups are capture by \\1, \\2 …"
#: templates/cas_server/logged.html:6
msgid "Logged"
msgstr ""
"<h3>Log In Successful</h3>You have successfully logged into the Central "
"Authentication Service.<br/>For security reasons, please Log Out and Exit "
"your web browser when you are done accessing services that require "
"authentication!"
#: templates/cas_server/logged.html:10
msgid "Log me out from all my sessions"
msgstr "Log me out from all my sessions"
#: templates/cas_server/logged.html:13
msgid "Logout"
msgstr "Logout"
#: templates/cas_server/login.html:8
msgid "Please log in"
msgstr "Please log in"
#: templates/cas_server/login.html:13
msgid "Login"
msgstr "Login"
#: templates/cas_server/warn.html:10
msgid "Connect to the service"
msgstr "Connect to the service"
#: views.py:152
msgid ""
"<h3>Logout successful</h3>You have successfully logged out from the Central "
"Authentication Service. For security reasons, exit your web browser."
msgstr ""
"<h3>Logout successful</h3>You have successfully logged out from the Central "
"Authentication Service. For security reasons, exit your web browser."
#: views.py:158
#, python-format
msgid ""
"<h3>Logout successful</h3>You have successfully logged out from %s sessions "
"of the Central Authentication Service. For security reasons, exit your web "
"browser."
msgstr ""
"<h3>Logout successful</h3>You have successfully logged out from %s sessions "
"of the Central Authentication Service. For security reasons, exit your web "
"browser."
#: views.py:165
msgid ""
"<h3>Logout successful</h3>You were already logged out from the Central "
"Authentication Service. For security reasons, exit your web browser."
msgstr ""
"<h3>Logout successful</h3>You were already logged out from the Central "
"Authentication Service. For security reasons, exit your web browser."
#: views.py:349
msgid "Invalid login ticket"
msgstr "Invalid login ticket, please retry to login"
#: views.py:470
#, python-format
msgid "Authentication has been required by service %(name)s (%(url)s)"
msgstr "Authentication has been required by service %(name)s (%(url)s)"
#: views.py:508
#, python-format
msgid "Service %(url)s non allowed."
msgstr "Service %(url)s non allowed."
#: views.py:515
msgid "Username non allowed"
msgstr "Username non allowed"
#: views.py:522
msgid "User charateristics non allowed"
msgstr "User charateristics non allowed"
#: views.py:529
#, python-format
msgid "The attribut %(field)s is needed to use that service"
msgstr "The attribut %(field)s is needed to use that service"
#: views.py:599
#, python-format
msgid "Authentication renewal required by service %(name)s (%(url)s)."
msgstr "Authentication renewal required by service %(name)s (%(url)s)."
#: views.py:606
#, python-format
msgid "Authentication required by service %(name)s (%(url)s)."
msgstr "Authentication required by service %(name)s (%(url)s)."
#: views.py:613
#, python-format
msgid "Service %s non allowed"
msgstr "Service %s non allowed"
#~ msgid ""
#~ "Error during service logout %(service)s:\n"
#~ "%(error)s"
#~ msgstr ""
#~ "Error during service logout %(service)s:\n"
#~ "%(error)s"
#~ msgid "Successfully logout"
#~ msgstr ""
#~ "<h3>Logout successful</h3>You have successfully logged out of the Central "
#~ "Authentication Service.</br>For security reasons, exit your web browser."

View file

@ -7,8 +7,8 @@ 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: 2016-07-04 17:36+0200\n" "POT-Creation-Date: 2016-07-30 01:25+0200\n"
"PO-Revision-Date: 2016-07-04 17:37+0200\n" "PO-Revision-Date: 2016-07-30 01:30+0200\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"
"Language: fr\n" "Language: fr\n"
@ -18,40 +18,40 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.8.8\n" "X-Generator: Poedit 1.8.8\n"
#: apps.py:19 templates/cas_server/base.html:3 #: apps.py:25 templates/cas_server/base.html:9
#: templates/cas_server/base.html:20 #: templates/cas_server/base.html:27
msgid "Central Authentication Service" msgid "Central Authentication Service"
msgstr "Service Central d'Authentification" msgstr "Service Central d'Authentification"
#: forms.py:43 #: forms.py:77
msgid "Identity provider" msgid "Identity provider"
msgstr "fournisseur d'identité" msgstr "fournisseur d'identité"
#: forms.py:45 forms.py:55 forms.py:106 #: forms.py:80 forms.py:102 forms.py:205
msgid "service" msgid "service"
msgstr "service" msgstr "service"
#: forms.py:47 #: forms.py:83
msgid "Remember the identity provider" msgid "Remember the identity provider"
msgstr "Se souvenir du fournisseur d'identité" msgstr "Se souvenir du fournisseur d'identité"
#: forms.py:48 forms.py:59 #: forms.py:86 forms.py:109
msgid "warn" msgid "Warn me before logging me into other sites."
msgstr "Prévenez-moi avant d'accéder à d'autres services." msgstr "Prévenez-moi avant d'accéder à d'autres services."
#: forms.py:54 #: forms.py:100 models.py:600
msgid "login" msgid "username"
msgstr "Identifiant" msgstr "nom d'utilisateur"
#: forms.py:56 #: forms.py:104
msgid "password" msgid "password"
msgstr "mot de passe" msgstr "mot de passe"
#: forms.py:71 #: forms.py:131
msgid "Bad user" msgid "The credentials you provided cannot be determined to be authentic."
msgstr "Les informations transmises n'ont pas permis de vous authentifier." msgstr "Les informations transmises n'ont pas permis de vous authentifier."
#: forms.py:96 #: forms.py:191
msgid "User not found in the temporary database, please try to reconnect" msgid "User not found in the temporary database, please try to reconnect"
msgstr "" msgstr ""
"Utilisateur non trouvé dans la base de donnée temporaire, essayez de vous " "Utilisateur non trouvé dans la base de donnée temporaire, essayez de vous "
@ -69,98 +69,99 @@ msgstr "Nettoyer les sessions supprimées"
msgid "Clean old trickets" msgid "Clean old trickets"
msgstr "Nettoyer les vieux tickets" msgstr "Nettoyer les vieux tickets"
#: models.py:42 #: models.py:46
msgid "identity provider" msgid "identity provider"
msgstr "fournisseur d'identité" msgstr "fournisseur d'identité"
#: models.py:43 #: models.py:47
msgid "identity providers" msgid "identity providers"
msgstr "fournisseurs d'identités" msgstr "fournisseurs d'identités"
#: models.py:47 #: models.py:53
msgid "suffix" msgid "suffix"
msgstr "suffixe" msgstr "suffixe"
#: models.py:48 #: models.py:55
msgid "" msgid ""
"Suffix append to backend CAS returner username: `returned_username`@`suffix`" "Suffix append to backend CAS returned username: ``returned_username`` @ "
"``suffix``."
msgstr "" msgstr ""
"Suffixe ajouté au nom d'utilisateur retourné par le CAS du fournisseur " "Suffixe ajouté au nom d'utilisateur retourné par le CAS du fournisseur "
"d'identité : `nom retourné`@`suffixe`" "d'identité : `nom retourné`@`suffixe`."
#: models.py:50 #: models.py:62
msgid "server url" msgid "server url"
msgstr "url du serveur" msgstr "url du serveur"
#: models.py:59 #: models.py:72
msgid "CAS protocol version" msgid "CAS protocol version"
msgstr "Version du protocole CAS" msgstr "Version du protocole CAS"
#: models.py:60 #: models.py:74
msgid "" msgid ""
"Version of the CAS protocol to use when sending requests the the backend CAS" "Version of the CAS protocol to use when sending requests the the backend CAS."
msgstr "" msgstr ""
"Version du protocole CAS à utiliser lorsque l'on envoie des requête au CAS " "Version du protocole CAS à utiliser lorsque l'on envoie des requête au CAS "
"du fournisseur d'identité" "du fournisseur d'identité."
#: models.py:65 #: models.py:81
msgid "verbose name" msgid "verbose name"
msgstr "Nom du fournisseur" msgstr "Nom du fournisseur"
#: models.py:66 #: models.py:82
msgid "Name for this identity provider displayed on the login page" msgid "Name for this identity provider displayed on the login page."
msgstr "Nom affiché pour ce fournisseur d'identité sur la page de connexion" msgstr "Nom affiché pour ce fournisseur d'identité sur la page de connexion."
#: models.py:70 models.py:317 #: models.py:88 models.py:446
msgid "position" msgid "position"
msgstr "position" msgstr "position"
#: models.py:80 #: models.py:102
msgid "display" msgid "display"
msgstr "afficher" msgstr "afficher"
#: models.py:81 #: models.py:103
msgid "Display the provider on the login page" msgid "Display the provider on the login page."
msgstr "Afficher le fournisseur d'identité sur la page de connexion" msgstr "Afficher le fournisseur d'identité sur la page de connexion."
#: models.py:164 #: models.py:233
msgid "User" msgid "User"
msgstr "Utilisateur" msgstr "Utilisateur"
#: models.py:165 #: models.py:234
msgid "Users" msgid "Users"
msgstr "Utilisateurs" msgstr "Utilisateurs"
#: models.py:234 #: models.py:320
#, python-format #, python-format
msgid "Error during service logout %s" msgid "Error during service logout %s"
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:312 #: models.py:440
msgid "Service pattern" msgid "Service pattern"
msgstr "Motif de service" msgstr "Motif de service"
#: models.py:313 #: models.py:441
msgid "Services patterns" msgid "Services patterns"
msgstr "Motifs de services" msgstr "Motifs de services"
#: models.py:318 #: models.py:447
msgid "service patterns are sorted using the position attribute" msgid "service patterns are sorted using the position attribute"
msgstr "Les motifs de service sont trié selon l'attribut position" msgstr "Les motifs de service sont trié selon l'attribut position"
#: models.py:325 models.py:449 #: models.py:455 models.py:626
msgid "name" msgid "name"
msgstr "nom" msgstr "nom"
#: models.py:326 #: models.py:456
msgid "A name for the service" msgid "A name for the service"
msgstr "Un nom pour le service" msgstr "Un nom pour le service"
#: models.py:331 models.py:478 models.py:497 #: models.py:464 models.py:669 models.py:698
msgid "pattern" msgid "pattern"
msgstr "motif" msgstr "motif"
#: models.py:333 #: models.py:466
msgid "" msgid ""
"A regular expression matching services. Will usually looks like '^https://" "A regular expression matching services. Will usually looks like '^https://"
"some\\.server\\.com/path/.*$'.As it is a regular expression, special " "some\\.server\\.com/path/.*$'.As it is a regular expression, special "
@ -171,55 +172,55 @@ msgstr ""
"expression rationnelle, les caractères spéciaux doivent être échappés avec " "expression rationnelle, les caractères spéciaux doivent être échappés avec "
"un '\\'." "un '\\'."
#: models.py:342 #: models.py:476
msgid "user field" msgid "user field"
msgstr "champ utilisateur" msgstr "champ utilisateur"
#: models.py:343 #: models.py:477
msgid "Name of the attribut to transmit as username, empty = login" msgid "Name of the attribute to transmit as username, empty = login"
msgstr "" msgstr ""
"Nom de l'attribut devant être transmis comme nom d'utilisateur au service. " "Nom de l'attribut devant être transmis comme nom d'utilisateur au service. "
"vide = nom de connection" "vide = nom de connexion"
#: models.py:347 #: models.py:482
msgid "restrict username" msgid "restrict username"
msgstr "limiter les noms d'utilisateurs" msgstr "limiter les noms d'utilisateurs"
#: models.py:348 #: models.py:483
msgid "Limit username allowed to connect to the list provided bellow" msgid "Limit username allowed to connect to the list provided bellow"
msgstr "" msgstr ""
"Limiter les noms d'utilisateurs autorisé à se connecter à la liste fournie " "Limiter les noms d'utilisateurs autorisé à se connecter à la liste fournie "
"ci-dessous" "ci-dessous"
#: models.py:352 #: models.py:488
msgid "proxy" msgid "proxy"
msgstr "proxy" msgstr "proxy"
#: models.py:353 #: models.py:489
msgid "Proxy tickets can be delivered to the service" msgid "Proxy tickets can be delivered to the service"
msgstr "des proxy tickets peuvent être délivrés au service" msgstr "des proxy tickets peuvent être délivrés au service"
#: models.py:357 #: models.py:495
msgid "proxy callback" msgid "proxy callback"
msgstr "" msgstr ""
#: models.py:358 #: models.py:496
msgid "can be used as a proxy callback to deliver PGT" msgid "can be used as a proxy callback to deliver PGT"
msgstr "peut être utilisé comme un callback pour recevoir un PGT" msgstr "peut être utilisé comme un callback pour recevoir un PGT"
#: models.py:362 #: models.py:503
msgid "single log out" msgid "single log out"
msgstr "" msgstr ""
#: models.py:363 #: models.py:504
msgid "Enable SLO for the service" msgid "Enable SLO for the service"
msgstr "Active le SLO pour le service" msgstr "Active le SLO pour le service"
#: models.py:370 #: models.py:512
msgid "single log out callback" msgid "single log out callback"
msgstr "" msgstr ""
#: models.py:371 #: models.py:513
msgid "" msgid ""
"URL where the SLO request will be POST. empty = service url\n" "URL where the SLO request will be POST. empty = service url\n"
"This is usefull for non HTTP proxied services." "This is usefull for non HTTP proxied services."
@ -228,55 +229,62 @@ msgstr ""
"service\n" "service\n"
"Ceci n'est utilise que pour des services non HTTP proxifiés" "Ceci n'est utilise que pour des services non HTTP proxifiés"
#: models.py:433 #: models.py:601
msgid "username"
msgstr "nom d'utilisateur"
#: models.py:434
msgid "username allowed to connect to the service" msgid "username allowed to connect to the service"
msgstr "noms d'utilisateurs autorisé à se connecter au service" msgstr "noms d'utilisateurs autorisé à se connecter au service"
#: models.py:450 #: models.py:627
msgid "name of an attribut to send to the service, use * for all attributes" msgid "name of an attribute to send to the service, use * for all attributes"
msgstr "" msgstr ""
"nom d'un attribut a envoyer au service, utiliser * pour tous les attributs" "nom d'un attribut a envoyer au service, utiliser * pour tous les attributs"
#: models.py:455 models.py:503 #: models.py:634 models.py:705
msgid "replace" msgid "replace"
msgstr "remplacement" msgstr "remplacement"
#: models.py:456 #: models.py:635
msgid "" msgid ""
"name under which the attribut will be showto the service. empty = default " "name under which the attribute will be showto the service. empty = default "
"name of the attribut" "name of the attribut"
msgstr "" msgstr ""
"nom sous lequel l'attribut sera rendu visible au service. vide = inchangé" "nom sous lequel l'attribut sera rendu visible au service. vide = inchangé"
#: models.py:473 models.py:492 #: models.py:662 models.py:692
msgid "attribut" msgid "attribute"
msgstr "attribut" msgstr "attribut"
#: models.py:474 #: models.py:663
msgid "Name of the attribut which must verify pattern" msgid "Name of the attribute which must verify pattern"
msgstr "Nom de l'attribut devant vérifier un motif" msgstr "Nom de l'attribut devant vérifier un motif"
#: models.py:479 #: models.py:670
msgid "a regular expression" msgid "a regular expression"
msgstr "une expression régulière" msgstr "une expression régulière"
#: models.py:493 #: models.py:693
msgid "Name of the attribut for which the value must be replace" msgid "Name of the attribute for which the value must be replace"
msgstr "nom de l'attribue pour lequel la valeur doit être remplacé" msgstr "nom de l'attribut pour lequel la valeur doit être remplacé"
#: models.py:498 #: models.py:699
msgid "An regular expression maching whats need to be replaced" msgid "An regular expression maching whats need to be replaced"
msgstr "une expression régulière reconnaissant ce qui doit être remplacé" msgstr "une expression régulière reconnaissant ce qui doit être remplacé"
#: models.py:504 #: models.py:706
msgid "replace expression, groups are capture by \\1, \\2 …" msgid "replace expression, groups are capture by \\1, \\2 …"
msgstr "expression de remplacement, les groupe sont capturé par \\1, \\2" msgstr "expression de remplacement, les groupe sont capturé par \\1, \\2"
#: templates/cas_server/logged.html:6 #: templates/cas_server/base.html:38
#, python-format
msgid ""
"A new version of the application is available. This instance runs "
"%(VERSION)s and the last version is %(LAST_VERSION)s. Please consider "
"upgrading."
msgstr ""
"Une nouvelle version de l'application est disponible. Cette instance utilise "
"la version %(VERSION)s et la dernière version est %(LAST_VERSION)s. Merci de "
"vous mettre a jour."
#: templates/cas_server/logged.html:4
msgid "Logged" msgid "Logged"
msgstr "" msgstr ""
"<h3>Connexion réussie</h3>Vous vous êtes authentifié(e) auprès du Service " "<h3>Connexion réussie</h3>Vous vous êtes authentifié(e) auprès du Service "
@ -284,27 +292,35 @@ msgstr ""
"déconnecter et fermer votre navigateur lorsque vous avez fini d'accéder aux " "déconnecter et fermer votre navigateur lorsque vous avez fini d'accéder aux "
"services authentifiés." "services authentifiés."
#: templates/cas_server/logged.html:10 #: templates/cas_server/logged.html:8
msgid "Log me out from all my sessions" msgid ""
msgstr "Me déconnecter de toutes mes sessions" "<h3>Log In Successful</h3>You have successfully logged into the Central "
"Authentication Service.<br/>For security reasons, please Log Out and Exit "
"your web browser when you are done accessing services that require "
"authentication!"
msgstr ""
"<h3>Déconnexion réussie</h3>Vous vous êtes déconnecté(e) du Service Central "
"d'Authentification. Pour des raisons de sécurité, veuillez fermer votre "
"navigateur après avoir fini d'accéder a des services demandant une "
"authentification !"
#: templates/cas_server/logged.html:13 #: templates/cas_server/logged.html:11
msgid "Logout" msgid "Logout"
msgstr "Se déconnecter" msgstr "Se déconnecter"
#: templates/cas_server/login.html:8 #: templates/cas_server/login.html:6
msgid "Please log in" msgid "Please log in"
msgstr "Merci de se connecter" msgstr "Merci de se connecter"
#: templates/cas_server/login.html:13 #: templates/cas_server/login.html:14
msgid "Login" msgid "Login"
msgstr "Connexion" msgstr "Connexion"
#: templates/cas_server/warn.html:10 #: templates/cas_server/warn.html:9
msgid "Connect to the service" msgid "Connect to the service"
msgstr "Se connecter au service" msgstr "Se connecter au service"
#: views.py:152 #: views.py:165
msgid "" msgid ""
"<h3>Logout successful</h3>You have successfully logged out from the Central " "<h3>Logout successful</h3>You have successfully logged out from the Central "
"Authentication Service. For security reasons, exit your web browser." "Authentication Service. For security reasons, exit your web browser."
@ -313,7 +329,7 @@ msgstr ""
"d'Authentification. Pour des raisons de sécurité, veuillez fermer votre " "d'Authentification. Pour des raisons de sécurité, veuillez fermer votre "
"navigateur." "navigateur."
#: views.py:158 #: views.py:171
#, python-format #, python-format
msgid "" msgid ""
"<h3>Logout successful</h3>You have successfully logged out from %s sessions " "<h3>Logout successful</h3>You have successfully logged out from %s sessions "
@ -324,7 +340,7 @@ msgstr ""
"Service Central d'Authentification. Pour des raisons de sécurité, veuillez " "Service Central d'Authentification. Pour des raisons de sécurité, veuillez "
"fermer votre navigateur." "fermer votre navigateur."
#: views.py:165 #: views.py:178
msgid "" msgid ""
"<h3>Logout successful</h3>You were already logged out from the Central " "<h3>Logout successful</h3>You were already logged out from the Central "
"Authentication Service. For security reasons, exit your web browser." "Authentication Service. For security reasons, exit your web browser."
@ -333,50 +349,71 @@ msgstr ""
"d'Authentification. Pour des raisons de sécurité, veuillez fermer votre " "d'Authentification. Pour des raisons de sécurité, veuillez fermer votre "
"navigateur." "navigateur."
#: views.py:349 #: views.py:351
msgid "Invalid login ticket" #, python-format
msgid ""
"Invalid response from your identity provider CAS upon ticket %(ticket)s "
"validation: %(error)r"
msgstr ""
"Réponse invalide du CAS du fournisseur d'identité lors de la validation du "
"ticket %(ticket)s: %(error)r"
#: views.py:472
msgid "Invalid login ticket, please retry to login"
msgstr "Ticket de connexion invalide, merci de réessayé de vous connecter" msgstr "Ticket de connexion invalide, merci de réessayé de vous connecter"
#: views.py:470 #: views.py:652
#, 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:508 #: views.py:690
#, 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:515 #: views.py:697
msgid "Username non allowed" msgid "Username non allowed"
msgstr "Nom d'utilisateur non authorisé" msgstr "Nom d'utilisateur non authorisé"
#: views.py:522 #: views.py:704
msgid "User charateristics non allowed" msgid "User characteristics non allowed"
msgstr "Caractéristique utilisateur non autorisée" msgstr "Caractéristique utilisateur non autorisée"
#: views.py:529 #: views.py:711
#, python-format #, python-format
msgid "The attribut %(field)s is needed to use that service" msgid "The attribute %(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:599 #: views.py:801
#, 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:606 #: views.py:808
#, 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:613 #: views.py:815
#, 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é"
#~ msgid "warn"
#~ msgstr "Prévenez-moi avant d'accéder à d'autres services."
#~ msgid "login"
#~ msgstr "Identifiant"
#~ msgid "Bad user"
#~ msgstr "Les informations transmises n'ont pas permis de vous authentifier."
#~ msgid "Log me out from all my sessions"
#~ msgstr "Me déconnecter de toutes mes sessions"
#~ msgid "" #~ msgid ""
#~ "Error during service logout %(service)s:\n" #~ "Error during service logout %(service)s:\n"
#~ "%(error)s" #~ "%(error)s"

View file

@ -468,13 +468,13 @@ class ServicePattern(models.Model):
"As it is a regular expression, special character must be escaped with a '\\'." "As it is a regular expression, special character must be escaped with a '\\'."
) )
) )
#: Name of the attribut to transmit as username, if empty the user login is used #: Name of the attribute to transmit as username, if empty the user login is used
user_field = models.CharField( user_field = models.CharField(
max_length=255, max_length=255,
default="", default="",
blank=True, blank=True,
verbose_name=_(u"user field"), verbose_name=_(u"user field"),
help_text=_("Name of the attribut to transmit as username, empty = login") help_text=_("Name of the attribute to transmit as username, empty = login")
) )
#: A boolean allowing to limit username allowed to connect to :attr:`usernames`. #: A boolean allowing to limit username allowed to connect to :attr:`usernames`.
restrict_users = models.BooleanField( restrict_users = models.BooleanField(
@ -624,7 +624,7 @@ class ReplaceAttributName(models.Model):
name = models.CharField( name = models.CharField(
max_length=255, max_length=255,
verbose_name=_(u"name"), verbose_name=_(u"name"),
help_text=_(u"name of an attribut to send to the service, use * for all attributes") help_text=_(u"name of an attribute to send to the service, use * for all attributes")
) )
#: The name of the attribute to transmit to the service. If empty, the value of :attr:`name` #: The name of the attribute to transmit to the service. If empty, the value of :attr:`name`
#: is used. #: is used.
@ -632,7 +632,7 @@ class ReplaceAttributName(models.Model):
max_length=255, max_length=255,
blank=True, blank=True,
verbose_name=_(u"replace"), verbose_name=_(u"replace"),
help_text=_(u"name under which the attribut will be show" help_text=_(u"name under which the attribute will be show"
u"to the service. empty = default name of the attribut") u"to the service. empty = default name of the attribut")
) )
#: ForeignKey to a :class:`ServicePattern`. :class:`ReplaceAttributName` instances for a #: ForeignKey to a :class:`ServicePattern`. :class:`ReplaceAttributName` instances for a
@ -659,8 +659,8 @@ class FilterAttributValue(models.Model):
#: The name of a user attribute #: The name of a user attribute
attribut = models.CharField( attribut = models.CharField(
max_length=255, max_length=255,
verbose_name=_(u"attribut"), verbose_name=_(u"attribute"),
help_text=_(u"Name of the attribut which must verify pattern") help_text=_(u"Name of the attribute which must verify pattern")
) )
#: A regular expression the attribute :attr:`attribut` value must verify. If :attr:`attribut` #: A regular expression the attribute :attr:`attribut` value must verify. If :attr:`attribut`
#: if a list, only one of the list values needs to match. #: if a list, only one of the list values needs to match.
@ -689,8 +689,8 @@ class ReplaceAttributValue(models.Model):
#: Name the attribute: a key of :attr:`User.attributs` #: Name the attribute: a key of :attr:`User.attributs`
attribut = models.CharField( attribut = models.CharField(
max_length=255, max_length=255,
verbose_name=_(u"attribut"), verbose_name=_(u"attribute"),
help_text=_(u"Name of the attribut for which the value must be replace") help_text=_(u"Name of the attribute for which the value must be replace")
) )
#: A regular expression matching the part of the attribute value that need to be changed #: A regular expression matching the part of the attribute value that need to be changed
pattern = models.CharField( pattern = models.CharField(

View file

@ -5,7 +5,7 @@
<form class="form-signin" method="get" action="logout"> <form class="form-signin" method="get" action="logout">
<div class="checkbox"> <div class="checkbox">
<label> <label>
<input type="checkbox" name="all" value="1"> {% trans "Log me out from all my sessions" %} <input type="checkbox" name="all" value="1">{% blocktrans %}<h3>Log In Successful</h3>You have successfully logged into the Central Authentication Service.<br/>For security reasons, please Log Out and Exit your web browser when you are done accessing services that require authentication!{% endblocktrans %}
</label> </label>
</div> </div>
<button class="btn btn-danger btn-block btn-lg" type="submit">{% trans "Logout" %}</button> <button class="btn btn-danger btn-block btn-lg" type="submit">{% trans "Logout" %}</button>

View file

@ -337,7 +337,7 @@ class LoginTestCase(TestCase, BaseServicePattern, CanLogin):
response = client.get("/login", {'service': service}) response = client.get("/login", {'service': service})
# the ticket is not created and a warning is displayed to the user # the ticket is not created and a warning is displayed to the user
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
self.assertTrue(b"User charateristics non allowed" in response.content) self.assertTrue(b"User characteristics non allowed" in response.content)
# same but with rectriction that a valid upon the test user attributes # same but with rectriction that a valid upon the test user attributes
response = client.get("/login", {'service': self.service_filter_success}) response = client.get("/login", {'service': self.service_filter_success})
@ -355,7 +355,7 @@ class LoginTestCase(TestCase, BaseServicePattern, CanLogin):
response = client.get("/login", {'service': self.service_field_needed_fail}) response = client.get("/login", {'service': self.service_field_needed_fail})
# the ticket is not created and a warning is displayed to the user # the ticket is not created and a warning is displayed to the user
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
self.assertTrue(b"The attribut uid is needed to use that service" in response.content) self.assertTrue(b"The attribute uid is needed to use that service" in response.content)
# same but with a attribute that the test user has # same but with a attribute that the test user has
response = client.get("/login", {'service': self.service_field_needed_success}) response = client.get("/login", {'service': self.service_field_needed_success})
@ -379,7 +379,7 @@ class LoginTestCase(TestCase, BaseServicePattern, CanLogin):
response = client.get("/login", {"service": self.service_field_needed_success}) response = client.get("/login", {"service": self.service_field_needed_success})
# the ticket is not created and a warning is displayed to the user # the ticket is not created and a warning is displayed to the user
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
self.assertTrue(b"The attribut alias is needed to use that service" in response.content) self.assertTrue(b"The attribute alias is needed to use that service" in response.content)
def test_gateway(self): def test_gateway(self):
"""test gateway parameter""" """test gateway parameter"""

View file

@ -349,8 +349,8 @@ class FederateAuth(View):
messages.ERROR, messages.ERROR,
_( _(
u"Invalid response from your identity provider CAS upon " u"Invalid response from your identity provider CAS upon "
u"ticket %s validation: %r" u"ticket %(ticket)s validation: %(error)r"
) % (ticket, error) ) % {'ticket': ticket, 'error': error}
) )
response = redirect("cas_server:login") response = redirect("cas_server:login")
response.delete_cookie("_remember_provider") response.delete_cookie("_remember_provider")
@ -469,7 +469,7 @@ class LoginView(View, LogoutMixin):
messages.add_message( messages.add_message(
self.request, self.request,
messages.ERROR, messages.ERROR,
_(u"Invalid login ticket") _(u"Invalid login ticket, please retry to login")
) )
elif ret == self.USER_LOGIN_OK: elif ret == self.USER_LOGIN_OK:
# On successful login, update the :class:`models.User<cas_server.models.User>` ``date`` # On successful login, update the :class:`models.User<cas_server.models.User>` ``date``
@ -701,14 +701,14 @@ class LoginView(View, LogoutMixin):
messages.add_message( messages.add_message(
self.request, self.request,
messages.ERROR, messages.ERROR,
_(u"User charateristics non allowed") _(u"User characteristics non allowed")
) )
except models.UserFieldNotDefined: except models.UserFieldNotDefined:
error = 4 error = 4
messages.add_message( messages.add_message(
self.request, self.request,
messages.ERROR, messages.ERROR,
_(u"The attribut %(field)s is needed to use" _(u"The attribute %(field)s is needed to use"
u" that service") % {'field': service_pattern.user_field} u" that service") % {'field': service_pattern.user_field}
) )