Пример #1
0
        public JsonResult Update(AskModel askModel)
        {
            string slugUrl = askModel.Content.Length > 100
                ? askModel.Content.Substring(0, 100).ToSlugUrl()
                : askModel.Content.ToSlugUrl();

            DBM.GetOne("sp_Ask_Update", new { askModel.AskId, askModel.Content, askModel.CategoryId, UserId = askModel.UserId, SlugUrl = slugUrl }, out AskModel askModel1);
            return(Json(askModel1, JsonRequestBehavior.AllowGet));
        }
Пример #2
0
        public AskAnswerModel Ask(AskModel model)
        {
            var askForm = new AskForm()
            {
                Question = model,
            };

            askForm.Init();
            var dialog = askForm.ShowDialog();

            return(askForm.Answer);
        }
Пример #3
0
        public JsonResult Update(AskModel askModel)
        {
            int userId = GetUserId();

            //Xử lý ký tự lạ
            LibraryNF.Helper.HtmlHelper htmlHelper = new LibraryNF.Helper.HtmlHelper();
            askModel.Content = htmlHelper.StripHtmlHoc247(askModel.Content);

            string slugUrl = askModel.Content.Length > 100
                ? askModel.Content.Substring(0, 100).ToSlugUrl()
                : askModel.Content.ToSlugUrl();

            DBM.GetOne("sp_Ask_Update", new { askModel.AskId, Content = askModel.Content, CategoryId = askModel.CategoryId, UserId = userId, SlugUrl = slugUrl }, out AskModel askModel1);
            return(Json(askModel1, JsonRequestBehavior.AllowGet));
        }
Пример #4
0
        /// <summary>
        /// ActionResult là View
        /// </summary>
        public ActionResult LikeAsk(int countLike, int askId = 0)
        {
            int userId = GetUserId();

            DBM.ExecStore("sp_AskLike_CheckExists", new { AskId = askId, UserId = userId }, out int isExists);

            AskModel askModel = new AskModel
            {
                AskId     = askId,
                CountLike = countLike,
                IsLike    = isExists == 1 ? true : false
            };

            return(View(askModel));
        }
Пример #5
0
        public ActionResult AddQuestions(AskModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId();
                _serviceManager.Asks.AddAsk(model, userId);
                //return RedirectToAction("Index", "Home");

                returnUrl = !string.IsNullOrEmpty(returnUrl) ? returnUrl : "/";
                return(Redirect(returnUrl));
            }
            //return View(model);

            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
        }
Пример #6
0
        public ActionResult Ask(AskQuestion question)
        {
            project project = db.projects
                              .Include("country")
                              .Include("user")
                              .Include("project_guestbook")
                              .Include("project_photo")
                              .Include("tags")
                              .Include("updates")
                              .Include("achievements")
                              .Single(p => p.ProjectID == question.ProjectID);

            AskModel ask = new AskModel()
            {
                Project = project, Question = question
            };

            if (ModelState.IsValid)
            {
                Validator validator = new Validator(ConfigurationManager.AppSettings["Akismet_Key"]);
                bool      isspam    = validator.IsSpam(new Comment()
                {
                    comment_author_email = question.Email,
                    blog            = ConfigurationManager.AppSettings["Akismet_Url"],
                    comment_author  = question.Email,
                    comment_content = question.Question,
                    user_agent      = Request.UserAgent,
                    user_ip         = Request.UserHostAddress,
                    referrer        = Request.UrlReferrer != null ? Request.UrlReferrer.AbsoluteUri : "",
                    comment_type    = "question"
                });

                if (!isspam)
                {
                    //send email
                    string body = string.Format("From: {0}\r\nName (if loggedin): {1}\r\nProject: {2}\r\nProjectID: {3}\r\n\r\nQuestion: {4}", question.Email, question.UserName, question.ProjectName, question.ProjectID, question.Question);
                    SendMailAwsAdmin("Question about project: " + question.ProjectName, body);
                }

                return(RedirectToAction("Details", "Projects", new { id = question.ProjectID }));
            }

            return(View(ask));
        }
Пример #7
0
        public async Task <IActionResult> Ask([FromForm] AskModel model)
        {
            var question = _mapper.Map <Question>(model);

            var author = await _userService.GetById(Guid.Parse(User.Identity.Name));

            question.Author = author;
            question.Grade  = author.Grade;

            try
            {
                await _questionService.Create(question, Request.Form.Files);

                return(Ok());
            }
            catch (AppException ex)
            {
                return(BadRequest(new { message = ex.Message }));
            }
        }
Пример #8
0
        public void AddAsk(AskModel model, string userId)
        {
            var user = new User()
            {
                Id = userId
            };

            _userSet.Attach(user);

            var ask = new Ask()
            {
                Title  = model.Title,
                Slug   = SlugGenerator.GenerateSlug(model.Title),
                Body   = model.Body,
                Date   = DateTime.UtcNow,
                Author = user
            };

            _askSet.Add(ask);
            _context.SaveChanges();

            model.Id = ask.Id;
        }