public ActionResult Index() { int userID = WebSecurity.CurrentUserId; UserProfile user = repository .Users .FirstOrDefault(u => u.UserId == userID); IEnumerable <Comment> comments = repository.Comments.Where(c => c.IsRead == 0 && c.UserID != userID).AsEnumerable(); if (userID != 1 && !Roles.IsUserInRole("Administrator")) { if (Roles.IsUserInRole("Judge")) { comments = comments .Where(c => user.CanModifyProblems.Contains(c.Problem) || user.CanModifyTournaments.Contains(c.Tournament) || (c.ParentComment != null ? c.ParentComment.UserID == userID : false)); } else { comments = comments .Where(c => c.ParentComment != null ? c.ParentComment.UserID == userID : false); } } DiscussionsViewModel viewModel = new DiscussionsViewModel() { NewComments = comments.GroupBy(c => c.Tournament) }; return(View(viewModel)); }
protected override void OnReady(System.Windows.Navigation.NavigationEventArgs e) { if (!_alreadyNavigatedTo) { IDictionary <string, string> parameters = this.NavigationContext.QueryString; string defaultPanoramaItem; if (!parameters.TryGetValue("defaultPanoramaItem", out defaultPanoramaItem)) { defaultPanoramaItem = "PanHome"; } var defaultItem = PanMain.FindName(defaultPanoramaItem) as PanoramaItem; PanMain.DefaultItem = defaultItem; UpdateSelectedPanoramaItem(defaultItem); _alreadyNavigatedTo = true; } else { //quick hack until i can figure out why the list isn't loading on back button var oldDiscussionsVM = _discussionsViewModel; _discussionsViewModel = new DiscussionsViewModel(); _discussionsViewModel.DiscussionCourseFilter = oldDiscussionsVM.DiscussionCourseFilter; if (oldDiscussionsVM.LoadStarted) { _discussionsViewModel.Load(); } PanDiscussions.DataContext = _discussionsViewModel; } }
public virtual ActionResult Index(int?page, int?spage) { DiscussionsViewModel dcsreturn = new DiscussionsViewModel(page, spage, User.Identity.GetUserId()); ViewBag.len2 = dcsreturn.Discussions.Count(); EnquirerIndexViewModel eqindex = new EnquirerIndexViewModel() { discussions = dcsreturn }; return(View(eqindex)); }
public virtual ActionResult Index(int?page, int?spage) { //Initialize tabs ViewBag.liclassA = "active"; ViewBag.tabclassA = "tab-pane fade in active"; ViewBag.liclassB = ""; ViewBag.tabclassB = "tab-pane fade"; if (spage == null) { ViewBag.liclassA = "active text-content"; ViewBag.tabclassA = "tab-pane fade in active"; ViewBag.liclassB = "text-content"; ViewBag.tabclassB = "tab-pane fade"; } else { ViewBag.liclassA = "text-content"; ViewBag.tabclassA = "tab-pane fade"; ViewBag.liclassB = "active text-content"; ViewBag.tabclassB = "tab-pane fade in active"; } DiscussionsViewModel dcsreturn = new DiscussionsViewModel(page, spage, User.Identity.GetUserId()); ViewBag.len2 = dcsreturn.Discussions.Count(); ViewBag.slen2 = dcsreturn.PDsns.Count(); EnquirerIndexViewModel eqindex = new EnquirerIndexViewModel() { discussions = dcsreturn }; return(View(eqindex)); }