public ActionResult SendFeedback(FeedbackDataModel model)
        {
            if (!ModelState.IsValid) {

                return CurrentUmbracoPage();
            }
            var settingsNode = UmbracoContext.ContentCache.GetByXPath("/root/siteSettings").FirstOrDefault();

            Unico.SiteUtils.SendMail(null, null, new Dictionary<string, string>() { { (string)settingsNode.GetProperty("feedbackMail").Value, "Recipient"} }, "StopDolg: обратная связь с сайта",
                "Посетитель сайта оставил свои контактные данные для обратного звонка: {name}, {lastname}, {phone}".NamedFormat(new { name = model.Name, lastname = model.LastName, phone = model.Phone }), true);
            TempData["feedbackSuccess"] = true;
            return RedirectToCurrentUmbracoPage();
        }
        public IHttpActionResult Update(int id, FeedbackDataModel model)
        {
            var feedback = this.Data.Feedbacks.Find(id);

            if (feedback == null)
            {
                return(NotFound());
            }

            feedback.PostDate    = model.PostDate;
            feedback.Text        = model.Text;
            feedback.Type        = model.Type;
            feedback.AddressedTo = model.AddressedTo;

            this.Data.SaveChanges();

            model.Id = feedback.Id;
            return(Ok(model));
        }
        public IHttpActionResult Create(FeedbackDataModel model)
        {
            model.UserId   = User.Identity.GetUserId();
            model.UserName = User.Identity.GetUserName();

            var feedback = new Feedback
            {
                AddressedTo = model.AddressedTo,
                Comments    = model.Comments.AsQueryable().Select(CommentDataModel.FromModelToData).ToList(),
                PostDate    = model.PostDate,
                Text        = model.Text,
                UserId      = User.Identity.GetUserId(),
                Type        = model.Type
            };

            this.Data.Feedbacks.Add(feedback);
            this.Data.SaveChanges();

            model.Id = feedback.Id;

            return(Ok(model));
        }
        public IHttpActionResult Create(FeedbackDataModel model)
        {
            model.UserId = User.Identity.GetUserId();
            model.UserName = User.Identity.GetUserName();

            var feedback = new Feedback
            {
                AddressedTo = model.AddressedTo,
                Comments = model.Comments.AsQueryable().Select(CommentDataModel.FromModelToData).ToList(),
                PostDate = model.PostDate,
                Text = model.Text,
                UserId = User.Identity.GetUserId(),
                Type = model.Type
            };

            this.Data.Feedbacks.Add(feedback);
            this.Data.SaveChanges();

            model.Id = feedback.Id;
            
            return Ok(model);
        }
        public IHttpActionResult Update(int id, FeedbackDataModel model)
        {

            var feedback = this.Data.Feedbacks.Find(id);
            if (feedback == null)
            {
                return NotFound();
            }

            feedback.PostDate = model.PostDate;
            feedback.Text = model.Text;
            feedback.Type = model.Type;
            feedback.AddressedTo = model.AddressedTo;

            this.Data.SaveChanges();

            model.Id = feedback.Id;
            return Ok(model);
        }