using System.ComponentModel.DataAnnotations;

namespace LEA.ViewModels;

public class RegisterViewModel
{
    [Required(ErrorMessage = "Bitte geben Sie Ihren vollständigen Namen an.")]
    [StringLength(100, ErrorMessage = "Der Name darf maximal {1} Zeichen lang sein.")]
    [Display(Name = "Vollständiger Name")]
    public string FullName { get; set; } = string.Empty;

    [Required(ErrorMessage = "Bitte geben Sie eine E-Mail-Adresse ein.")]
    [EmailAddress(ErrorMessage = "Bitte eine gültige E-Mail-Adresse eingeben.")]
    [DataType(DataType.EmailAddress)]
    [Display(Name = "E-Mail-Adresse")]
    public string Email { get; set; } = string.Empty;

    [Required(ErrorMessage = "Bitte geben Sie ein Passwort ein.")]
    [DataType(DataType.Password)]
    [StringLength(100, ErrorMessage = "Das Passwort muss mindestens {2} Zeichen enthalten.", MinimumLength = 6)]
    [Display(Name = "Passwort")]
    public string Password { get; set; } = string.Empty;

    [Required(ErrorMessage = "Bitte wiederholen Sie das Passwort.")]
    [DataType(DataType.Password)]
    [Compare(nameof(Password), ErrorMessage = "Die Passwörter stimmen nicht überein.")]
    [Display(Name = "Passwort bestätigen")]
    public string ConfirmPassword { get; set; } = string.Empty;
}
