Ejemplo n.º 1
0
        public async Task <ActionResult> SendFaq(ViewModels.HomeViewModels.FaqViewModel model)
        {
            if (ModelState.IsValid)
            {
                // create contact
                var contact = new CustomerInfoFaq();
                contact.FullName    = model.Contact.FullName;
                contact.Email       = model.Contact.Email;
                contact.PhoneNumber = model.Contact.PhoneNumber;

                // create faq
                var faq = new FaqViewModel();
                faq.Contact   = contact;
                faq.OptionVal = model.OptionVal;
                faq.Message   = model.Message.Replace("\r\n", "<br>");

                var selectedOption = faq.OptionType.Where(t => t.Value == faq.OptionVal.ToString()).FirstOrDefault().Text;
                var URL            = Request.Url.AbsoluteUri;
                var time           = DateTime.Now;

                string        EmailTitle   = "FAQ - " + contact.FullName + " - " + selectedOption;
                StringBuilder EmailMessage = new StringBuilder();
                EmailMessage.Append("<h3>Thư của người dùng gửi từ trang FAQ với</h3>");
                EmailMessage.Append("<br>");
                EmailMessage.AppendFormat("<strong>URL:</strong> {0}", URL);
                EmailMessage.Append("<br>");
                EmailMessage.AppendFormat("<strong>Họ và tên:</strong> {0}", contact.FullName);
                EmailMessage.Append("<br>");
                EmailMessage.AppendFormat("<strong>Phone:</strong> {0}", contact.PhoneNumber);
                EmailMessage.Append("<br>");
                EmailMessage.AppendFormat("<strong>Email:</strong> {0}", contact.Email);
                EmailMessage.Append("<br>");
                EmailMessage.AppendFormat("<strong>Vào lúc:</strong> {0}", time);
                EmailMessage.Append("<br>");
                EmailMessage.AppendFormat("<strong>Về vấn đề:</strong> {0}", selectedOption);
                EmailMessage.Append("<br>-----------<br>");
                EmailMessage.Append(faq.Message);

                try
                {
                    // insert: Feedbacks
                    ServiceResult result = await this.m_feedbackService.PostFeedbackAsync(contact.FullName,
                                                                                          contact.Email, contact.PhoneNumber, selectedOption, URL, model.Message, time);

                    // send email
                    bool success = await EmailHelper.SendEmailAsync("🚩 " + contact.FullName, EmailAddress.ContactHepa, EmailTitle, EmailMessage.ToString());

                    // sending successfull
                    if (success)
                    {
                        ViewBag.SendEmailSuccessfully = EmailResult.SendFromFaq_Successful;
                    }
                }
                catch (Exception ex)
                {
                    ViewBag.SendEmailFalse       = EmailResult.SendFromFaq_False;
                    ViewBag.SendEmailFalseDetail = ex.Message;
                }
            }

            // If we got this far, something failed, redisplay View
            return(RedirectToAction("Faq", "Home"));
        }
Ejemplo n.º 2
0
 public ActionResult Faq()
 {
     ViewModels.HomeViewModels.FaqViewModel faq = new ViewModels.HomeViewModels.FaqViewModel();
     faq = new ViewModels.HomeViewModels.FaqViewModel();
     return(View(faq));
 }