// GET: Official/GetBoards?index=6&number=5 public async Task <ActionResult> GetBoards(int?index, int?number) { int i = index ?? 0; int n = number ?? 5; var boards = await db.GetOfficialBoardsAsync(); var list = new List <NoticeBoardIndexViewModel>(); foreach (var nb in boards) { var temp = NoticeBoardMappings.To <NoticeBoardIndexViewModel>(nb); temp.IsSubscribed = await User.Identity.IsSubscribedToAsync(temp.Id); if (!temp.IsSubscribed) { list.Add(temp); } } IEnumerable <NoticeBoardIndexViewModel> finalList = list.OrderBy(nb => nb.Title); finalList = finalList.Skip(i); finalList = finalList.Take(n); return(View(finalList)); }
public async Task <ActionResult> Results(string q) { Tuple <List <NoticeBoardViewModel>, List <NoticeViewModel> > results = new Tuple <List <NoticeBoardViewModel>, List <NoticeViewModel> >( new List <NoticeBoardViewModel>(), new List <NoticeViewModel>() ); using (NoticeBoardManager m = new NoticeBoardManager()) { var boards = await m.SearchAsync(q); foreach (var i in boards) { results.Item1.Add(NoticeBoardMappings.To <NoticeBoardViewModel>(i)); } } using (NoticeManager m = new NoticeManager()) { var notices = await m.SearchAsync(q); foreach (var i in notices) { results.Item2.Add(NoticeMappings.To <NoticeViewModel>(i)); } } return(View(results)); }
public async Task <ActionResult> Edit([Bind(Include = "Id,Title,IsMandatory,Description")] NoticeBoardEditViewModel vm) { if (ModelState.IsValid) { var notice = NoticeBoardMappings.From(vm); notice.IsOfficial = true; await db.UpdateAsync(notice); return(RedirectToAction("Index")); } return(View(vm)); }
public async Task <ActionResult> Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } NoticeBoard noticeBoard = await db.GetUnofficialBoardAsync(id.Value); if (noticeBoard == null) { return(HttpNotFound()); } return(View(NoticeBoardMappings.To <NoticeBoardIndexViewModel>(noticeBoard))); }
// GET: Boards /// <summary> /// Displays all the official notice boards that the user is subscribed to /// </summary> public async Task <ActionResult> Index() { var x = await db.GetOfficialBoardsAsync(); var list = new List <NoticeBoardIndexViewModel>(); foreach (var i in x) { var temp = NoticeBoardMappings.To <NoticeBoardIndexViewModel>(i); temp.IsSubscribed = await User.Identity.IsSubscribedToAsync(temp.Id); //if (temp.IsSubscribed) //{ list.Add(temp); //} } return(View(list)); }
// GET: Boards/View/5 public async Task <ActionResult> View(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } NoticeBoard noticeBoard = await db.GetUnofficialBoardAsync(id.Value); if (noticeBoard == null) { return(HttpNotFound()); } if (await User.Identity.IsSubscribedToAsync(id.Value)) { ViewBag.Subscribed = true; } else { ViewBag.Subscribed = false; } return(View(NoticeBoardMappings.To <NoticeBoardViewModel>(noticeBoard))); }