Add modify/update on click button

pull/23/head
tomivt 5 months ago
parent 750785032b
commit b3f3133e1a

@ -1,11 +1,10 @@
@page "/deleteuser" @page "/deleteuser"
@using WF_WebAdmin.Model
<PageTitle>Gestion utilisateur</PageTitle> <PageTitle>Gestion utilisateur</PageTitle>
<h3>Gestion des utilisateurs</h3> <h3>Gestion des utilisateurs</h3>
@if (users != null) @if (users != null)
{ {
<p>Utilisateurs présents:</p> <p>Utilisateurs présents:</p>
@ -17,29 +16,38 @@
<p class="pseudo"><strong>Nom d'utilisateur :</strong> @user.Name</p> <p class="pseudo"><strong>Nom d'utilisateur :</strong> @user.Name</p>
<p class="mail"><strong>Email de l'utilisateur :</strong> @user.Email</p> <p class="mail"><strong>Email de l'utilisateur :</strong> @user.Email</p>
<p class="dateCrea"><strong>Date de création de l'utilisateur :</strong> @user.DateCreation.ToShortDateString()</p> <p class="dateCrea"><strong>Date de création de l'utilisateur :</strong> @user.DateCreation.ToShortDateString()</p>
<button id="DeleteButton" @onclick="() => ShowConfirmation(user)">Supprimer l'utilisateur</button> <button id="DeleteButton" @onclick="() => ShowDeleteConfirmation(user)">Supprimer l'utilisateur</button>
<button id="ModifyButton" @onclick="() => ShowModifyConfirmation(user)">Modifier l'utilisateur</button>
</div> </div>
} }
<!-- Fenêtre de confirmation --> @if (showDeletePopup)
@if (showPopup)
{ {
<div class="divPopup"> <div class="divPopup">
<div class="contentPopup"> <div class="contentPopup">
<p>Êtes-vous sûr de vouloir supprimer cet utilisateur ?</p> <p>Êtes-vous sûr de vouloir supprimer cet utilisateur ?</p>
<button @onclick="() => RemoveUser()">Confirmer</button> <button @onclick="RemoveUser">Confirmer</button>
<button @onclick="ClosePopup">Annuler</button>
</div>
</div>
}
@if (showModifyPopup)
{
<div class="divPopup">
<div class="contentPopup">
<p>Modifier les informations de l'utilisateur :</p>
<label>Nom d'utilisateur:</label>
<input type="text" @bind="selectedUser.Name"/>
<label>Email:</label>
<input type="email" @bind="selectedUser.Email" />
<label>Image:</label>
<input type="text" @bind="selectedUser.Image" />
<button @onclick="ModifyUser">Sauvegarder</button>
<button @onclick="ClosePopup">Annuler</button> <button @onclick="ClosePopup">Annuler</button>
</div> </div>
</div> </div>
} }
} }
else else
{ {
<p><strong>Aucun utilisateurs présents sur le site</strong></p> <p><strong>Aucun utilisateurs présents sur le site</strong></p>
} }
@code {
}

@ -7,8 +7,10 @@ namespace WF_WebAdmin.Pages
{ {
public partial class DeleteUser public partial class DeleteUser
{ {
private bool showPopup = false; private bool showDeletePopup = false;
private bool showModifyPopup = false;
private User userToDelete = null; private User userToDelete = null;
private User selectedUser;
[Inject] [Inject]
public HttpClient Http { get; set; } public HttpClient Http { get; set; }
@ -25,27 +27,41 @@ namespace WF_WebAdmin.Pages
users = await userService.GetUsersJson(); users = await userService.GetUsersJson();
} }
private void ShowConfirmation(User user) private void ShowDeleteConfirmation(User user)
{ {
// Afficher la modale et mémoriser l'utilisateur à supprimer // Afficher la modale et mémoriser l'utilisateur à supprimer
userToDelete = user; userToDelete = user;
showPopup = true; showDeletePopup = true;
}
private void ShowModifyConfirmation(User user)
{
// Afficher la modale et mémoriser l'utilisateur à supprimer
selectedUser = user;
showModifyPopup = true;
} }
private async Task RemoveUser() private async Task RemoveUser()
{ {
if (userToDelete != null) if (userToDelete != null)
{ {
users.RemoveAll(u => u.Id == userToDelete.Id);
userService = new UserServiceStub($"fake-dataUser.json"); userService = new UserServiceStub($"fake-dataUser.json");
await userService.DeleteUserJson(userToDelete.Id); await userService.DeleteUserJson(userToDelete.Id);
ClosePopup(); ClosePopup();
} }
} }
private async Task ModifyUser()
{
userService = new UserServiceStub($"fake-dataUser.json");
await userService.UpdateUserJson(selectedUser);
ClosePopup();
}
private void ClosePopup() private void ClosePopup()
{ {
showPopup = false; showDeletePopup = false;
showModifyPopup = false;
} }
} }

@ -105,7 +105,7 @@ button {
left: 0; left: 0;
width: 100%; width: 100%;
height: 100%; height: 100%;
background-color: white border-radius:20px; border-radius:20px;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
@ -113,10 +113,11 @@ button {
} }
.contentPopup { .contentPopup {
background-color: white;
padding: 20px; padding: 20px;
border-radius: 20px; border-radius: 20px;
border: 3px solid black;
display: flex; display: flex;
background-color: white;
flex-direction: column; flex-direction: column;
gap: 10px; gap: 10px;
width: 300px; width: 300px;

@ -2,8 +2,8 @@
{ {
"Id": 4, "Id": 4,
"Image": "https://tse2.mm.bing.net/th/id/OIP.3vXkEUJ9J8s-GsnBC6I3KAHaF0?w=185\u0026h=180\u0026c=7\u0026r=0\u0026o=5\u0026pid=1.7", "Image": "https://tse2.mm.bing.net/th/id/OIP.3vXkEUJ9J8s-GsnBC6I3KAHaF0?w=185\u0026h=180\u0026c=7\u0026r=0\u0026o=5\u0026pid=1.7",
"Name": "dev", "Name": "jesus",
"Email": "dev@gmail.com", "Email": "jesus@allah.coran",
"DateCreation": "2024-10-10T00:00:00" "DateCreation": "2024-10-10T00:00:00"
} }
] ]
Loading…
Cancel
Save