You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.2 KiB
33 lines
1.2 KiB
namespace Business.KftcPasswordRule
|
|
{
|
|
/// <summary>
|
|
/// </summary>
|
|
public class PasswordAsEmailRule : PasswordRule
|
|
{
|
|
/// <summary>
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
/// <returns></returns>
|
|
public PasswordValidationResult Validate(ValidationModel model)
|
|
{
|
|
if (model == null)
|
|
{
|
|
return new PasswordValidationResult { IsValid = false, Message = "invalid password." };
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(model.Password) || string.IsNullOrEmpty(model.Email))
|
|
{
|
|
return new PasswordValidationResult { IsValid = false, Message = "invalid password." };
|
|
}
|
|
var emailArr = model.Email.Split('@');
|
|
if (emailArr.Length > 1)
|
|
{
|
|
if (model.Password.ToLower().Contains(emailArr[0].ToLower()))
|
|
{
|
|
return new PasswordValidationResult { IsValid = false, Message = "Password can not be same as email!" };
|
|
}
|
|
}
|
|
return new PasswordValidationResult { IsValid = true, Message = "valid" };
|
|
}
|
|
}
|
|
}
|