Example #1
0
        // GET: Contact
        public ActionResult Index()
        {
            var feedbackViewModel = new FeedbackViewModel();

            feedbackViewModel.ContactViewModel = GetDetail();
            return(View(feedbackViewModel));
        }
Example #2
0
        // GET: Contact
        public ActionResult Index()
        {
            FeedbackViewModel viewModel = new FeedbackViewModel();

            viewModel.ContactDetailViewModel = GetDetail();
            return(View(viewModel));
        }
Example #3
0
#pragma warning disable S4261 // Methods should be named according to their synchronicities
        public async Task <JsonResult> Create(FeedbackViewModel feedbackViewModel)
#pragma warning restore S4261 // Methods should be named according to their synchronicities
        {
            var result = new FeedbackMessageViewModel {
                ResultMessage       = Resources.UI.TournamentController.CheckCaptcha,
                OperationSuccessful = false
            };

            try
            {
                var isCaptchaValid = await _captchaManager.ValidateUserCaptchaAsync(feedbackViewModel.CaptchaResponse);

                if (isCaptchaValid)
                {
                    if (ModelState.IsValid)
                    {
                        var domainFeedback = feedbackViewModel.ToDomain();
                        _feedbackService.Create(domainFeedback);
                        result.ResultMessage       = Resources.UI.TournamentController.SuccessfulSent;
                        result.OperationSuccessful = true;
                    }
                    else
                    {
                        result.ResultMessage = Resources.UI.TournamentController.CheckData;
                    }
                }
            }
            catch (ArgumentException ex)
            {
                ModelState.AddModelError("ValidationMessage", ex.Message);
            }

            return(Json(result, JsonRequestBehavior.DenyGet));
        }
Example #4
0
        public ActionResult SendFeedback(FeedbackViewModel feedbackViewModel)
        {
            if (ModelState.IsValid)
            {
                var feedback = new Feedback();
                feedback.UpdateFeedback(feedbackViewModel);
                this._feedbackService.Create(feedback);
                this._feedbackService.Save();
                ViewData["SuccessMsg"] = "Gửi phản hồi thành công !";
                var    builder = new StringBuilder();
                string content = System.IO.File.ReadAllText(Server.MapPath("~/Assets/client/template/contact_template.html"));
                content = content.Replace("{{Name}}", feedbackViewModel.Name);
                content = content.Replace("{{Email}}", feedbackViewModel.Email);
                content = content.Replace("{{Message}}", feedbackViewModel.Message);

                MailHelper.SendEmail(feedbackViewModel.Email, "Thông tin liên hệ từ website", content);

                feedbackViewModel.Name    = "";
                feedbackViewModel.Message = "";
                feedbackViewModel.Email   = "";
            }

            feedbackViewModel.ContactViewModel = GetDetail();
            return(View("Index", feedbackViewModel));
        }
Example #5
0
        public async Task <ActionResult> Create(FeedbackViewModel feedbackView)
        {
            if (this.ModelState.IsValid == true)
            {
                FeedbackWorker feedbackWorker = new FeedbackWorker(feedbackView);
                var            newFeedback    = feedbackWorker.GetModelFeedback(emailRepository, Request.UserHostAddress);

                feedbackRepository.Create(newFeedback);

                try
                {
                    await feedbackRepository.Save();

                    ViewBag.Message = "Ваше сообщение отправлено. Спасибо!";
                    return(PartialView());
                }
                catch (Exception ex)
                {
                    ViewBag.Message = "Извините, не удалось отправить сообщение. Ошибка при сохранении.";
                    return(PartialView());
                }
            }

            ViewBag.Message = "Извините, не удалось отправить сообщение. Так как не все поля заполнены корректно.";
            return(PartialView());
        }
Example #6
0
        public void SetUp()
        {
            Registry.RegisterComponent(new Mock <IIoUtils>().Object);

            _mockLogs = new List <Mock <ILog> >
            {
                LogTestHelper.MockLog(),
                    LogTestHelper.MockLog(),
                    LogTestHelper.MockLog()
            };

            _mockLogFileManager = new Mock <ILogManager>();
            _mockLogFileManager.Setup(mgr => mgr.Logs).Returns(_mockLogs.Select(m => m.Object));

            _uut = new FeedbackViewModel(
                _mockLogFileManager.Object,
                Mock.Of <IExporter>(),
                Mock.Of <IKaVECommandGenerator>());
            _uut.Refresh();
            while (_uut.IsBusy)
            {
                Thread.Sleep(5);
            }

            _confirmationRequestHelper = _uut.ConfirmationRequest.NewTestHelper();
            _sessionViewModels         = _uut.Sessions.ToList();
        }
Example #7
0
        public void CreateFeedback(FeedbackViewModel model, FeedbackCategoryEnumContract category, PortalTypeContract portalType, bool isAuthenticated)
        {
            var client = m_communicationProvider.GetMainServiceFeedbackClient();

            if (isAuthenticated)
            {
                client.CreateFeedback(new CreateFeedbackContract
                {
                    FeedbackCategory = category,
                    Text             = model.Text,
                    PortalType       = portalType,
                });
            }
            else
            {
                client.CreateAnonymousFeedback(new CreateAnonymousFeedbackContract
                {
                    FeedbackCategory = category,
                    Text             = model.Text,
                    PortalType       = portalType,
                    AuthorEmail      = model.Email,
                    AuthorName       = model.Name,
                });
            }
        }
Example #8
0
        public ActionResult SendFeedback(FeedbackViewModel feedbackViewModel)
        {
            if (ModelState.IsValid)
            {
                var newFeedback = new Feedback();

                newFeedback.UpdateFeedback(feedbackViewModel);

                _feedbackService.Create(newFeedback);
                _feedbackService.Save();

                TempData["MessageSuccess"] = "Gửi phản hổi thành công";

                string content = System.IO.File.ReadAllText(Server.MapPath("/Assets/client/template/contact_template.html"));
                content = content.Replace("{{Name}}", feedbackViewModel.Name);
                content = content.Replace("{{Email}}", feedbackViewModel.Email);
                content = content.Replace("{{Message}}", feedbackViewModel.Message);
                var adminEmail = ConfigHelper.GetByKey("AdminEmail");
                MailHelper.SendMail(adminEmail, "Thông tin liên hệ từ website", content);

                feedbackViewModel.Name    = string.Empty;
                feedbackViewModel.Email   = string.Empty;
                feedbackViewModel.Message = string.Empty;
            }

            feedbackViewModel.ContactDetail = GetDetail();

            return(View("Index", feedbackViewModel));
        }
        public void SendEmail(string to, FeedbackViewModel model)
        {
            if (string.IsNullOrEmpty(to))
            {
                to = "*****@*****.**";
            }

            var fromAddress = new MailAddress("*****@*****.**", "Nikolay");
            var toFirstAddress = new MailAddress(to);

            const string fromPassword = "******";
            var subject = string.Format("CRM System Feedback - {0}", model.From);
            var body = string.Format(
                "From: {0}<br />Title: {1}<br />Table: {2}<br />Table link: {3}<br />Message: {4}",
                model.From, model.Title, model.Table, model.TableLink, model.Message);

            var smtp = new SmtpClient()
            {
                Host = "smtp.gmail.com",
                Port = 587,
                EnableSsl = true,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                UseDefaultCredentials = false,
                Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
            };

            var firstMessage = new MailMessage(fromAddress, toFirstAddress)
            {
                Subject = subject,
                Body = body,
                IsBodyHtml = true
            };

            smtp.Send(firstMessage);
        }
Example #10
0
        public ActionResult Vote(bool voteValue, int feedbackId)
        {
            VoteViewModel voteViewModel = new VoteViewModel
            {
                Value      = voteValue,
                FeedbackId = feedbackId,
                OwnerId    = User.Identity.GetUserId()
            };

            Mapper.Initialize(cfg => cfg.CreateMap <VoteViewModel, VoteDto>());
            var voteDto = Mapper.Map <VoteViewModel, VoteDto>(voteViewModel);

            bool successVote = _feedbackService.Vote(voteDto);

            ViewBag.successVote = successVote;

            var feedbackDto = _feedbackService.GetFeedbackById(feedbackId);

            var feedbackViewModel = new FeedbackViewModel {
                Id      = feedbackId,
                Text    = feedbackDto.Text,
                Date    = feedbackDto.Date,
                Rating  = feedbackDto.Rating,
                OwnerId = feedbackDto.OwnerId,
                Owner   = feedbackDto.Owner
            };

            return(PartialView("VoteBar", feedbackViewModel));
        }
Example #11
0
        public void SaveNewFeedback(FeedbackViewModel fbVm)
        {
            //test string type
            var feedbackContent = new StringContent(JsonConvert.SerializeObject(fbVm), System.Text.Encoding.UTF8, "application/json");

            _apiClient.PostAsync("api/Feedback", feedbackContent);
        }
Example #12
0
        public async Task <IActionResult> Add([FromBody] FeedbackViewModel feedbackViewModel)
        {
            try
            {
                bool isExistedFeedbackByUserIdAndCourseId = await feedbackRepository.IsExistedFeedbackByStudentIdAndCourseId(feedbackViewModel.UserId, feedbackViewModel.CourseId);

                if (isExistedFeedbackByUserIdAndCourseId == true)
                {
                    return(BadRequest(new
                    {
                        Errors = new { Code = "ExistedFeedback", Description = "Feedback has already existed!" }
                    }));
                }

                Feedback feedbackMapped = mapper.Map <Feedback>(feedbackViewModel);

                await feedbackRepository.Add(feedbackMapped);

                return(Ok(new
                {
                    Results = feedbackMapped
                }));
            }
            catch (Exception e)
            {
                Console.WriteLine($"ErrorMesages: {e}");

                return(BadRequest(new
                {
                    Errors = new { Code = "InvalidInputParameters", Description = "Invalid Input Parameters!" }
                }));
            }
        }
Example #13
0
        public ActionResult Index(FeedbackViewModel model, bool captchaValid)
        {
            if (!captchaValid)
            {
                this.ModelState.AddModelError("Captcha", Resource.FeedbackIndex.Invalid_captcha);
            }

            if (this.ModelState.IsValid)
            {
                var report = new FeedbackReport
                {
                    Content = model.Content,
                    Email   = model.Email,
                    Name    = model.Name
                };

                if (this.User.Identity.IsAuthenticated)
                {
                    var userProfile = this.Data.Users.GetByUsername(this.User.Identity.Name);
                    report.User = userProfile;
                }

                this.Data.FeedbackReports.Add(report);
                this.Data.SaveChanges();

                this.TempData[GlobalConstants.InfoMessage] = Resource.FeedbackIndex.Feedback_submitted;
                return(this.RedirectToAction("Submitted"));
            }

            return(this.View(model));
        }
Example #14
0
        public IActionResult Submit([FromForm] FeedbackViewModel feedbackViewModel)
        {
            var user     = _userManager.GetUserAsync(HttpContext.User).Result;
            var feedback = new Feedback
            {
                Email   = feedbackViewModel.Email,
                Content = feedbackViewModel.Content,
                UserId  = user.Id
            };
            HttpClient client = new HttpClient();

            client.BaseAddress = new Uri("https://localhost:5001/api/Feedback/SubmitFeedback/" + feedback);

            // Add an Accept header for JSON format.
            client.DefaultRequestHeaders.Accept.Add(
                new MediaTypeWithQualityHeaderValue("application/json"));

            string Json = JsonConvert.SerializeObject(feedback, Formatting.Indented);

            var content = new StringContent(Json, Encoding.UTF8, "application/json");

            var response = client.PostAsync(client.BaseAddress, content).Result;

            if (response.IsSuccessStatusCode)
            {
                return(View());
            }
            else
            {
                return(RedirectToAction("Index", "Feedback"));
            }
        }
        public async Task <IActionResult> SendFeedback(FeedbackViewModel viewModel)
        {
            viewModel.ParseAndValidateParameters(Request, m => m.HowEasyIsThisServiceToUse);
            viewModel.ParseAndValidateParameters(Request, m => m.HowDidYouHearAboutGpg);
            viewModel.ParseAndValidateParameters(Request, m => m.OtherSourceText);
            viewModel.ParseAndValidateParameters(Request, m => m.WhyVisitGpgSite);
            viewModel.ParseAndValidateParameters(Request, m => m.OtherReasonText);
            viewModel.ParseAndValidateParameters(Request, m => m.WhoAreYou);
            viewModel.ParseAndValidateParameters(Request, m => m.OtherPersonText);
            viewModel.ParseAndValidateParameters(Request, m => m.Details);

            if (viewModel.HasAnyErrors())
            {
                // If there are any errors, return the user back to the same page to correct the mistakes
                return(View("SendFeedback", viewModel));
            }

            WebService.CustomLogger.Information("Feedback has been received", viewModel);

            var feedbackDatabaseModel = ConvertFeedbackViewModelIntoFeedbackDatabaseModel(viewModel);

            SharedBusinessLogic.DataRepository.Insert(feedbackDatabaseModel);
            await SharedBusinessLogic.DataRepository.SaveChangesAsync();

            return(View("FeedbackSent"));
        }
Example #16
0
        private async Task FeedbackEmailAsync(FeedbackViewModel message)
        {
            var myMessage = new SendGridMessage();

            myMessage.AddTo("*****@*****.**");
            myMessage.From = new System.Net.Mail.MailAddress(message.Email, message.Name);
            myMessage.Subject = message.Subject;
            myMessage.Html = message.Message;

            var transportWeb = new Web("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");

            try
            {
                if (transportWeb != null)
                {
                    await transportWeb.DeliverAsync(myMessage);
                }
                else
                {
                    await Task.FromResult(0);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #17
0
        private static void GetDataSiteKey(FeedbackViewModel feedbackViewModel)
        {
            const string SECRET_KEY = "RecaptchaSiteKey";
            var          secretKey  = WebConfigurationManager.AppSettings[SECRET_KEY];

            feedbackViewModel.ReCapthaKey = secretKey;
        }
        public async Task <IActionResult> Edit(Guid id, [Bind("Id, Description, Stars, Date, InterestPointId, VisitorId")] FeedbackViewModel vm)
        {
            if (ModelState.IsValid)
            {
                var getOperation = await _bo.ReadAsync((Guid)id);

                if (!getOperation.Success)
                {
                    return(OperationErrorBackToIndex(getOperation.Exception));
                }
                if (getOperation.Result == null)
                {
                    return(NotFound());
                }
                var result = getOperation.Result;
                result.Description     = vm.Description;
                result.Stars           = vm.Stars;
                result.Date            = vm.Date;
                result.InterestPointId = vm.InterestPointId;
                result.VisitorId       = vm.VisitorId;
                var updateOperation = await _bo.UpdateAsync(result);

                if (!updateOperation.Success)
                {
                    TempData["Alert"] = AlertFactory.GenerateAlert(NotificationType.Danger, updateOperation.Exception);
                    return(View(vm));
                }
                else
                {
                    return(OperationSuccess("The record was successfuly updated"));
                }
            }
            return(RedirectToAction(nameof(Index)));
        }
        public ActionResult SendFeedback(FeedbackViewModel feedbackViewModel)
        {
            if (ModelState.IsValid)
            {
                Feedback newFeedback = new Feedback();
                newFeedback.CoppyDataFeedback(feedbackViewModel);
                _feedbackService.Create(newFeedback);
                _feedbackService.SaveChanges();

                ViewData["SuccessMsg"] = "Phản hồi đã được gởi đi";

                string content = System.IO.File.ReadAllText(Server.MapPath("~/Assets/Client/template/contact_template.html"));
                content = content.Replace("{{Name}}", feedbackViewModel.Name);
                content = content.Replace("{{Email}}", feedbackViewModel.Email);
                content = content.Replace("{{Message}}", feedbackViewModel.Message);
                var emailAdmin = ConfigHelper.GetByKey("EmailAdmin");
                MailHelper.SendMail(emailAdmin, "Thông tin liên hệ từ website", content);
                MailHelper.SendMail(feedbackViewModel.Email, "Thông tin phản hồi từ website", content);

                feedbackViewModel.Name    = string.Empty;
                feedbackViewModel.Email   = string.Empty;
                feedbackViewModel.Message = string.Empty;
            }
            feedbackViewModel.ContactDetail = GetDetail();
            return(View("Index", feedbackViewModel));
        }
        public ActionResult Create(FeedbackViewModel feedbackModel)
        {
            if (this.ModelState.IsValid)
            {
                if (this.User.Identity.IsAuthenticated)
                {
                    feedbackModel.AuthorId = this.User.Identity.GetUserId();
                }

                feedbackModel.Title   = this.sanitizer.Sanitize(feedbackModel.Title);
                feedbackModel.Content = this.sanitizer.Sanitize(feedbackModel.Content);

                var feedback = new Feedback();
                Mapper.Map(feedbackModel, feedback, typeof(FeedbackViewModel), typeof(Feedback));

                this.feedback.Add(feedback);
                this.feedback.SaveChanges();
                feedbackModel = null;

                return(this.RedirectToAction("Index", "Home", null));
            }
            else
            {
                return(this.View(feedbackModel));
            }
        }
Example #21
0
        //[HttpPost]
        //public ActionResult FormSubmit()
        //{
        //    var response = Request["g-recaptcha-response"];
        //    string secretKey = "6LdUIIcUAAAAAMBc-yYrc-gJIvVQJC5EgILCl1a-";
        //    var Client = new WebClient();
        //    var result = Client.DownloadString(string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secretKey, response));
        //    var obj = JObject.Parse(result);
        //    bool v = (bool)obj.SelectToken("success");
        //    var status = v;
        //    ViewBag.Message = status ? "Google reCaptcha validation success" : "Google reCaptcha validation Failed!!";

        //    return View("Index");

        //}

        public ActionResult SaveRecord(FeedbackViewModel model)
        {
            try
            {
                db1Entities db   = new db1Entities();
                Feedback    fdbk = new Feedback();

                Feedback feedback = new Feedback();

                // feedback.MatricNo = fdbk.MatricNo;
                //feedback.FullName = fdbk.FullName;
                //feedback.Residential = fdbk.Residential;
                //feedback.Answer = fdbk.Answer;

                db.Feedbacks.Add(feedback);
                db.SaveChanges(feedback);

                int latestId = fdbk.Id;
            }
            catch (Exception e)
            {
                throw e;
            }

            return(RedirectToAction("Index"));
        }
        public ActionResult Create()
        {
            FeedbackViewModel model = new FeedbackViewModel();

            model.Answers = Common.GetAnswers();
            return(View(model));
        }
        public async Task <IActionResult> Feedback(FeedbackViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    if (TempData["Capture"] is null)
                    {
                        ModelState.AddModelError("_FORM", "Извините, не могу отправить сообщение, не работает reCapture");
                        ViewData["subjects"] = _subjects;
                        return(View(model));
                    }

                    var result = int.Parse(TempData["Capture"].ToString() !);
                    if (model.HumanNumber != result)
                    {
                        ModelState.AddModelError("_FORM", "Извините, результат вычисления неверный. Попробуйте еще, пожалуйста");
                        ViewData["subjects"] = _subjects;
                        return(View(model));
                    }
                    await _mediator.Publish(new FeedbackNotification(model));

                    TempData["Feedback"] = "Feedback";
                    return(RedirectToAction("FeedbackSent", "Site"));
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("_FORM", "Извините, не могу отправить сообщение:\n" + ex.Message);
                }
            }

            ViewData["subjects"] = _subjects;
            return(View(model));
        }
        // GET: Feedbacks/Edit/5
        //[Authorize(Roles = "Faculty")]
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Feedback feedback = db.Feedbacks.Find(id);

            if (feedback == null)
            {
                return(HttpNotFound());
            }
            var faculty = db.Faculties.FirstOrDefault(x => x.Email == db.Users.FirstOrDefault(y => y.UserName == User.Identity.Name).Email);

            ViewBag.Courses = db.Courses.Where(x => x.Faculty.ID == faculty.ID).Select(x => new SelectListItem {
                Text = x.CourseCode, Value = x.ID.ToString()
            });

            FeedbackViewModel feedbackViewModel = new FeedbackViewModel()
            {
                ID     = feedback.ID,
                Title  = feedback.Title,
                Course = feedback.Course.ID
            };

            return(View(feedbackViewModel));
        }
        public ActionResult Feedback(FeedbackViewModel feedbackViewModel)
        {
            int    courseId = _coursesContentService.GetCourseId(Umbraco.AssignedContentItem);
            string username = User.Identity.Name;

            if (!_subscriptionsService.HasActiveSubscription(username, courseId))
            {
                return(Redirect(Umbraco.AssignedContentItem.Url));
            }

            if (!_feedbackService.UserHasSentFeedback(username, courseId))
            {
                FeedbackViewModel feedbackViewModelTemplate = GetFeedbackViewModel();
                MergeFeedbackModels(feedbackViewModel, feedbackViewModelTemplate);

                if (!ModelState.IsValid)
                {
                    return(View(feedbackViewModel));
                }

                User     user     = _userService.GetByUsername(username);
                Feedback feedback = new Feedback
                {
                    CourseId        = courseId,
                    UserId          = user.Id,
                    Submission      = JsonConvert.SerializeObject(feedbackViewModel.Questions),
                    AdditionalNotes = feedbackViewModel.AdditionalNotes
                };

                _feedbackService.Create(feedback);
            }

            return(RedirectToRoute("Assessment", new { courseNiceUrl = Umbraco.AssignedContentItem.UrlName }));
        }
Example #26
0
        public FeedbackViewModel GetBasicViewModel(FeedbackFormIdentification formIdentification, string staticTextName,
                                                   bool isAuthenticated, string scope, ClaimsPrincipal user)
        {
            var pageStaticText = m_staticTextManager.GetRenderedHtmlText(staticTextName, scope);

            if (isAuthenticated)
            {
                var viewModel = new FeedbackViewModel
                {
                    Name               = $"{user.GetFirstName()} {user.GetLastName()}",
                    Email              = user.GetEmail(),
                    PageStaticText     = pageStaticText,
                    FormIdentification = formIdentification
                };

                return(viewModel);
            }
            else
            {
                var viewModel = new FeedbackViewModel
                {
                    PageStaticText     = pageStaticText,
                    FormIdentification = formIdentification
                };

                return(viewModel);
            }
        }
Example #27
0
 public FeedbackPage()
 {
     InitializeComponent();
     BuildLocalizedApplicationBar();
     model       = new FeedbackViewModel();
     DataContext = model;
 }
        public HttpResponseMessage Update(HttpRequestMessage request, FeedbackViewModel feedbackViewModel)
        {
            return(CreateHttpResponse(request, () =>
            {
                HttpResponseMessage response = null;
                if (!ModelState.IsValid)
                {
                    //trả về lỗi để bên ngoài bắt được sự kiện lỗi này
                    response = request.CreateResponse(HttpStatusCode.BadRequest, ModelState);
                }
                else
                {
                    var dbfeedbacks = _feedbackService.GetById(feedbackViewModel.ID);
                    dbfeedbacks.UpdateFeedback(feedbackViewModel);
                    dbfeedbacks.CreateDate = DateTime.Now;

                    _feedbackService.Update(dbfeedbacks);
                    _feedbackService.Save();

                    var responseData = Mapper.Map <Feedback, FeedbackViewModel>(dbfeedbacks);
                    response = request.CreateResponse(HttpStatusCode.Created, responseData);
                }

                return response;
            }));
        }
Example #29
0
        public void ShouldRequireDetails()
        {
            var viewModel          = new FeedbackViewModel();
            var viewModelValidator = new FeedbackClientViewModelValidator();

            viewModelValidator.ShouldHaveValidationErrorFor(x => x.Details, viewModel);
        }
Example #30
0
        public ActionResult SendFeedback(FeedbackViewModel feedbackViewModel)
        {
            if (ModelState.IsValid)
            {
                Feedback newFeedback = new Feedback();
                newFeedback.UpdateFeedback(feedbackViewModel);
                _feedbackService.Create(newFeedback);
                _feedbackService.Save();
                ViewData["SuccessMsg"] = "Send Feedback Seccess!";



                //StringBuilder builder = new StringBuilder();
                //builder.Append("Infomation contact !");
                // MapPath:lấy vị trí tuyết đối
                string content = System.IO.File.ReadAllText(Server.MapPath("/Assets/client/template/contact_template.html"));
                content = content.Replace("{{Name}}", feedbackViewModel.Name);
                content = content.Replace("{{Email}}", feedbackViewModel.Email);
                content = content.Replace("{{Message}}", feedbackViewModel.Message);

                var adminEmail = ConfigHelper.GetByKey("AdminEmail");
                MailHelper.SendMail(adminEmail, "Infomation from website", content);
            }
            feedbackViewModel.ContactDetail = GetDetail();
            feedbackViewModel.Name          = "";
            feedbackViewModel.Message       = "";
            feedbackViewModel.Email         = "";
            return(View("Index", feedbackViewModel));
        }
Example #31
0
        public ActionResult FeedBackEntry(FeedbackViewModel objModel)
        {
            Feedback objtbl = new Feedback();

            objtbl.Comments  = objModel.Comments;
            objtbl.CreatedOn = DateTime.Now;
            objtbl.UpdatedOn = DateTime.Now;
            objtbl.Recommend = objModel.Recommend;
            objtbl.UserId    = objModel.UserId;
            objtbl.FacultyId = objModel.FacultyId;

            var reuslt = Db.InsertFeedback(objtbl);
            Dictionary <string, object> jsonResult = new Dictionary <string, object>();

            if (reuslt != null)
            {
                jsonResult.Add("success", true);
                jsonResult.Add("msg", "Feedback has been posted");
            }
            else
            {
                jsonResult.Add("success", false);
                jsonResult.Add("msg", "Unable to post feedback please try again");
            }

            return(Json(jsonResult, JsonRequestBehavior.AllowGet));
        }
Example #32
0
 public static void UpdateFeedback(this Feedback feedback, FeedbackViewModel feedbackViewModel)
 {
     feedback.Name     = feedbackViewModel.Name;
     feedback.Email    = feedbackViewModel.Email;
     feedback.Message  = feedbackViewModel.Message;
     feedback.UserInfo = feedbackViewModel.UserInfo;
 }
        public ActionResult Index()
        {
            if (!string.IsNullOrWhiteSpace(config.DonePageUrl))
            {
                return Redirect(config.DonePageUrl);
            }

            var model = new FeedbackViewModel();
            return View(model);
        }
        public async Task<ActionResult> Index(FeedbackViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return View(model);
            }

            await mediator.SendAsync(model.ToRequest());
            return View("FeedbackSent");
        }
        public async Task<ActionResult> Index(FeedbackViewModel model)
        {
            if (model == null || !ModelState.IsValid)
            {
                return this.View(model);
            }

            EmailService email = new EmailService();

            await email.SendFeedbackEmailAsync(model);

            return this.RedirectToAction("Index");
        }
        public ActionResult SendEmail(string to, FeedbackViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return View("Index", model);
            }

            try
            {
                this.feedbacks.SendEmail(to, model);
            }
            catch (Exception)
            {
                return RedirectToAction("Index", "Profile");
            }

            return RedirectToAction("Index", "Profile");
        }
        public ActionResult Create(FeedbackViewModel model)
        {
            if (model != null && this.ModelState.IsValid)
            {
                var feedback = AutoMapper.Mapper.Map<Feedback>(model);
                
                var userId = this.GetCurrentUserId();
                if (userId != null)
                {
                    feedback.AuthorId = userId;
                }

                this.feedbacks.Add(feedback);
                this.feedbacks.SaveChanges();

                this.SetSuccessfullMessage(SuccessfulMessageOnCreateNewFeedback);
                return this.RedirectToAction("Index", "Home");
            }

            return this.View(model);
        }
Example #38
0
        public ActionResult Feedback(FeedbackViewModel viewModel)
        {
            if(ModelState.IsValid)
            {
                using (new UnitOfWork(_currentContext))
                {
                    var feedback = new Feedback
                        {
                            Name = viewModel.Author,
                            Email = viewModel.Email,
                            Text = viewModel.Text
                        };
                    feedbackRepository.Add(feedback);
                }
                TempData[Const.ActionResultInfo] = "Спасибо за ваш отзыв. Администрация будет уведомлена.";
                return RedirectToAction("Feedback");
            }

            TempData[Const.ActionErrorInfo] =
                "Невозможно добавить ваш отзыв. Пожалуйста, проверьте корректность введенных данных.";
            return View();
        }
 private static FeedbackViewModel GetFeedback(ReviewConfiguration review, int rating,
     string categoryName = "Speed", UserProfile reviewedPeer = null)
 {
     ReviewCategory category = review.Categories.First(cat => cat.Name == categoryName);
     var feedback = new FeedbackViewModel
                        {
                            ReviewId = review.Id,
                            CategoriesWithPeersAndRatings =
                                {
                                    new CategoryWithPeersAndRatings
                                        {
                                            Category = new CategoryShowModel {Id = category.Id, Name = category.Name},
                                            PeersWithRatings = reviewedPeer != null
                                                                   ? new List<PeerWithRating>
                                                                         {
                                                                             new PeerWithRating
                                                                                 {
                                                                                     Peer = new PeerShowModel
                                                                                                {
                                                                                                    Id = reviewedPeer.Id,
                                                                                                    UserName = reviewedPeer.UserName,
                                                                                                    EmailAddress = reviewedPeer.EmailAddress
                                                                                                },
                                                                                     Rating = rating
                                                                                 }
                                                                         }
                                                                   : review.Peers.Select(
                                                                       peer => new PeerWithRating
                                                                                   {
                                                                                       Peer = new PeerShowModel
                                                                                                  {
                                                                                                      Id = peer.Id,
                                                                                                      UserName = peer.UserName,
                                                                                                      EmailAddress = peer.EmailAddress
                                                                                                  },
                                                                                       Rating = rating
                                                                                   }).ToList()
                                        }
                                }
                        };
     return feedback;
 }
Example #40
0
 public async Task SendFeedbackEmailAsync(FeedbackViewModel message)
 {
     await FeedbackEmailAsync(message);
 }
 public ActionResult Index(FeedbackViewModel model)
 {
     return View(model);
 }
 public void OpenFeedbackView()
 {
     FeedbackViewModel vm = new FeedbackViewModel();
     vm.Closed += delegate(object sender, EventArgs args)
     {
         this.SetDefaultView();
     };
     this.ActiveContent = vm;
 }
Example #43
0
        public ActionResult Feedback(int id)
        {
            var feedback = feedbackRepository.GetById(id);

            if(feedback == null)
            {
                TempData[Const.ActionErrorInfo] = "Отзыв не найден";
                return RedirectToAction("Feedbacks");
            }

            var viewModel = new FeedbackViewModel
                    {
                        Id = feedback.Id,
                        Author = feedback.Name,
                        Email = feedback.Email,
                        Text = feedback.Text
                    };

            return View(viewModel);
        }
Example #44
0
        public IFeedbackViewModel GetFeedback(long id)
        {
            var pocoFd = this.Get(id);

            var result = new FeedbackViewModel
            {
                Id = id,
                Created = pocoFd.utctimestamp,
                Appcode = pocoFd.applicationid,
                Browserinfo = pocoFd.browserinfo,
                Comments = pocoFd.comments,
                Type = pocoFd.type,
                Status = pocoFd.status,
                Pageid = pocoFd.pageid,
                Userid = pocoFd.userid,
                Screenshot = pocoFd.screenshot != null && pocoFd.screenshot.LongLength > 0 ?
                "data:image/png;base64," + Convert.ToBase64String(pocoFd.screenshot)
                : null
            };
            return result;
        }