From f830ab71998127b84628a5b9b9719b2eb0dbb130 Mon Sep 17 00:00:00 2001 From: "louis.guichard-montguers" Date: Sun, 2 Feb 2025 13:30:36 +0100 Subject: [PATCH] suppresion ancienne class meteo + doc sur les Models --- .../WF-WebAdmin/Data/WeatherForecast.cs | 13 ---- .../Data/WeatherForecastService.cs | 20 ------ WF-WebAdmin/WF-WebAdmin/Model/Character.cs | 14 +++- WF-WebAdmin/WF-WebAdmin/Model/Commentary.cs | 13 +++- WF-WebAdmin/WF-WebAdmin/Model/DailyQuote.cs | 10 +++ WF-WebAdmin/WF-WebAdmin/Model/Quiz.cs | 72 +++++++++++++++++-- WF-WebAdmin/WF-WebAdmin/Model/QuizModel.cs | 27 +++++++ WF-WebAdmin/WF-WebAdmin/Model/Quote.cs | 72 +++++++++++++++++-- WF-WebAdmin/WF-WebAdmin/Model/QuoteModel.cs | 50 +++++++++++-- WF-WebAdmin/WF-WebAdmin/Model/Source.cs | 18 ++++- WF-WebAdmin/WF-WebAdmin/Model/User.cs | 45 +++++++++++- WF-WebAdmin/WF-WebAdmin/Model/UserLogin.cs | 44 ++++++++++-- 12 files changed, 337 insertions(+), 61 deletions(-) delete mode 100644 WF-WebAdmin/WF-WebAdmin/Data/WeatherForecast.cs delete mode 100644 WF-WebAdmin/WF-WebAdmin/Data/WeatherForecastService.cs diff --git a/WF-WebAdmin/WF-WebAdmin/Data/WeatherForecast.cs b/WF-WebAdmin/WF-WebAdmin/Data/WeatherForecast.cs deleted file mode 100644 index ec2cf69..0000000 --- a/WF-WebAdmin/WF-WebAdmin/Data/WeatherForecast.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace WF_WebAdmin.Data -{ - public class WeatherForecast - { - public DateTime Date { get; set; } - - public int TemperatureC { get; set; } - - public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); - - public string? Summary { get; set; } - } -} diff --git a/WF-WebAdmin/WF-WebAdmin/Data/WeatherForecastService.cs b/WF-WebAdmin/WF-WebAdmin/Data/WeatherForecastService.cs deleted file mode 100644 index 13e684c..0000000 --- a/WF-WebAdmin/WF-WebAdmin/Data/WeatherForecastService.cs +++ /dev/null @@ -1,20 +0,0 @@ -namespace WF_WebAdmin.Data -{ - public class WeatherForecastService - { - private static readonly string[] Summaries = new[] - { - "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" - }; - - public Task GetForecastAsync(DateTime startDate) - { - return Task.FromResult(Enumerable.Range(1, 5).Select(index => new WeatherForecast - { - Date = startDate.AddDays(index), - TemperatureC = Random.Shared.Next(-20, 55), - Summary = Summaries[Random.Shared.Next(Summaries.Length)] - }).ToArray()); - } - } -} diff --git a/WF-WebAdmin/WF-WebAdmin/Model/Character.cs b/WF-WebAdmin/WF-WebAdmin/Model/Character.cs index a5e1d87..9f6bd81 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/Character.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/Character.cs @@ -1,8 +1,18 @@ namespace WF_WebAdmin.Model { + /// + /// Représente un personnage dans le système. + /// public class Character { - public int id_caracter { get; set; } - public string caracter { get; set; } + /// + /// Identifiant unique du personnage. + /// + public int id_caracter { get; set; } + + /// + /// Nom ou description du personnage. + /// + public string caracter { get; set; } } } diff --git a/WF-WebAdmin/WF-WebAdmin/Model/Commentary.cs b/WF-WebAdmin/WF-WebAdmin/Model/Commentary.cs index acb43ef..60e82a6 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/Commentary.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/Commentary.cs @@ -1,10 +1,21 @@ namespace WF_WebAdmin.Model { + /// + /// Représente un commentaire dans le système. + /// public class Commentary { //public int Id { get; set; } //public int IdUser { get; set; } - public string Text { get; set; } + + /// + /// Le texte du commentaire. + /// + public string Text { get; set; } + + /// + /// La date de création du commentaire. + /// public DateTime DateCreation { get; set; } } } diff --git a/WF-WebAdmin/WF-WebAdmin/Model/DailyQuote.cs b/WF-WebAdmin/WF-WebAdmin/Model/DailyQuote.cs index a60d8a7..aab22b2 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/DailyQuote.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/DailyQuote.cs @@ -1,9 +1,19 @@ namespace WF_WebAdmin.Model { + /// + /// Représente une citation quotidienne dans le système. + /// public class DailyQuote { + /// + /// Identifiant unique de la citation quotidienne. + /// public int Id { get; set; } + /// + /// Initialise une nouvelle instance de la classe . + /// + /// L'identifiant de la citation quotidienne. public DailyQuote(int Id) { this.Id = Id; diff --git a/WF-WebAdmin/WF-WebAdmin/Model/Quiz.cs b/WF-WebAdmin/WF-WebAdmin/Model/Quiz.cs index a72be08..1df8017 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/Quiz.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/Quiz.cs @@ -1,17 +1,67 @@ namespace WF_WebAdmin.Model { + /// + /// Représente un quiz avec une question et plusieurs réponses possibles. + /// public class Quiz { + /// + /// Identifiant unique du quiz. + /// public int Id { get; set; } + + /// + /// La question posée dans le quiz. + /// public string Question { get; set; } + + /// + /// Réponse A possible pour le quiz. + /// public string AnswerA { get; set; } + + /// + /// Réponse B possible pour le quiz. + /// public string AnswerB { get; set; } + + /// + /// Réponse C possible pour le quiz. + /// public string AnswerC { get; set; } + + /// + /// Réponse D possible pour le quiz. + /// public string AnswerD { get; set; } + + /// + /// Réponse correcte au quiz (A, B, C ou D). + /// public string CAnswer { get; set; } + + /// + /// Indique si le quiz est valide. + /// public bool IsValid { get; set; } + + /// + /// Proposition de l'utilisateur pour valider le quiz. + /// public string UserProposition { get; set; } + /// + /// Initialise une nouvelle instance de la classe . + /// + /// L'identifiant du quiz. + /// La question posée dans le quiz. + /// Réponse A possible. + /// Réponse B possible. + /// Réponse C possible. + /// Réponse D possible. + /// Réponse correcte (A, B, C ou D). + /// Indique si le quiz est valide. + /// Proposition de l'utilisateur. public Quiz(int id, string question, string answerA, string answerB, string answerC, string answerD, string cAnswer, bool isValid, string userProposition) { Id = id; @@ -25,8 +75,18 @@ namespace WF_WebAdmin.Model UserProposition = userProposition; } - public Quiz(int id, string question, string answerA, string answerB, string answerC, string answerD, string cAnswer) - { + /// + /// Initialise une nouvelle instance de la classe avec une valeur par défaut pour la validité et la proposition de l'utilisateur. + /// + /// L'identifiant du quiz. + /// La question posée dans le quiz. + /// Réponse A possible. + /// Réponse B possible. + /// Réponse C possible. + /// Réponse D possible. + /// Réponse correcte (A, B, C ou D). + public Quiz(int id, string question, string answerA, string answerB, string answerC, string answerD, string cAnswer) + { Id = id; Question = question; AnswerA = answerA; @@ -35,10 +95,12 @@ namespace WF_WebAdmin.Model AnswerD = answerD; CAnswer = cAnswer; IsValid = true; - UserProposition = "Admin"; + UserProposition = "Admin"; } + /// + /// Constructeur par défaut pour la classe . + /// public Quiz() {} - } -} \ No newline at end of file +} diff --git a/WF-WebAdmin/WF-WebAdmin/Model/QuizModel.cs b/WF-WebAdmin/WF-WebAdmin/Model/QuizModel.cs index ce5c8fa..a317555 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/QuizModel.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/QuizModel.cs @@ -2,28 +2,55 @@ namespace WF_WebAdmin.Model { + /// + /// Modèle représentant les données nécessaires à la création ou à la modification d'un quiz. + /// public class QuizModel { + /// + /// Question posée dans le quiz. + /// Cette propriété est obligatoire et doit être d'une longueur maximale de 200 caractères. + /// [Required] [StringLength(200, ErrorMessage = "La question ne peut pas depasser les 200 caractère.")] public string Question { get; set; } + /// + /// Première réponse possible pour le quiz. + /// Cette propriété est obligatoire et doit être d'une longueur maximale de 50 caractères. + /// [Required] [StringLength(50, ErrorMessage = "La réponse ne peut pas depasser les 50 caractère.")] public string AnswerA { get; set; } + /// + /// Deuxième réponse possible pour le quiz. + /// Cette propriété est obligatoire et doit être d'une longueur maximale de 50 caractères. + /// [Required] [StringLength(50, ErrorMessage = "La réponse ne peut pas depasser les 50 caractère.")] public string AnswerB { get; set; } + /// + /// Troisième réponse possible pour le quiz. + /// Cette propriété est obligatoire et doit être d'une longueur maximale de 50 caractères. + /// [Required] [StringLength(50, ErrorMessage = "La réponse ne peut pas depasser les 50 caractère.")] public string AnswerC { get; set; } + /// + /// Quatrième réponse possible pour le quiz. + /// Cette propriété est obligatoire et doit être d'une longueur maximale de 50 caractères. + /// [Required] [StringLength(50, ErrorMessage = "La réponse ne peut pas depasser les 50 caractère.")] public string AnswerD { get; set; } + /// + /// Réponse correcte au quiz, choisie parmi A, B, C ou D. + /// Cette propriété est obligatoire. + /// [Required] public string CAnswer { get; set; } } diff --git a/WF-WebAdmin/WF-WebAdmin/Model/Quote.cs b/WF-WebAdmin/WF-WebAdmin/Model/Quote.cs index ffc7f05..f7318c3 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/Quote.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/Quote.cs @@ -1,20 +1,73 @@ -using Microsoft.AspNetCore.DataProtection.KeyManagement; - -namespace WF_WebAdmin.Model +namespace WF_WebAdmin.Model { + /// + /// Représente une citation dans le système. + /// public class Quote { + /// + /// Identifiant unique de la citation. + /// public int Id { get; set; } + + /// + /// Contenu de la citation. + /// public string Content { get; set; } + + /// + /// Nombre de "likes" reçus pour cette citation. + /// public int Like { get; set; } + + /// + /// Langue dans laquelle la citation est écrite. + /// public string Langue { get; set; } + + /// + /// Caractère associé à la citation (ex : personnage, auteur, etc.). + /// public string Charac { get; set; } + + /// + /// Chemin d'accès à l'image associée à la citation. + /// public string ImgPath { get; set; } + + /// + /// Titre de la source de la citation (ex : livre, film, etc.). + /// public string TitleSrc { get; set; } + + /// + /// Date de la source de la citation. + /// public DateTime DateSrc { get; set; } + + /// + /// Nom de l'utilisateur ayant proposé la citation. + /// public string UserProposition { get; set; } + + /// + /// Indique si la citation est valide. + /// public bool IsValid { get; set; } + /// + /// Constructeur pour créer une nouvelle citation avec tous ses attributs. + /// + /// Identifiant de la citation. + /// Contenu de la citation. + /// Caractère associé à la citation. + /// Chemin de l'image associée. + /// Titre de la source. + /// Date de la source. + /// Nombre de "likes" reçus. + /// Langue de la citation. + /// Nom de l'utilisateur ayant proposé la citation. + /// Indicateur de validité de la citation. public Quote(int id, string content, string charac, string imgPath, string titleSrc, DateTime dateSrc, int like, string langue, string userProposition, bool isvalid) { Id = id; @@ -28,6 +81,15 @@ namespace WF_WebAdmin.Model UserProposition = userProposition; IsValid = isvalid; } + } +} + + + + + + + /* public int Id { get; set; } public string Content { get; set; } @@ -65,5 +127,5 @@ namespace WF_WebAdmin.Model IdUserVerif = idUserVerif; } */ - } -} + + diff --git a/WF-WebAdmin/WF-WebAdmin/Model/QuoteModel.cs b/WF-WebAdmin/WF-WebAdmin/Model/QuoteModel.cs index 1db3196..94a06c5 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/QuoteModel.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/QuoteModel.cs @@ -1,27 +1,65 @@ -using System.ComponentModel.DataAnnotations; - -namespace WF_WebAdmin.Model +namespace WF_WebAdmin.Model { + /// + /// Modèle représentant une citation dans le système. + /// Ce modèle est utilisé pour la validation des données avant leur persistance. + /// public class QuoteModel { + /// + /// Identifiant unique de la citation. + /// public int Id { get; set; } + /// + /// Contenu de la citation. + /// La citation ne peut pas dépasser 300 caractères. + /// [Required] - [StringLength(300, ErrorMessage = "La citation ne peut pas dépasser les 300 caractère.")] + [StringLength(300, ErrorMessage = "La citation ne peut pas dépasser les 300 caractères.")] public string Content { get; set; } + /// + /// Nombre de "likes" que la citation a reçus. + /// public int Like { get; set; } + /// + /// Langue dans laquelle la citation est écrite. + /// La langue est limitée à 2 caractères. + /// [Required] - [StringLength(2, ErrorMessage = "La langue ne peut pas dépasser 2 caractère.")] + [StringLength(2, ErrorMessage = "La langue ne peut pas dépasser 2 caractères.")] public string Langue { get; set; } - + /// + /// Caractère associé à la citation (ex : auteur ou personnage). + /// public string Charac { get; set; } + + /// + /// Chemin d'accès à l'image associée à la citation. + /// public string ImgPath { get; set; } + + /// + /// Titre de la source de la citation (ex : livre, film, etc.). + /// public string TitleSrc { get; set; } + + /// + /// Date de la source de la citation. + /// public DateTime DateSrc { get; set; } + + /// + /// Nom de l'utilisateur ayant proposé la citation. + /// public string UserProposition { get; set; } + + /// + /// Indique si la citation est validée par le système. + /// public bool IsValid { get; set; } } } diff --git a/WF-WebAdmin/WF-WebAdmin/Model/Source.cs b/WF-WebAdmin/WF-WebAdmin/Model/Source.cs index 99c390a..1112366 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/Source.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/Source.cs @@ -1,11 +1,25 @@ namespace WF_WebAdmin.Model { + /// + /// Représente une source d'une citation dans le système. + /// Cette classe contient des informations sur la source d'une citation, telles que son titre et sa date de publication. + /// public class Source { - public int id_source { get; set; } + /// + /// Identifiant unique de la source. + /// + public int id_source { get; set; } + /// + /// Titre de la source, tel qu'un livre, un article ou une œuvre. + /// public string title { get; set; } - public int date { get; set; } + /// + /// Date de publication de la source. + /// Il s'agit d'une représentation de l'année sous forme d'entier. + /// + public int date { get; set; } } } diff --git a/WF-WebAdmin/WF-WebAdmin/Model/User.cs b/WF-WebAdmin/WF-WebAdmin/Model/User.cs index 9e398dd..caf3b52 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/User.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/User.cs @@ -1,17 +1,55 @@ namespace WF_WebAdmin.Model { + /// + /// Représente un utilisateur dans le système. + /// Cette classe contient des informations sur l'utilisateur, telles que son image, son nom, son email, la date de création de son compte, + /// son statut d'administrateur et les commentaires qu'il a publiés. + /// public class User { + /// + /// Identifiant unique de l'utilisateur. + /// public int Id { get; set; } - public string Image { get; set; } + + /// + /// URL de l'image de profil de l'utilisateur. + /// + public string Image { get; set; } + + /// + /// Nom de l'utilisateur. + /// public string Name { get; set; } + + /// + /// Adresse email de l'utilisateur. + /// public string Email { get; set; } + + /// + /// Date de création du compte utilisateur. + /// public DateTime DateCreation { get; set; } - public Boolean IsAdmin { get; set; } + /// + /// Indique si l'utilisateur a des privilèges d'administrateur. + /// + public bool IsAdmin { get; set; } + /// + /// Liste des commentaires publiés par l'utilisateur. + /// public List Comments { get; set; } + /// + /// Constructeur pour créer un nouvel utilisateur avec des informations spécifiques. + /// + /// URL de l'image de profil de l'utilisateur. + /// Nom de l'utilisateur. + /// Adresse email de l'utilisateur. + /// Date de création du compte de l'utilisateur. + /// Indicateur si l'utilisateur est un administrateur. public User(string image, string name, string email, DateTime dateCreation, bool isAdmin) { this.Image = image; @@ -21,6 +59,9 @@ IsAdmin = isAdmin; } + /// + /// Constructeur par défaut pour créer un utilisateur sans initialiser ses propriétés. + /// public User() { } } } diff --git a/WF-WebAdmin/WF-WebAdmin/Model/UserLogin.cs b/WF-WebAdmin/WF-WebAdmin/Model/UserLogin.cs index b8f12b1..77dfe54 100644 --- a/WF-WebAdmin/WF-WebAdmin/Model/UserLogin.cs +++ b/WF-WebAdmin/WF-WebAdmin/Model/UserLogin.cs @@ -1,14 +1,45 @@ -using System; -namespace WF_WebAdmin.Model +namespace WF_WebAdmin.Model { + /// + /// Représente un utilisateur dans le système de connexion. + /// Cette classe contient des informations nécessaires pour l'authentification et la gestion du profil utilisateur. + /// public class UserLogin { + /// + /// Identifiant unique de l'utilisateur. + /// public int Id { get; set; } + + /// + /// URL de l'image de profil de l'utilisateur. + /// public string Image { get; set; } - public string Name { get; set;} - public Boolean IsAdmin { get; set; } + + /// + /// Nom de l'utilisateur. + /// + public string Name { get; set; } + + /// + /// Indique si l'utilisateur possède des privilèges d'administrateur. + /// + public bool IsAdmin { get; set; } + + /// + /// Mot de passe de l'utilisateur. + /// public string Mdp { get; set; } - public UserLogin(int id,string image, string name, bool isAdmin, string mdp) + + /// + /// Constructeur pour créer un objet avec des informations d'authentification et de profil. + /// + /// Identifiant de l'utilisateur. + /// URL de l'image de profil de l'utilisateur. + /// Nom de l'utilisateur. + /// Indicateur si l'utilisateur est un administrateur. + /// Mot de passe de l'utilisateur. + public UserLogin(int id, string image, string name, bool isAdmin, string mdp) { Id = id; this.Image = image; @@ -17,6 +48,9 @@ namespace WF_WebAdmin.Model this.Mdp = mdp; } + /// + /// Constructeur par défaut pour créer un objet sans initialiser les propriétés. + /// public UserLogin() { } } }