From 5d30e95aa4e71f93ce9a3a5d858163678c5ba60c Mon Sep 17 00:00:00 2001 From: Gabriel Detraz Date: Tue, 28 Aug 2018 20:18:09 +0200 Subject: [PATCH 1/2] Ebauche, interface de capture de mac et d'enregistrement de chambre --- static/images/rj45.gif | Bin 0 -> 15546 bytes users/forms.py | 52 ++++++++++++++++++++++++++ users/templates/users/plugin_out.html | 41 ++++++++++++++++++++ users/urls.py | 1 + users/views.py | 25 ++++++++++++- 5 files changed, 118 insertions(+), 1 deletion(-) create mode 100644 static/images/rj45.gif create mode 100644 users/templates/users/plugin_out.html diff --git a/static/images/rj45.gif b/static/images/rj45.gif new file mode 100644 index 0000000000000000000000000000000000000000..69630b10c95605502bcc1cc1efb4f16ccae18a7d GIT binary patch literal 15546 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 machine et votre chambre ont bien été enregistrées. Merci de débrancher et rebrancher votre cable RJ45 pour bénéficier d'une connexion filaire +
rj45_in_out
+ +
+
+
+{% endblock %} + diff --git a/users/urls.py b/users/urls.py index 5515dd29..1e6ffa8c 100644 --- a/users/urls.py +++ b/users/urls.py @@ -109,6 +109,7 @@ urlpatterns = [ url(r'^mass_archive/$', views.mass_archive, name='mass-archive'), url(r'^$', views.index, name='index'), url(r'^index_clubs/$', views.index_clubs, name='index-clubs'), + url(r'^initial_register/$', views.initial_register, name='initial-register'), url(r'^rest/ml/std/$', views.ml_std_list, name='ml-std-list'), diff --git a/users/views.py b/users/views.py index af311ceb..86cfa767 100644 --- a/users/views.py +++ b/users/views.py @@ -105,7 +105,8 @@ from .forms import ( PassForm, ResetPasswordForm, ClubAdminandMembersForm, - GroupForm + GroupForm, + InitialRegisterForm ) @@ -1081,6 +1082,28 @@ def process_passwd(request, req): request ) +@login_required +def initial_register(request): + u_form = InitialRegisterForm(request.POST or None, user=request.user, switch_ip=request.GET.get('switch_ip', None), switch_port=request.GET.get('switch_port', None), client_mac=request.GET.get('client_mac', None)) + if not u_form.fields: + messages.error(request, _("Incorrect url, or already registered device")) + return redirect(reverse( + 'users:profil', + kwargs={'userid': str(request.user.id)} + )) + if u_form.is_valid(): + messages.success(request, _("Successfull register ! Please plug off and plug again your cable to get internet access")) + return form( + {}, + 'users/plugin_out.html', + request + ) + return form( + {'userform': u_form, 'action_name': _("Register device or room")}, + 'users/user.html', + request + ) + class JSONResponse(HttpResponse): """ Framework Rest """ From 1de72714d0ba6cc546222f0a18403d41319652d2 Mon Sep 17 00:00:00 2001 From: Laouen Fernet Date: Tue, 28 Aug 2018 23:17:45 +0200 Subject: [PATCH 2/2] translation for commit f355175b + typos --- re2o/locale/fr/LC_MESSAGES/django.mo | Bin 5657 -> 5658 bytes re2o/locale/fr/LC_MESSAGES/django.po | 2 +- users/forms.py | 4 +- users/locale/fr/LC_MESSAGES/django.mo | Bin 25505 -> 26688 bytes users/locale/fr/LC_MESSAGES/django.po | 260 +++++++++++++++----------- users/templates/users/plugin_out.html | 3 +- users/views.py | 6 +- 7 files changed, 160 insertions(+), 115 deletions(-) diff --git a/re2o/locale/fr/LC_MESSAGES/django.mo b/re2o/locale/fr/LC_MESSAGES/django.mo index 72cde11123bdec09725205a6db29b466a77770f5..e51e7ad2c405c39dd7c69a5d303d5cdd7f5053c7 100644 GIT binary patch delta 121 zcmbQKGfQVf2~(;h0|UcpVFrdMApI0bD+6f<5e5b&Ae{oFC4h80kd_0|3xKpfklqia t-venQAYWdTfx!?+2LWjizXeF^0_p8Q+5|{H-F%bjs{mu!=5xZ{OaL=;67T>3 delta 119 zcmbQGGgD_n2~(;B0|UcpVFrdMApHbLD+6hJ5e5b&Ae{`PLGo=tS`J9h2h#dLdLNX2 r2c(UFd^u4D216hn2&6&$W+1H#q_+WS6CnL$^G&9&0-MhZdouw540{r7 diff --git a/re2o/locale/fr/LC_MESSAGES/django.po b/re2o/locale/fr/LC_MESSAGES/django.po index f54fdcc1..58886a6b 100644 --- a/re2o/locale/fr/LC_MESSAGES/django.po +++ b/re2o/locale/fr/LC_MESSAGES/django.po @@ -232,7 +232,7 @@ msgstr "Accéder à mon profil" #: templates/re2o/index.html:79 msgid "Services of the organisation" -msgstr "Serices de l'association" +msgstr "Services de l'association" #: templates/re2o/index.html:93 msgid "Go there" diff --git a/users/forms.py b/users/forms.py index 982ad58f..a6ea70b9 100644 --- a/users/forms.py +++ b/users/forms.py @@ -688,11 +688,11 @@ class InitialRegisterForm(forms.Form): self.nas_type = Nas.objects.filter(nas_type__interface__ipv4__ipv4=switch_ip).first() super(InitialRegisterForm, self).__init__(*args, **kwargs) if hasattr(self, 'new_room'): - self.fields['register_room'].label = _("New connection from Room %s. Is that yours ? If it is the case, type Ok" % self.new_room) + self.fields['register_room'].label = _("New connection from room %s. Is it yours? If that is the case, type OK." % self.new_room) else: self.fields.pop('register_room') if hasattr(self, 'mac_address'): - self.fields['register_machine'].label = _("New connection from new device. Register It ? Say Yes to get internet connection from it (mac_address : %s)" % self.mac_address) + self.fields['register_machine'].label = _("New connection from new device. Register it? Say Yes to get Internet access from it (MAC Address : %s)." % self.mac_address) else: self.fields.pop('register_machine') diff --git a/users/locale/fr/LC_MESSAGES/django.mo b/users/locale/fr/LC_MESSAGES/django.mo index 059a73fcf5ef3e75001f0cd01be085abfedcdafa..fada8ed8190f9564253ed4774f80b1f6a9ace32b 100644 GIT binary patch delta 7977 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 diff --git a/users/locale/fr/LC_MESSAGES/django.po b/users/locale/fr/LC_MESSAGES/django.po index d3ff0f4f..2dd96142 100644 --- a/users/locale/fr/LC_MESSAGES/django.po +++ b/users/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-23 15:36+0200\n" +"POT-Creation-Date: 2018-08-28 23:07+0200\n" "PO-Revision-Date: 2018-06-27 23:35+0200\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" @@ -35,181 +35,197 @@ msgstr "" msgid "You don't have the right to view this application." msgstr "Vous n'avez pas le droit de voir cette application." -#: forms.py:70 +#: forms.py:72 msgid "Current password" msgstr "Mot de passe actuel" -#: forms.py:75 forms.py:447 +#: forms.py:77 forms.py:449 msgid "New password" msgstr "Nouveau mot de passe" -#: forms.py:81 +#: forms.py:83 msgid "New password confirmation" msgstr "Confirmation du nouveau mot de passe" -#: forms.py:98 +#: forms.py:100 msgid "The new passwords don't match." msgstr "Les nouveaux mots de passe ne correspondent pas." -#: forms.py:107 +#: forms.py:109 msgid "The current password is incorrect." msgstr "Le mot de passe actuel est incorrect." -#: forms.py:125 forms.py:178 models.py:1550 +#: forms.py:127 forms.py:180 models.py:1550 msgid "Password" msgstr "Mot de passe" -#: forms.py:131 forms.py:184 +#: forms.py:133 forms.py:186 msgid "Password confirmation" msgstr "Confirmation du mot de passe" -#: forms.py:136 forms.py:227 +#: forms.py:138 forms.py:229 msgid "Is admin" msgstr "Est admin" -#: forms.py:146 +#: forms.py:148 msgid "You can't use an internal address as your external address." msgstr "" "Vous ne pouvez pas utiliser une adresse interne pour votre adresse externe." -#: forms.py:159 forms.py:208 +#: forms.py:161 forms.py:210 msgid "The passwords don't match." msgstr "Les mots de passe ne correspondent pas." -#: forms.py:236 +#: forms.py:238 #, python-format msgid "User is admin: %s" msgstr "L'utilisateur est admin : %s" -#: forms.py:284 templates/users/aff_clubs.html:38 +#: forms.py:286 templates/users/aff_clubs.html:38 #: templates/users/aff_listright.html:63 templates/users/aff_listright.html:168 #: templates/users/aff_users.html:39 templates/users/profil.html:169 #: templates/users/profil.html:283 templates/users/profil.html:302 msgid "Username" msgstr "Pseudo" -#: forms.py:299 +#: forms.py:301 msgid "Impossible to archive users whose end access date is in the future." msgstr "" "Impossible d'archiver des utilisateurs dont la date de fin de connexion est " "dans le futur." -#: forms.py:311 templates/users/profil.html:282 templates/users/profil.html:301 +#: forms.py:313 templates/users/profil.html:282 templates/users/profil.html:301 msgid "First name" msgstr "Prénom" -#: forms.py:312 templates/users/aff_users.html:37 +#: forms.py:314 templates/users/aff_users.html:37 #: templates/users/profil.html:165 templates/users/profil.html:281 #: templates/users/profil.html:300 msgid "Surname" msgstr "Nom" -#: forms.py:313 models.py:1551 templates/users/aff_emailaddress.html:36 +#: forms.py:315 models.py:1551 templates/users/aff_emailaddress.html:36 #: templates/users/profil.html:171 msgid "Email address" msgstr "Adresse mail" -#: forms.py:314 forms.py:385 forms.py:516 templates/users/aff_schools.html:37 +#: forms.py:316 forms.py:387 forms.py:518 templates/users/aff_schools.html:37 #: templates/users/profil.html:181 msgid "School" msgstr "Établissement" -#: forms.py:315 forms.py:386 models.py:1204 +#: forms.py:317 forms.py:388 models.py:1204 #: templates/users/aff_serviceusers.html:34 templates/users/profil.html:183 msgid "Comment" msgstr "Commentaire" -#: forms.py:316 forms.py:387 templates/users/aff_clubs.html:40 +#: forms.py:318 forms.py:389 templates/users/aff_clubs.html:40 #: templates/users/aff_users.html:41 templates/users/profil.html:175 msgid "Room" msgstr "Chambre" -#: forms.py:317 forms.py:388 +#: forms.py:319 forms.py:390 msgid "No room" msgstr "Pas de chambre" -#: forms.py:318 forms.py:389 +#: forms.py:320 forms.py:391 msgid "Select a school" msgstr "Sélectionnez un établissement" -#: forms.py:319 +#: forms.py:321 msgid "Leave empty if you don't have any GPG key." msgstr "Laissez vide si vous n'avez pas de clé GPG." -#: forms.py:321 +#: forms.py:323 msgid "Default shell" msgstr "Interface système par défaut" -#: forms.py:328 forms.py:656 +#: forms.py:330 forms.py:658 msgid "You can't use a {} address." msgstr "Vous ne pouvez pas utiliser une adresse {}." -#: forms.py:353 forms.py:411 +#: forms.py:355 forms.py:413 msgid "A valid telephone number is required." msgstr "Un numéro de téléphone valide est requis." -#: forms.py:364 +#: forms.py:366 msgid "Force the move?" msgstr "Forcer le déménagement ?" -#: forms.py:384 templates/users/aff_clubs.html:36 +#: forms.py:386 templates/users/aff_clubs.html:36 #: templates/users/aff_serviceusers.html:32 msgid "Name" msgstr "Nom" -#: forms.py:390 +#: forms.py:392 msgid "Use a mailing list" msgstr "Utiliser une liste de diffusion" -#: forms.py:504 templates/users/aff_listright.html:38 +#: forms.py:506 templates/users/aff_listright.html:38 msgid "Superuser" msgstr "Superutilisateur" -#: forms.py:528 +#: forms.py:530 msgid "Shell name" msgstr "Nom de l'interface système" -#: forms.py:547 +#: forms.py:549 msgid "Name of the group of rights" msgstr "Nom du groupe de droits" -#: forms.py:558 +#: forms.py:560 msgid "GID. Warning: this field must not be edited after creation." msgstr "GID. Attention : ce champ ne doit pas être modifié après création." -#: forms.py:566 +#: forms.py:568 msgid "Current groups of rights" msgstr "Groupes de droits actuels" -#: forms.py:583 +#: forms.py:585 msgid "Current schools" msgstr "Établissements actuels" -#: forms.py:601 forms.py:615 templates/users/aff_bans.html:41 +#: forms.py:603 forms.py:617 templates/users/aff_bans.html:41 #: templates/users/aff_whitelists.html:41 msgid "End date" msgstr "Date de fin" -#: forms.py:629 models.py:1748 +#: forms.py:631 models.py:1748 msgid "Local part of the email address" msgstr "Partie locale de l'adresse mail" -#: forms.py:630 +#: forms.py:632 msgid "Can't contain @" msgstr "Ne peut pas contenir @" -#: forms.py:645 +#: forms.py:647 msgid "Main email address" msgstr "Adresse mail principale" -#: forms.py:647 +#: forms.py:649 msgid "Redirect local emails" msgstr "Rediriger les mails locaux" -#: forms.py:649 +#: forms.py:651 msgid "Use local emails" msgstr "Utiliser les mails locaux" +#: forms.py:691 +#, python-format +msgid "New connection from room %s. Is it yours? If that is the case, type OK." +msgstr "" +"Nouvelle connexion depuis la chambre %s. Est-ce la vôtre ? Si c'est le cas, " +"tapez OK." + +#: forms.py:695 +#, python-format +msgid "" +"New connection from new device. Register it? Say Yes to get Internet access " +"from it (MAC Address : %s)." +msgstr "" +"Nouvelle connexion depuis un nouvel appareil. L'enregistrer ? Dites Oui pour " +"avoir accès à Internet depuis cet appareil (adresse MAC : %s)." + #: models.py:105 #, python-format msgid "The username '%(label)s' contains forbidden characters." @@ -722,7 +738,8 @@ msgstr "Confirmer" #: templates/users/index_schools.html:30 #: templates/users/index_serviceusers.html:30 #: templates/users/index_shell.html:30 templates/users/index_whitelist.html:29 -#: templates/users/sidebar.html:52 templates/users/user.html:30 +#: templates/users/plugin_out.html:31 templates/users/sidebar.html:52 +#: templates/users/user.html:30 msgid "Users" msgstr "Utilisateurs" @@ -816,6 +833,15 @@ msgid "The following users will be archived (%(to_archive_list|length)s):" msgstr "" "Les utilisateus suivants vont être archivés (%(to_archive_list|length)s :" +#: templates/users/plugin_out.html:35 +msgid "" +"Your machine and your room were successfully registered. Please disconnect " +"and reconnect your Ethernet cable to benefit from a wired connection." +msgstr "" +"Votre machine et votre chambre ont bien été enregistrées. Veuillez" +" débrancher et rebrancher votre câble Ethernet pour bénéficier d'une" +" connexion filaire." + #: templates/users/profil.html:37 #, python-format msgid "Welcome %(name)s %(surname)s" @@ -881,7 +907,7 @@ msgstr " Informations détaillées" msgid "Edit" msgstr "Modifier" -#: templates/users/profil.html:133 views.py:282 views.py:1079 +#: templates/users/profil.html:133 views.py:283 views.py:1080 msgid "Change the password" msgstr "Changer le mot de passe" @@ -889,7 +915,7 @@ msgstr "Changer le mot de passe" msgid "Change the state" msgstr "Changer l'état" -#: templates/users/profil.html:144 views.py:260 +#: templates/users/profil.html:144 views.py:261 msgid "Edit the groups" msgstr "Modifier les groupes" @@ -956,7 +982,7 @@ msgstr "Solde" #: templates/users/profil.html:241 msgid "Refill" -msgstr "Rechager" +msgstr "Recharger" #: templates/users/profil.html:246 msgid "GPG fingerprint" @@ -1002,7 +1028,7 @@ msgstr "Modifier le solde" msgid "No invoice" msgstr "Pas de facture" -#: templates/users/profil.html:385 views.py:384 +#: templates/users/profil.html:385 views.py:385 msgid "Add a ban" msgstr "Ajouter un bannissement" @@ -1058,7 +1084,7 @@ msgstr " Ajouter une adresse mail" msgid "Create a club or organisation" msgstr "Créer un club ou une association" -#: templates/users/sidebar.html:39 views.py:134 +#: templates/users/sidebar.html:39 views.py:135 msgid "Create a user" msgstr "Créer un utilisateur" @@ -1095,178 +1121,178 @@ msgstr "Conditions Générales d'Utilisation" msgid "Summary of the General Terms of Use" msgstr "Résumé des Conditions Générales d'Utilisation" -#: views.py:122 +#: views.py:123 #, python-format msgid "The user %s was created, an email to set the password was sent." msgstr "" "L'utilisateur %s a été créé, un mail pour initialiser le mot de passe a été " "envoyé." -#: views.py:151 +#: views.py:152 #, python-format msgid "The club %s was created, an email to set the password was sent." msgstr "" "Le club %s a été créé, un mail pour initialiser le mot de passe a été envoyé." -#: views.py:158 +#: views.py:159 msgid "Create a club" msgstr "Créer un club" -#: views.py:176 +#: views.py:177 msgid "The club was edited." msgstr "Le club a été modifié." -#: views.py:185 +#: views.py:186 msgid "Edit the admins and members" msgstr "Modifier les admins et les membres" -#: views.py:213 +#: views.py:214 msgid "The user was edited." msgstr "L'utilisateur a été modifié." -#: views.py:219 +#: views.py:220 msgid "Edit the user" msgstr "Modifier l'utilisateur" -#: views.py:233 +#: views.py:234 msgid "The state was edited." msgstr "L'état a été modifié." -#: views.py:239 +#: views.py:240 msgid "Edit the state" msgstr "Modifier l'état" -#: views.py:254 +#: views.py:255 msgid "The groups were edited." msgstr "Les groupes ont été modifiés." -#: views.py:276 views.py:1076 +#: views.py:277 views.py:1077 msgid "The password was changed." msgstr "Le mot de passe a été changé." -#: views.py:294 +#: views.py:295 #, python-format msgid "%s was removed from the group." msgstr "%s a été retiré du groupe." -#: views.py:304 +#: views.py:305 #, python-format msgid "%s is no longer superuser." msgstr "%s n'est plus superutilisateur." -#: views.py:317 +#: views.py:318 msgid "The service user was created." msgstr "L'utilisateur service a été créé." -#: views.py:321 +#: views.py:322 msgid "Create a service user" msgstr "Créer un utilisateur service" -#: views.py:338 +#: views.py:339 msgid "The service user was edited." msgstr "L'utilisateur service a été modifié." -#: views.py:341 +#: views.py:342 msgid "Edit a service user" msgstr "Modifier un utilisateur service" -#: views.py:353 +#: views.py:354 msgid "The service user was deleted." msgstr "L'utilisateur service a été supprimé." -#: views.py:373 +#: views.py:374 msgid "The ban was added." msgstr "Le bannissement a été ajouté." -#: views.py:381 +#: views.py:382 msgid "Warning: this user already has an active ban." msgstr "Attention : cet utilisateur a déjà un bannissement actif." -#: views.py:400 +#: views.py:401 msgid "The ban was edited." msgstr "Le bannissement a été modifié." -#: views.py:403 +#: views.py:404 msgid "Edit a ban" msgstr "Modifier un bannissement" -#: views.py:415 +#: views.py:416 msgid "The ban was deleted." msgstr "Le bannissement a été supprimé." -#: views.py:442 +#: views.py:443 msgid "The whitelist was added." msgstr "L'accès gracieux a été ajouté." -#: views.py:450 +#: views.py:451 msgid "Warning: this user already has an active whitelist." msgstr "Attention : cet utilisateur a déjà un accès gracieux actif." -#: views.py:453 +#: views.py:454 msgid "Add a whitelist" msgstr "Ajouter un accès gracieux" -#: views.py:473 +#: views.py:474 msgid "The whitelist was edited." msgstr "L'accès gracieux a été ajouté." -#: views.py:476 +#: views.py:477 msgid "Edit a whitelist" msgstr "Modifier un accès gracieux" -#: views.py:488 +#: views.py:489 msgid "The whitelist was deleted." msgstr "L'accès gracieux a été supprimé." -#: views.py:512 +#: views.py:513 msgid "The local email account was created." msgstr "Le compte mail local a été créé." -#: views.py:520 +#: views.py:521 msgid "Add a local email account" msgstr "Ajouter un compte mail local" -#: views.py:537 +#: views.py:538 msgid "The local email account was edited." msgstr "Le compte mail local a été modifié." -#: views.py:545 +#: views.py:546 msgid "Edit a local email account" msgstr "Modifier un compte mail local" -#: views.py:557 +#: views.py:558 msgid "The local email account was deleted." msgstr "Le compte mail local a été supprimé." -#: views.py:581 +#: views.py:582 msgid "The email settings were edited." msgstr "Les paramètres mail ont été modifiés." -#: views.py:590 +#: views.py:591 msgid "Edit the email settings" msgstr "Modifier les paramètres mail" -#: views.py:604 +#: views.py:605 msgid "The school was added." msgstr "L'établissement a été ajouté." -#: views.py:607 +#: views.py:608 msgid "Add a school" msgstr "Ajouter un établissement" -#: views.py:622 +#: views.py:623 msgid "The school was edited." msgstr "L'établissement a été modifié." -#: views.py:625 +#: views.py:626 msgid "Edit a school" msgstr "Modifier un établissement" -#: views.py:644 +#: views.py:645 msgid "The school was deleted." msgstr "L'établissement a été supprimé." -#: views.py:648 +#: views.py:649 #, python-format msgid "" "The school %s is assigned to at least one user, impossible to delete it." @@ -1274,51 +1300,51 @@ msgstr "" "L'établissement %s est affecté à au moins un utilisateur, impossible de le " "supprimer." -#: views.py:652 views.py:764 +#: views.py:653 views.py:765 msgid "Delete" msgstr "Supprimer" -#: views.py:665 +#: views.py:666 msgid "The shell was added." msgstr "L'interface système a été ajoutée." -#: views.py:668 +#: views.py:669 msgid "Add a shell" msgstr "Ajouter une interface système" -#: views.py:682 +#: views.py:683 msgid "The shell was edited." msgstr "L'interface système a été modifiée." -#: views.py:685 +#: views.py:686 msgid "Edit a shell" msgstr "Modifier une interface système" -#: views.py:697 +#: views.py:698 msgid "The shell was deleted." msgstr "L'interface système a été supprimée." -#: views.py:714 +#: views.py:715 msgid "The group of rights was added." msgstr "Le groupe de droits a été ajouté." -#: views.py:717 +#: views.py:718 msgid "Add a group of rights" msgstr "Ajouter un groupe de droits" -#: views.py:735 +#: views.py:736 msgid "The group of rights was edited." msgstr "Le groupe de droits a été modifié." -#: views.py:738 +#: views.py:739 msgid "Edit a group of rights" msgstr "Modifier un groupe de droits" -#: views.py:755 +#: views.py:756 msgid "The group of rights was deleted." msgstr "Le groupe de droits a été supprimé." -#: views.py:760 +#: views.py:761 #, python-format msgid "" "The group of rights %s is assigned to at least one user, impossible to " @@ -1327,36 +1353,52 @@ msgstr "" "Le groupe de droits %s est affecté à au moins un utilisateur, impossible de " "le supprimer." -#: views.py:788 +#: views.py:789 msgid "Archiving" msgstr "Archivage" -#: views.py:789 +#: views.py:790 #, python-format msgid "%s users were archived." msgstr "%s utilisateurs ont été archivés." -#: views.py:1038 +#: views.py:1039 msgid "The user doesn't exist." msgstr "L'utilisateur n'existe pas." -#: views.py:1040 views.py:1048 +#: views.py:1041 views.py:1049 msgid "Reset" msgstr "Réinitialiser" -#: views.py:1045 +#: views.py:1046 msgid "An email to reset the password was sent." msgstr "Un mail pour réinitialiser le mot de passe a été envoyé." -#: views.py:1062 +#: views.py:1063 msgid "Error: please contact an admin." msgstr "Erreur : veuillez contacter un admin." -#: views.py:1074 +#: views.py:1075 msgid "Password reset" msgstr "Réinitialisation du mot de passe" -#: views.py:1114 views.py:1138 views.py:1153 +#: views.py:1089 +msgid "Incorrect URL, or already registered device" +msgstr "URL incorrect, ou appareil déjà enregistré" + +#: views.py:1095 +msgid "" +"Successful registration! Please disconnect and reconnect your Ethernet cable " +"to get Internet access." +msgstr "" +"Enregistrement réussi ! Veuillez débrancher et rebrancher votre câble Ethernet" +" pour avoir accès à Internet." + +#: views.py:1104 +msgid "Register device or room" +msgstr "Enregistrer un appareil ou une chambre" + +#: views.py:1139 views.py:1163 views.py:1178 msgid "The mailing list doesn't exist." msgstr "La liste de diffusion n'existe pas." diff --git a/users/templates/users/plugin_out.html b/users/templates/users/plugin_out.html index a6ebf83f..21666310 100644 --- a/users/templates/users/plugin_out.html +++ b/users/templates/users/plugin_out.html @@ -27,11 +27,12 @@ with this program; if not, write to the Free Software Foundation, Inc., {% load massive_bootstrap_form %} {% load static %} {% load i18n %} + {% block title %}{% trans "Users" %}{% endblock %} {% block content %} -

Votre machine et votre chambre ont bien été enregistrées. Merci de débrancher et rebrancher votre cable RJ45 pour bénéficier d'une connexion filaire

+

{% trans "Your machine and your room were successfully registered. Please disconnect and reconnect your Ethernet cable to benefit from a wired connection." %}

rj45_in_out

diff --git a/users/views.py b/users/views.py index 86cfa767..360e256b 100644 --- a/users/views.py +++ b/users/views.py @@ -1086,13 +1086,15 @@ def process_passwd(request, req): def initial_register(request): u_form = InitialRegisterForm(request.POST or None, user=request.user, switch_ip=request.GET.get('switch_ip', None), switch_port=request.GET.get('switch_port', None), client_mac=request.GET.get('client_mac', None)) if not u_form.fields: - messages.error(request, _("Incorrect url, or already registered device")) + messages.error(request, _("Incorrect URL, or already registered device")) return redirect(reverse( 'users:profil', kwargs={'userid': str(request.user.id)} )) if u_form.is_valid(): - messages.success(request, _("Successfull register ! Please plug off and plug again your cable to get internet access")) + messages.success(request, _("Successful registration! Please" + " disconnect and reconnect your Ethernet" + " cable to get Internet access.")) return form( {}, 'users/plugin_out.html',