Exemple #1
0
        public async Task <IActionResult> ForgotPassword(ForgotPasswordViewModel model)
        {
            User profile = await profileService.FindByEmailAsync(model.Email);

            if (profile == null)
            {
                ViewData[ErrorKey] = string
                                     .Format(ObjectNotFoundErrorMessage, $"Profile '{model.Email}'");
            }
            else
            {
                var passwordResetToken = await profileService.GeneratePasswordResetTokenAsync(profile);

                var    emailToken       = profile.Email.ToBase64();
                string passwordResetUrl = Url.Action(
                    action: nameof(ResetPassword),
                    controller: this.ControllerName(),
                    values: new { prt = passwordResetToken, emt = emailToken },
                    protocol: Request.Scheme);
                string messageContent = await fileService.LoadTextFileContentAsync(ResetPasswordTemplatePath);

                messageContent = messageContent.Replace("@Username", profile.UserName);
                messageContent = messageContent.Replace("@PasswordResetUrl", passwordResetUrl);
                await messenger.SendEmailAsync("Password reset", messageContent, null, profile.Email);

                model.PasswordSent = true;
                logger.LogInformation($"Password reset for profile '{profile.UserName}'.");
            }
            return(View(model));
        }
Exemple #2
0
 public async Task <bool> SendEmail(string key, [FromBody] Patient email)
 {
     try
     {
         if (key == "73l3M3D")
         {
             if (email is null)
             {
                 return(false);
             }
             if (string.IsNullOrEmpty(email.email))
             {
                 return(false);
             }
             return(await _messengerService.SendEmailAsync(email.email, email.providerNameAttending, Request.Scheme + "://" + Request.Host.Value));
         }
         else
         {
             return(false);
         }
     }
     catch (Exception ex)
     {
         _logger.LogError($"file: MessengerController.cs method: SendEmail() error: {ex.Message} ");
         return(false);
     }
 }
        public async Task <bool> SendEmail([FromBody] DoctorsModel email)
        {
            string meetingId = email.Id.ToString() + DateTime.Now.ToString("MMddHHmmss");

            email.MeetingId = meetingId;
            try
            {
                if (email is null)
                {
                    return(false);
                }
                if (string.IsNullOrEmpty(email.Subject) || string.IsNullOrEmpty(email.Message) || string.IsNullOrEmpty(email.Email))
                {
                    return(false);
                }
                return(await _messengerService.SendEmailAsync(email.Subject, email.Message, email.Email));
            }
            catch (Exception ex)
            {
                _logger.LogError($"file: MessengerController.cs method: SendEmail() error: {ex.Message} ");
                return(false);
            }
        }