23 lines
899 B
C#
23 lines
899 B
C#
|
|
using FluentValidation;
|
||
|
|
|
||
|
|
namespace PlanTempus.Components.Users.Create
|
||
|
|
{
|
||
|
|
public class CreateUserValidator : AbstractValidator<CreateUserCommand>
|
||
|
|
{
|
||
|
|
public CreateUserValidator()
|
||
|
|
{
|
||
|
|
RuleFor(x => x.Email)
|
||
|
|
.NotEmpty().WithMessage("Email skal angives.")
|
||
|
|
.EmailAddress().WithMessage("Ugyldig emailadresse.")
|
||
|
|
.MaximumLength(256).WithMessage("Email må højst være 256 tegn.");
|
||
|
|
|
||
|
|
RuleFor(x => x.Password)
|
||
|
|
.NotEmpty().WithMessage("Password skal angives.")
|
||
|
|
.MinimumLength(8).WithMessage("Password skal være mindst 8 tegn.")
|
||
|
|
.Matches("[A-Z]").WithMessage("Password skal indeholde mindst ét stort bogstav.")
|
||
|
|
.Matches("[a-z]").WithMessage("Password skal indeholde mindst ét lille bogstav.")
|
||
|
|
.Matches("[0-9]").WithMessage("Password skal indeholde mindst ét tal.")
|
||
|
|
.Matches("[^a-zA-Z0-9]").WithMessage("Password skal indeholde mindst ét specialtegn.");
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|