diff --git a/Blazor/Blazor/Models/AdministratorModel.cs b/Blazor/Blazor/Models/AdministratorModel.cs index 89e5042..91d1dd6 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,14 @@ 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")] + [RegularExpression(@"^[^\s]+$", ErrorMessage = "Le champ ne doit pas contenir d'espaces.")] + [StringLength(255, ErrorMessage = "{0} length must be between {2} and {1}.", MinimumLength = 6)] 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..a8da40a 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,14 @@ 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")] + [RegularExpression(@"^[^\s]+$", ErrorMessage = "Le champ ne doit pas contenir d'espaces.")] + [StringLength(255, ErrorMessage = "{0} length must be between {2} and {1}.", MinimumLength = 6)] 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; }