Ejemplo n.º 1
0
        public async Task <IActionResult> SendEmailMessageToUser(Guid userId)
        {
            var user = await this.identityService.GetUserByIdAsync <User>(userId);

            if (user != null)
            {
                AdminSendEmailMessageToUserViewModel model = new AdminSendEmailMessageToUserViewModel
                {
                    Email     = user.Email,
                    FirstName = user.FirstName,
                    LastName  = user.LastName,
                };

                return(this.View(model));
            }

            return(this.NotFound());
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> SendEmailMessageToUser(Guid userId, AdminSendEmailMessageToUserViewModel model)
        {
            var user = await this.identityService.GetUserByIdAsync <User>(userId);

            if (user != null)
            {
                model.Email     = user.Email;
                model.FirstName = user.FirstName;
                model.LastName  = user.LastName;

                if (this.ModelState.IsValid)
                {
                    UserMessageEmailModel emailModel = new UserMessageEmailModel
                    {
                        Email     = model.Email,
                        Subject   = "Administrator Message",
                        GivenName = model.FirstName,
                        Surname   = model.LastName,
                        Message   = model.Message,
                    };

                    var emailResult = await this.emailService.SendEmailAsync("UserMessageEmailView", emailModel);

                    if (emailResult.Success)
                    {
                        this.TempData["SuccessStatusMessage"] = $"Email to {model.Email} has been sent successfully.";

                        return(this.RedirectToAction(nameof(this.GetAll)));
                    }
                }

                return(this.View(model));
            }

            return(this.NotFound());
        }