public JsonResult AddTopicReply(ForumModelView model) { int result = -1; string strMsg = ""; try { if (String.IsNullOrEmpty(model.Message) || model.Message.Trim() == "") { result = -2; strMsg = "Message required."; } else { ForumHelper helper = new ForumHelper(); string msg = helper.AddTopicReply(model); if (msg == "success") { strMsg = "You have replied successfully."; result = 0; } else { strMsg = "Error! Try again later."; result = -3; } } } catch (Exception ex) { strMsg = "Exception: " + ex.Message; } return(Json(new { counter = result, msg = strMsg, topicId = model.TopicId }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// Load the Forum message listing /// </summary> /// <param name="keyword"></param> /// <param name="sortBy"></param> /// <param name="pageNo"></param> /// <param name="pageSize"></param> /// <returns></returns> public PartialViewResult LoadForumList(string keyword, string sortBy, string pageNo, string pageSize = "10") { ForumHelper helper = new ForumHelper(); ForumModel model = new ForumModel(); model.StratasBoardId = ClientSessionData.ClientStrataBoardId; var forumList = helper.GetForumListing(model); if (!string.IsNullOrEmpty(keyword)) { forumList = forumList.Where(x => x.Topic.ToLower().Contains(keyword.ToLower()) || x.TopicContent.ToLower().Contains(keyword.ToLower())).ToList(); } if (!string.IsNullOrEmpty(sortBy)) { if (sortBy == "date asc") { forumList = forumList.OrderBy(x => x.CreatedOn).ToList(); } else if (sortBy == "date desc") { forumList = forumList.OrderByDescending(x => x.CreatedOn).ToList(); } else if (sortBy == "title asc") { forumList = forumList.OrderBy(x => x.Topic).ToList(); } else if (sortBy == "title desc") { forumList = forumList.OrderByDescending(x => x.Topic).ToList(); } else { forumList = forumList.OrderByDescending(x => x.CreatedOn).ToList(); } } int totalRecords = forumList.Count; ForumModelView forumViewModel = new ForumModelView(); forumViewModel.TotalPages = totalRecords / Convert.ToInt32(pageSize); if (totalRecords % Convert.ToInt32(pageSize) > 0) { forumViewModel.TotalPages++; } var skip = Convert.ToInt32(pageSize) * (Convert.ToInt32(pageNo) - 1); forumViewModel.ListForum = forumList.Skip(skip).Take(Convert.ToInt32(pageSize)).ToList(); return(PartialView("_ForumListPartial", forumViewModel)); }
/// <summary> /// Add the new topic message reply into the database. /// </summary> /// <param name="objectModel"></param> /// <returns></returns> public string AddTopicReply(ForumModelView objectModel) { ObjectParameter returnParameter = new ObjectParameter("Err", typeof(int)); context.Usp_AddUpdForumReply(Convert.ToInt64(objectModel.TopicId), objectModel.Message.Trim(), ClientSessionData.ClientStrataBoardId, ClientSessionData.UserClientId, DateTime.UtcNow, 1, ClientSessionData.UserClientId, HttpContext.Current.Request.UserHostAddress, false, returnParameter); if ((int)returnParameter.Value == 0) { return("success"); } else { return("failed"); } }