public IActionResult CreateThread([FromBody] ThreadDTO thread) { if (thread?.Post == null || string.IsNullOrWhiteSpace(thread.Post.Content) && string.IsNullOrWhiteSpace(thread.Post.Image)) { return(BadRequest(new { message = "Post was empty" })); } using (_work.BeginTransaction()) { try { var returnThread = _work.ThreadRepository.CreateThread(thread); _work.Save(); thread.Post.ThreadId = returnThread.Id; thread.Post.IsOp = true; var board = PostHelper.CreatePost(_work, _env, this.Request, thread.Post); _work.Save(); _work.CommitTransaction(); return(Json(board)); } catch (PostException e) { _work.RollbackTransaction(); return(BadRequest(new { message = e.Message })); } catch { _work.RollbackTransaction(); return(BadRequest()); } } }
// GET: ThreadDTO/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ThreadDTO threadDTO = Mapper.MapTo(db.ForumThreadSet.Find(id)); if (threadDTO == null) { return(HttpNotFound()); } HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName]; if (authCookie != null) { FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(authCookie.Value); JavaScriptSerializer serializer = new JavaScriptSerializer(); UserDTO serializeModel = serializer.Deserialize <UserDTO>(authTicket.UserData); threadDTO.CheckUserCanPoint(serializeModel.Id); } return(View(threadDTO)); }
public ActionResult Create(ThreadDTO thread) { try { HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName]; if (authCookie != null) { FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(authCookie.Value); JavaScriptSerializer serializer = new JavaScriptSerializer(); TableUserDTO serializeModel = serializer.Deserialize <TableUserDTO>(authTicket.UserData); if (serializeModel != null) { if (ModelState.IsValid) { thread.User = serializeModel; db.ForumThreadSet.Add(Mapper.MapTo(thread)); db.SaveChanges(); return(RedirectToAction("Index", "Home")); } return(View(thread)); } } } catch (Exception ex) { throw; } throw new UnauthorizedAccessException("You must be logged to create threads"); }
public void AddThread(ThreadDTO dto) { var newThread = new Thread { Id = Guid.NewGuid(), Title = dto.Title, DateCreated = DateTime.UtcNow, LastPosted = DateTime.UtcNow, Likes = 0 }; var post = new Post { Id = Guid.NewGuid(), Name = dto.Name, Text = dto.Text, Posted = DateTime.UtcNow }; newThread.Posts.Add(post); using (var ctx = new WebForumContext()) { ctx.Threads.Add(newThread); ctx.SaveChanges(); } }
private void btnAdd_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("Mời bạn nhập Tiêu đề!"); } if (textBox2.Text == "") { MessageBox.Show("Mời bạn nhập Nội dung!"); } else { ThreadDTO tr = new ThreadDTO(); tr.Title = textBox1.Text; tr.Content = textBox2.Text; tr.Time = DateTime.Now; tr.OpenSubjectID = SubjectID; tr.StudentID = GlobalVarian.StudentID; ThreadBUS trbus = new ThreadBUS(); if (trbus.AddThread(tr) == true) { MessageBox.Show("Thread đã được tạo."); } } }
public async Task <IActionResult> Category(Guid id) { var category = await _categoryRepo.FindById(id); CategoryDTO dto = new CategoryDTO(); dto.Category = category; var threads = await _threadRepo.GetByCategoryId(id); List <ThreadDTO> threadDtoList = new List <ThreadDTO>(); foreach (var thread in threads) { ThreadDTO threadDto = new ThreadDTO(); threadDto.Id = thread.Id; threadDto.Name = thread.Name; threadDto.Description = thread.Description; threadDto.CreatedAt = thread.CreatedAt; threadDto.AuthorName = await GetThreadAuthorName(thread.UserId); threadDtoList.Add(threadDto); } dto.Threads = threadDtoList; return(View(dto)); }
public ActionResult Points(int points, int threadId) { HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName]; ThreadDTO threadDTO = Mapper.MapTo(db.ForumThreadSet.Find(threadId)); if (threadDTO == null) { ModelState.AddModelError("", "The Thread does not exist."); } if (1 > points || points > 10) { ModelState.AddModelError("", "The Points are invalid."); } if (ModelState.IsValid) { if (authCookie != null) { FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(authCookie.Value); JavaScriptSerializer serializer = new JavaScriptSerializer(); UserDTO serializeModel = serializer.Deserialize <UserDTO>(authTicket.UserData); if (serializeModel != null) { if (serializeModel.Id == threadDTO.User.Id) { ModelState.AddModelError("", "You can't add points to your own thread."); } if (db.UserThreadPointsSet.Where(utp => utp.UserId == serializeModel.Id && utp.ThreadId == threadId).Count() > 0) { ModelState.AddModelError("", "You have already pointed this thread"); } if (ModelState.IsValid) { db.UserThreadPointsSet.Add(new UserThreadPoints { UserId = serializeModel.Id, Points = points, ThreadId = threadId }); threadDTO.Points += points; db.SaveChanges(); } } } else { throw new UnauthorizedAccessException("You must be logged to create threads"); } } return(RedirectToAction("Details", new { id = threadDTO.Id })); }
public Thread CreateThread(ThreadDTO thread) { var threadToAdd = new Thread() { BoardId = thread.BoardId, BumpDate = DateTime.Now }; var entity = _context.Add(threadToAdd).Entity; ArchiveOldThreads(thread.BoardId); return(entity); }
public bool AddThread(ThreadDTO td) { ThreadDAO t = new ThreadDAO(); bool kq = t.AddThread(td); if (kq == true) { return(true); } else { return(false); } }
public ActionResult Edit(ThreadDTO thread) { if (!ValidateThread(thread.Id)) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var threadDb = db.ForumThreadSet.Find(thread.Id); if (threadDb == null) { return(HttpNotFound()); } thread.UpdateModel(threadDb); db.SaveChanges(); return(View("Details", Mapper.MapTo(threadDb))); }
public bool AddThread(ThreadDTO td) { OleDbConnection cn = DataProvider.ConnectionData(); string strSQL = "Insert into Thread(Title, Content, TimePost, OpenSubjectID, StudentID) values (?, ?, ?, ?, ?)"; //B4: Thuc thi chuoi strSQL OleDbCommand cmd = new OleDbCommand(strSQL, cn); cmd.Parameters.Add("@Title", OleDbType.WChar); cmd.Parameters.Add("@Content", OleDbType.WChar); cmd.Parameters.Add("@TimePost", OleDbType.Date); cmd.Parameters.Add("@OpenSubjectID", OleDbType.Integer); cmd.Parameters.Add("@StudentID", OleDbType.Integer); cmd.Parameters["@Title"].Value = td.Title; cmd.Parameters["@Content"].Value = td.Content; cmd.Parameters["@TimePost"].Value = td.Time; cmd.Parameters["@OpenSubjectID"].Value = td.OpenSubjectID; cmd.Parameters["@StudentID"].Value = td.StudentID; cmd.ExecuteNonQuery(); cn.Close(); return true; }
public bool AddThread(ThreadDTO td) { OleDbConnection cn = DataProvider.ConnectionData(); string strSQL = "Insert into Thread(Title, Content, TimePost, OpenSubjectID, StudentID) values (?, ?, ?, ?, ?)"; //B4: Thuc thi chuoi strSQL OleDbCommand cmd = new OleDbCommand(strSQL, cn); cmd.Parameters.Add("@Title", OleDbType.WChar); cmd.Parameters.Add("@Content", OleDbType.WChar); cmd.Parameters.Add("@TimePost", OleDbType.Date); cmd.Parameters.Add("@OpenSubjectID", OleDbType.Integer); cmd.Parameters.Add("@StudentID", OleDbType.Integer); cmd.Parameters["@Title"].Value = td.Title; cmd.Parameters["@Content"].Value = td.Content; cmd.Parameters["@TimePost"].Value = td.Time; cmd.Parameters["@OpenSubjectID"].Value = td.OpenSubjectID; cmd.Parameters["@StudentID"].Value = td.StudentID; cmd.ExecuteNonQuery(); cn.Close(); return(true); }