From 0f7f8626cb62dc9727a3cacb858015fe54c1b0a9 Mon Sep 17 00:00:00 2001 From: "maxence.guitard" Date: Mon, 15 Jan 2024 09:13:38 +0100 Subject: [PATCH] =?UTF-8?q?feat=20:=20v=C3=A9rification=20add=20et=20updat?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Blazor/Blazor/Models/AdministratorModel.cs | 6 ++++++ Blazor/Blazor/Models/AnswerModel.cs | 7 ++++++- Blazor/Blazor/Models/PlayerModel.cs | 6 ++++++ Blazor/Blazor/Models/QuestionModel.cs | 6 ++++++ Blazor/Blazor/Services/DataLocalService.cs | 2 -- 5 files changed, 24 insertions(+), 3 deletions(-) diff --git a/Blazor/Blazor/Models/AdministratorModel.cs b/Blazor/Blazor/Models/AdministratorModel.cs index 89e5042..0fdf7c4 100644 --- a/Blazor/Blazor/Models/AdministratorModel.cs +++ b/Blazor/Blazor/Models/AdministratorModel.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Cryptography.KeyDerivation; using Microsoft.AspNetCore.Identity; using System.Security.Cryptography; +using System.ComponentModel.DataAnnotations; using System.Text; namespace Blazor.Models; @@ -8,7 +9,12 @@ namespace Blazor.Models; public class AdministratorModel { public int Id { get; set; } + + [Required(ErrorMessage = "Username is required")] + [StringLength(50, ErrorMessage = "Username is too long.")] public string Username { get; set; } + + [Required(ErrorMessage = "Password is required")] public string HashedPassword { get; set; } public void HashPassword(string password) diff --git a/Blazor/Blazor/Models/AnswerModel.cs b/Blazor/Blazor/Models/AnswerModel.cs index ec2d19c..88753e9 100644 --- a/Blazor/Blazor/Models/AnswerModel.cs +++ b/Blazor/Blazor/Models/AnswerModel.cs @@ -1,9 +1,14 @@ -namespace Blazor.Models; +using System.ComponentModel.DataAnnotations; + +namespace Blazor.Models; public class AnswerModel { public int Id { get; set; } + + [Required(ErrorMessage = "Content is required")] + [StringLength(40, ErrorMessage = "Content is too long.")] public string? Content { get; set; } public int? IdQuestion { get; set; } public AnswerModel(int id) diff --git a/Blazor/Blazor/Models/PlayerModel.cs b/Blazor/Blazor/Models/PlayerModel.cs index 43c37a0..7cdd986 100644 --- a/Blazor/Blazor/Models/PlayerModel.cs +++ b/Blazor/Blazor/Models/PlayerModel.cs @@ -1,4 +1,5 @@ using Microsoft.AspNetCore.Cryptography.KeyDerivation; +using System.ComponentModel.DataAnnotations; using System.Security.Cryptography; using System.Text; @@ -7,7 +8,12 @@ namespace Blazor.Models; public class PlayerModel { public int Id { get; set; } + + [Required(ErrorMessage = "Nickname is required")] + [StringLength(50, ErrorMessage = "Nickname is too long.")] public string Nickname { get; set; } + + [Required(ErrorMessage = "Password is required")] public string HashedPassword { get; set; } public void HashPassword(string password) diff --git a/Blazor/Blazor/Models/QuestionModel.cs b/Blazor/Blazor/Models/QuestionModel.cs index 4089498..2c1e606 100644 --- a/Blazor/Blazor/Models/QuestionModel.cs +++ b/Blazor/Blazor/Models/QuestionModel.cs @@ -1,9 +1,15 @@ namespace Blazor.Models; +using System.ComponentModel.DataAnnotations; public class QuestionModel { public int Id { get; set; } + + [Required(ErrorMessage = "Content is required")] + [StringLength(50, ErrorMessage = "Content is too long.")] public string Content { get; set; } + + [Required(ErrorMessage = "Chapter is required")] public int IdChapter { get; set; } public int IdAnswerGood { get; set; } public int Difficulty { get; set; } diff --git a/Blazor/Blazor/Services/DataLocalService.cs b/Blazor/Blazor/Services/DataLocalService.cs index 8b5542c..fd3cd03 100644 --- a/Blazor/Blazor/Services/DataLocalService.cs +++ b/Blazor/Blazor/Services/DataLocalService.cs @@ -62,7 +62,6 @@ namespace Blazor.Services await _localStorage.SetItemAsync("data", currentData); } - public async Task Add(ChapterModel model) { // Get the current data @@ -77,7 +76,6 @@ namespace Blazor.Services Id = model.Id, Name = model.Name }); - // Save the data await _localStorage.SetItemAsync("data", currentData);