public ActionResult Edit(NoticeBoardViewModel Model) { if (ModelState.IsValid) { ViewBag.NoticeEdit = _noticeBoardManager.PostEdit(Model); if (Request.Files.Count > 0) { var file = Request.Files[0]; if (file != null && file.ContentLength > 0) { var fileName = Guid.NewGuid() + "_" + Path.GetFileName(file.FileName); var path = Path.Combine(Server.MapPath("~/Content/images/"), fileName); file.SaveAs(path); var image = _data.SiteImages.FirstOrDefault(x => x.TypeId == Model.Notice.Id && x.Type == "Notice"); path = Path.Combine(Server.MapPath(image.ImagePath)); System.IO.File.Delete(path); image.ImagePath = "/Content/images/" + fileName; _data.SaveChanges(); } } return(RedirectToAction("Index")); } return(View(Model)); }
public IEnumerable <NoticeBoardViewModel> LatestNotice(int length) { List <NoticeBoardViewModel> noticeList = new List <NoticeBoardViewModel>(); try { var orderedNotices = _data.Notice.Where(x => x.IsApproved).OrderBy(x => x.PinUp) .ThenByDescending(x => x.SubmitDate).Take(length); foreach (var n in orderedNotices) { var nvm = new NoticeBoardViewModel(); var noticeBoard = new NoticeBoard(); noticeBoard.UniqueUrl = n.UniqueUrl; noticeBoard.SubmitDate = n.SubmitDate; noticeBoard.Description = n.Description; noticeBoard.Title = n.Title; nvm.Notice = noticeBoard; nvm.TotalComments = _noticeManager.GetComments(n.Id).Count(); nvm.NoticeImage = _noticeManager.GetNoticeImage(n.Id, "Notice"); nvm.PostedBy = n.Creator.UserName.UserName(); noticeList.Add(nvm); } } catch (Exception ex) { //log the exception. } return(noticeList); }
public NoticeBoardViewModel GetDetails(string uniqueUrl) { if (!string.IsNullOrEmpty(uniqueUrl)) { var noticeDetails = _data.Notice.FirstOrDefault(x => x.UniqueUrl == uniqueUrl && x.IsApproved); if (noticeDetails != null) { var nvm = new NoticeBoardViewModel(); nvm.Notice = noticeDetails; nvm.NoticeImage = _data.SiteImages.FirstOrDefault(x => x.TypeId == noticeDetails.Id && x.Type == "Notice"); return(nvm); } } return(new NoticeBoardViewModel()); }
public NoticeBoardViewModel GetEdit(int id) { NoticeBoard notice = new NoticeBoard(); NoticeBoardViewModel noticeVMList = new NoticeBoardViewModel(); try { var notice2 = _data.Notice.FirstOrDefault(x => (x.Id == id)); if ((notice2.CreatorId == Current_User_id) || (HttpContext.Current.User.IsInRole(UserRole.Administrator.ToString()))) { noticeVMList.Notice = notice2; noticeVMList.NoticeImage = GetNoticeImage(notice2.Id, "Notice"); } return(noticeVMList); } catch { return(noticeVMList); } }
public string PostEdit(NoticeBoardViewModel model) { try { var notice = _data.Notice.FirstOrDefault(x => (x.Id == model.Notice.Id)); if ((notice.CreatorId == Current_User_id) || (HttpContext.Current.User.IsInRole(UserRole.Administrator.ToString()))) { notice.Title = model.Notice.Title; notice.Description = model.Notice.Description; notice.WebLink = model.Notice.WebLink; //notice.ActionDate = model.ActionDate; if (notice.PinUp == false && model.Notice.PinUp == true) { var PreviousPinUpNotice = _data.Notice.FirstOrDefault(x => (x.PinUp == true)); if (PreviousPinUpNotice != null) { PreviousPinUpNotice.PinUp = false; _data.Entry(PreviousPinUpNotice).State = EntityState.Modified; } } notice.PinUp = model.Notice.PinUp; _data.Entry(notice).State = EntityState.Modified; _data.SaveChanges(); return(Helpers.Constants.PostEdit); } else { return(Helpers.Constants.PostEditFail); } } catch { return(Helpers.Constants.PostEditFail); } }