diff --git a/WF-WebAdmin/WF-WebAdmin/Controllers/CultureController.cs b/WF-WebAdmin/WF-WebAdmin/Controllers/CultureController.cs new file mode 100644 index 0000000..834b808 --- /dev/null +++ b/WF-WebAdmin/WF-WebAdmin/Controllers/CultureController.cs @@ -0,0 +1,34 @@ +using Microsoft.AspNetCore.Localization; +using Microsoft.AspNetCore.Mvc; + +namespace WF_WebAdmin.Controllers +{ + /// + /// The culture controller. + /// + [Route("[controller]/[action]")] + public class CultureController : Controller + { + /// + /// Sets the culture. + /// + /// The culture. + /// The redirect URI. + /// + /// The action result. + /// + public IActionResult SetCulture(string culture, string redirectUri) + { + if (culture != null) + { + // Define a cookie with the selected culture + this.HttpContext.Response.Cookies.Append( + CookieRequestCultureProvider.DefaultCookieName, + CookieRequestCultureProvider.MakeCookieValue( + new RequestCulture(culture))); + } + + return this.LocalRedirect(redirectUri); + } + } +} diff --git a/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor b/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor index 1cd75b6..099d4dd 100644 --- a/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor +++ b/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor @@ -1,11 +1,11 @@ @page "/Accueil" - +@using WF_WebAdmin.Model Accueil -

Bienvenu sur le tableau de bord de What the Fantasy

+

@Localizer["AccueilWelcome"]

-

Citation du jour

+

@Localizer["AccueilTitle"]

@if (Dailyquote != null) { @@ -15,8 +15,8 @@

@quote.Content

-

Personnage : @quote.Charac

-

Source : @quote.TitleSrc

+

@Localizer["AccueilCharacter"] @quote.Charac

+

@Localizer["AccueilSrc"] @quote.TitleSrc

} @@ -24,9 +24,9 @@ } else { -

Aucune citation du jour

+

@Localizer["AccueilNoQuote"]

} -

Changement de la citation manuellement

- +

@Localizer["AccueilManualChange"]

+ diff --git a/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor.cs b/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor.cs index 379853e..797b255 100644 --- a/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor.cs +++ b/WF-WebAdmin/WF-WebAdmin/Pages/Accueil.razor.cs @@ -1,5 +1,6 @@ using Blazorise.DataGrid; using Microsoft.AspNetCore.Components; +using Microsoft.Extensions.Localization; using WF_WebAdmin.Model; @@ -15,6 +16,8 @@ namespace WF_WebAdmin.Pages [Inject] public NavigationManager NavigationManager { get; set; } + [Inject] + public IStringLocalizer Localizer { get; set; } protected override async Task OnInitializedAsync() { Dailyquote = await Http.GetFromJsonAsync($"{NavigationManager.BaseUri}fake-dataDailyQuote.json"); diff --git a/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor b/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor index c0c86ce..18e75cd 100644 --- a/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor +++ b/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor @@ -1,36 +1,37 @@ @page "/deleteuser" +@using WF_WebAdmin.Model Gestion utilisateur -

Gestion des utilisateurs

+

@Localizer["TitleUser"]

@if(users == null) { -

Aucun utilisateur présent sur le site

+

@Localizer["UserNobody"]

} else { -

Utilisateurs présents:

+

@Localizer["UserHere"]

@foreach (var user in users) {
@if (user.IsAdmin) { -

Nom d'utilisateur : @user.Name (Administrateur)

+

@Localizer["UserName"] @user.Name (@Localizer["UserAdmin"])

} else { -

Nom d'utilisateur : @user.Name

+

@Localizer["UserName"] @user.Name

} -

Email de l'utilisateur : @user.Email

-

Date de création du compte : @user.DateCreation.ToShortDateString()

+

@Localizer["UserEmail"] @user.Email

+

@Localizer["UserDate"] @user.DateCreation.ToShortDateString()

@if(user.Comments != null) { -

▶ Commentaire(s) posté(s) par @user.Name :

+

▶ @Localizer["UserComment"] @user.Name :

@foreach (var comment in user.Comments) {

@comment.DateCreation.ToShortDateString() - @comment.Text

@@ -38,18 +39,18 @@ else } else { -

Aucun commentaire sur le site

+

@Localizer["UserNoComment"]

} - + @if (!user.IsAdmin) { - + } else { - + }
@@ -59,9 +60,9 @@ else {
-

Êtes-vous sûr de vouloir supprimer cet utilisateur ?

- - +

@Localizer["UserPopupTitle"]

+ +
} @@ -71,9 +72,9 @@ else {
-

Êtes-vous sûr de vouloir changer le rôle de cet utilisateur ?

- - +

@Localizer["UserPopupTitle2"]

+ +
} diff --git a/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor.cs b/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor.cs index b14bdec..0903099 100644 --- a/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor.cs +++ b/WF-WebAdmin/WF-WebAdmin/Pages/DeleteUser.razor.cs @@ -1,6 +1,9 @@ using Microsoft.AspNetCore.Components; using Microsoft.Extensions.Configuration.UserSecrets; +using Microsoft.Extensions.Localization; +using System.Collections.Generic; using WF_WebAdmin.Model; +using WF_WebAdmin.Service; namespace WF_WebAdmin.Pages { @@ -9,6 +12,9 @@ namespace WF_WebAdmin.Pages private List users; + [Inject] + public IStringLocalizer Localizer { get; set; } + private bool showPopupDelete = false; private User userToDelete = null; diff --git a/WF-WebAdmin/WF-WebAdmin/Pages/Login.razor b/WF-WebAdmin/WF-WebAdmin/Pages/Login.razor index 411b655..f6089d6 100644 --- a/WF-WebAdmin/WF-WebAdmin/Pages/Login.razor +++ b/WF-WebAdmin/WF-WebAdmin/Pages/Login.razor @@ -1,22 +1,24 @@ @page "/" @using WF_WebAdmin.Model +@using System.Globalization -

▶ Connexion ◀

+

▶@Localizer["LoginTitle"]◀