public async Task <IHttpActionResult> ForgetPassword(string email) { if (string.IsNullOrEmpty(email) || string.IsNullOrWhiteSpace(email)) { ModelState.AddModelError("Email", GenericError.INVALID_GIVEN_PARAMETER); return(BadRequest(ModelState)); } var mailUnescape = Uri.UnescapeDataString(email); if (!MailValid.IsValid(mailUnescape)) { ModelState.AddModelError("Email", GenericError.INVALID_GIVEN_PARAMETER); return(BadRequest(ModelState)); } var client = await Manager.FindByEmailAsync(mailUnescape); if (client == null) { ModelState.AddModelError("Email", GenericError.FORBIDDEN_RESOURCE_OR_DOES_NO_EXIST); return(BadRequest(ModelState)); } var TokenForgetPassword = await Manager.GeneratePasswordResetTokenAsync(client.Id); var token = Convert.ToBase64String(Encoding.UTF8.GetBytes(string.Format("{0}:{1}", client.Id, TokenForgetPassword))); var CallbackURLForgetPassword = new Uri(string.Format("{0}forgot-password/{1}", WebApiApplication.MANAGER_URL, token)); await sendForgetPasswordWithTemplate(CallbackURLForgetPassword, client); return(Ok()); }
public IEnumerable <ValidationResult> Validate(ValidationContext validationContext) { // If it's not an email if (Email != null && !MailValid.IsValid(Email)) { yield return(new ValidationResult(GenericError.DOES_NOT_MEET_REQUIREMENTS, new string[] { "Email" })); } // smtpPort must be between 0 and 65535 if (SmtpPort < 0 || SmtpPort > LIMIT_PORT) { yield return(new ValidationResult(GenericError.DOES_NOT_MEET_REQUIREMENTS, new string[] { "SmtpPort" })); } }
public IEnumerable <ValidationResult> Validate(ValidationContext validationContext) { // If email is an email if (Email != null && !MailValid.IsValid(Email)) { yield return(new ValidationResult(GenericError.WRONG_DATA, new[] { "Email" })); } // Phone must contain only digits if (Phone1 != null && !Regex.IsMatch(Phone1, GenericNames.ONLY_NUMBER_REGEX)) { yield return(new ValidationResult(GenericError.WRONG_DATA, new[] { "Phone1" })); } // Phone must contain only digits if (Phone2 != null && !Regex.IsMatch(Phone2, GenericNames.ONLY_NUMBER_REGEX)) { yield return(new ValidationResult(GenericError.WRONG_DATA, new[] { "Phone2" })); } }
public IEnumerable <ValidationResult> Validate(ValidationContext validationContext) { // If datebirth > UtcNow if (DateBirth > DateTime.UtcNow) { yield return(new ValidationResult(GenericError.WRONG_DATA, new[] { "DateBirth" })); } // If email is not an email if (Email != null && !MailValid.IsValid(Email)) { yield return(new ValidationResult(GenericError.WRONG_DATA, new[] { "Email" })); } // If acceptMailing is at true you must provide an email if (Email == null && AcceptMailing == true) { yield return(new ValidationResult(GenericError.CANNOT_BE_NULL_OR_EMPTY, new[] { "Email" })); } }