diff --git a/frontend/static/js/lang/en.json b/frontend/static/js/lang/en.json index 86c070a..9241455 100644 --- a/frontend/static/js/lang/en.json +++ b/frontend/static/js/lang/en.json @@ -53,5 +53,29 @@ "TournamentCreateTournamentName": "Tournament Name", "TournamentCreateNbPlayerByGame": "Number of player in a game", "TournamentCreateNbPlayer": "Number of players in the tournament", - "passwordSaved": "New password has been saved." + + "settingsWindowTitle": "Settings", + "settingsAvatarTitle": "Avatar", + "settingsAvatarSave": "Save", + "settingsAvatarDelete": "Delete", + "settingsAvatarSaved": "Avatar saved.", + "settingsAvatarDeleted": "Avatar deleted.", + "settingsAvatarDeleteError": "Something went wrong.", + "settingsAvatarTooLarge": "Image is too large.", + "settingsTitle": "Account settings", + "settingsUsername": "Username", + "settingsUsernameSave": "Save", + "settingsUsernameSaved": "Username saved.", + "settingsPasswordTitle": "Change password", + "settingsCurrentPassword": "Current password", + "settingsNewPassword": "New password", + "settingsRepeatNewPassword": "Repeat new password", + "settingsPasswordSave": "Save", + "settingsPasswordSaved": "New password has been saved.", + "settingsDeleteButton": "Delete account", + "settingsDeleteTitle": "Are you sure ? This action is permanent !!", + "settingsDeleteConfirm": "Please enter your password to confirm deletion:", + "settingsDeleteInput": "Password", + "settingsDeleteCancel": "Cancel", + "settingsDeleteSuccess": "Account successfully deleted." } diff --git a/frontend/static/js/lang/fr.json b/frontend/static/js/lang/fr.json index 5f39514..5fef67e 100644 --- a/frontend/static/js/lang/fr.json +++ b/frontend/static/js/lang/fr.json @@ -53,5 +53,29 @@ "TournamentCreateTournamentName": "Nom du tournoi", "TournamentCreateNbPlayerByGame": "Nombre de joueurs en jeu", "TournamentCreateNbPlayer": "Nombre de joueurs dans le tournoi", - "passwordSaved": "Nouveau mot de passe enregistré avec succès." + + "settingsWindowTitle": "Paramètres", + "settingsAvatarTitle": "Avatar", + "settingsAvatarSave": "Enregister", + "settingsAvatarDelete": "Supprimer", + "settingsAvatarSaved": "Avatar enregistré.", + "settingsAvatarDeleted": "Avatar supprimé.", + "settingsAvatarDeleteError": "Une erreur s'est produite.", + "settingsAvatarTooLarge": "L'image est trop lourde", + "settingsTitle": "Paramètres de compte", + "settingsUsername": "Nom d'utilisateur", + "settingsUsernameSave": "Enregister", + "settingsUsernameSaved": "Now d'utilisateur enregistré.", + "settingsPasswordTitle": "Modifier le mot de passe", + "settingsCurrentPassword": "Mot de passe actuel", + "settingsNewPassword": "Nouveau mot de passe", + "settingsRepeatNewPassword": "Répéter nouveau mot de passe", + "settingsPasswordSave": "Enregister", + "settingsPasswordSaved": "Nouveau mot de passe enregistré.", + "settingsDeleteButton": "Supprimer le compte", + "settingsDeleteTitle": "Êtes vous sûr ? Cette action est permanente !!", + "settingsDeleteConfirm": "Mot de passe nécessaire pour confirmer la suppression:", + "settingsDeleteInput": "Mot de passe", + "settingsDeleteCancel": "Annuler", + "settingsDeleteSuccess": "Compte supprimé avec succès." } diff --git a/frontend/static/js/lang/tp.json b/frontend/static/js/lang/tp.json index 679da08..e19aa70 100644 --- a/frontend/static/js/lang/tp.json +++ b/frontend/static/js/lang/tp.json @@ -52,5 +52,30 @@ "TournamentCreateButton": "jo ala pona li jo e ijo li pali e ijo li pana e ijo li toki e ijo li kama jo e ijo li kama pali e ijo li kama pana e ijo li kama toki e ijo li kama jo e ijo li kama pali e ijo li kama pana e ijo", "TournamentCreateTournamentName": "ilo kipisi", "TournamentCreateNbPlayerByGame": "ilo jan lon poki pi lon anpa en sike pimeja li kama.", - "TournamentCreateNbPlayer": "nanpa pi jan pona lon soweli musi" + "TournamentCreateNbPlayer": "nanpa pi jan pona lon soweli musi", + + "settingsWindowTitle": "Ilo open", + "settingsAvatarTitle": "Jan ante", + "settingsAvatarSave": "O lukin", + "settingsAvatarDelete": "O pana e tawa ala", + "settingsAvatarSaved": "Jan ante li kama.", + "settingsAvatarDeleted": "Jan ante li pakala e ijo.", + "settingsAvatarDeleteError": "Ijo li pakala.", + "settingsAvatarTooLarge": "Ijo li suli mute.", + "settingsTitle": "Ilo pi ijo sina", + "settingsUsername": "Nimi jan", + "settingsUsernameSave": "O lukin", + "settingsUsernameSaved": "Nimi jan li kama.", + "settingsPasswordTitle": "O ante e nimi pi toki anu nimi", + "settingsCurrentPassword": "Nimi pi tenpo ni", + "settingsNewPassword": "Nimi sin", + "settingsRepeatNewPassword": "Nimi sin", + "settingsPasswordSave": "O lukin", + "settingsPasswordSaved": "Nimi sin li kama.", + "settingsDeleteButton": "O pakala e ilo mi", + "settingsDeleteTitle": "Sina wile ala wile ? Ni li ike mute !!", + "settingsDeleteConfirm": "O toki e nimi sina lon insa.", + "settingsDeleteInput": "Nimi", + "settingsDeleteCancel": "O pana tawa ala", + "settingsDeleteSuccess": "Ijo sina li pakala mute." } diff --git a/frontend/static/js/views/SettingsView.js b/frontend/static/js/views/SettingsView.js index dba63c6..64364a4 100644 --- a/frontend/static/js/views/SettingsView.js +++ b/frontend/static/js/views/SettingsView.js @@ -6,7 +6,7 @@ export default class extends AbstractAuthenticatedView { constructor(params) { - super(params, 'Settings'); + super(params, lang.get('settingsWindowTitle')); this.PROFILE_PICTURE_MAX_SIZE = 2 * 1024 * 1024; // 2MB } @@ -129,7 +129,7 @@ export default class extends AbstractAuthenticatedView if (!error) { passwordDetail.classList.remove('text-danger'); passwordDetail.classList.add('text-success'); - passwordDetail.innerHTML = lang.get('passwordSaved'); + passwordDetail.innerHTML = lang.get('settingsPasswordSaved'); setTimeout(_ => passwordDetail.innerHTML = '', 3000); clearElements('value', [currentPasswordInput, newPasswordInput, newPassword2Input]); } else { @@ -158,7 +158,7 @@ export default class extends AbstractAuthenticatedView if (!error) { usernameDetail.classList.remove('text-danger', 'd-none'); usernameDetail.classList.add('text-success'); - usernameDetail.innerHTML = 'Username Saved.'; + usernameDetail.innerHTML = lang.get('settingsUsernameSaved'); setTimeout(_ => usernameDetail.add('d-none'), 2000); document.getElementById('usernameSave').classList.add('disabled'); } else { @@ -182,7 +182,7 @@ export default class extends AbstractAuthenticatedView if (selectedFile.size > this.PROFILE_PICTURE_MAX_SIZE) { avatarDetail.classList.remove('text-success'); avatarDetail.classList.add('text-danger'); - avatarDetail.innerHTML = 'Image is too large.'; //to translate + avatarDetail.innerHTML = lang.get('settingsAvatarTooLarge'); return; } @@ -190,7 +190,7 @@ export default class extends AbstractAuthenticatedView if (!error) { avatarDetail.classList.remove('text-danger'); avatarDetail.classList.add('text-success'); - avatarDetail.innerHTML = 'Avatar saved.'; //to translate + avatarDetail.innerHTML = lang.get('settingsAvatarSaved'); setTimeout(_ => avatarDetail.innerHTML = '', 2000); document.getElementById('avatarDelete').classList.remove('d-none'); document.getElementById('avatarUpload').classList.add('d-none'); @@ -213,13 +213,13 @@ export default class extends AbstractAuthenticatedView if (!error) { avatarDetail.classList.remove('text-danger'); avatarDetail.classList.add('text-success'); - avatarDetail.innerHTML = 'Avatar deleted.'; //to translate + avatarDetail.innerHTML = lang.get('settingsAvatarDeleted'); setTimeout(_ => avatarDetail.innerHTML = '', 2000); document.getElementById('avatarDelete').classList.add('d-none'); } else { avatarDetail.classList.remove('text-success'); avatarDetail.classList.add('text-danger'); - avatarDetail.innerHTML = 'Something went wrong.'; //to translate + avatarDetail.innerHTML = lang.get('settingsAvatarDeleteError'); } this.displayAvatar(); } @@ -241,7 +241,7 @@ export default class extends AbstractAuthenticatedView const error = await client.account.delete(password); if (!error) { passwordDetail.classList.replace('text-danger', 'text-success'); - passwordDetail.innerHTML = 'Account successfully deleted.'; + passwordDetail.innerHTML = lang.get('settingsDeleteSuccess'); setTimeout(_ => { bootstrap.Modal.getInstance(document.getElementById('deleteModal')).hide(); navigateTo('/login'); @@ -259,68 +259,68 @@ export default class extends AbstractAuthenticatedView return /* HTML */ `
-

Avatar

+

${lang.get('settingsAvatarTitle')}

- - + +
-

Account settings

+

${lang.get('settingsTitle')}

- - + +
- +
-
Change password
+
${lang.get('settingsPasswordTitle')}
- - + +
- - + +
- - + +
- +
- +