public IActionResult AddComment(string comment, CourseMaterialViewModel cmvm, ICollection <Comment> notifications) { if (cmvm != null) { //viewModel uit session halen CourseMaterial course = _courseMaterialRepository.GetById(cmvm.SelectedCourseMaterial.MaterialId); Member member = (Member)_userRepository.GetById(cmvm.SelectedMember.UserId); if (course == null || member == null) { return(NotFound()); } Comment c = new Comment(comment, course, member); _commentRepository.Add(c); _commentRepository.SaveChanges(); SendMail(c); TempData["message"] = "Het commentaar is succesvol verstuurd!"; //Notificaties if (notifications != null) { notifications.Add(c); ICollection <Comment> tempList = notifications.OrderByDescending(com => com.CommentId).ToList(); while (notifications.Count() > 0) { notifications.Remove(notifications.Last()); } foreach (Comment loopComment in tempList) { notifications.Add(loopComment); } while (notifications.Where(n => n.IsRead).Count() > 0 && notifications.Count() > 5) { notifications.Remove(notifications.Last()); } } else { notifications = new List <Comment>(); notifications.Add(c); } return(RedirectToAction(nameof(SelectCourse), new { sessionId = cmvm.Session.SessionId, rank = cmvm.SelectedRank, selectedUserId = cmvm.SelectedMember.UserId, matId = cmvm.SelectedCourseMaterial.MaterialId })); } return(View("Training")); }
public IActionResult SelectRank(int id, Rank rank, int selectedUserId) { ViewData["partialView"] = "lessons"; var session = _sessionRepository.GetById(id); var courseMaterial = _courseMaterialRepository.GetByRank(rank); var selectedMember = (Member)_userRepository.GetById(selectedUserId); if (session == null || selectedMember == null) { return(NotFound()); } CourseMaterialViewModel vm = new CourseMaterialViewModel() { Session = session, CourseMaterials = courseMaterial, AllRanks = GiveAllRanksAsList(), SelectedMember = selectedMember, SelectedRank = rank, }; return(View("Training", vm)); }
public IActionResult Confirm(Session session) { Session tempSession = _sessionRepository.GetById(session.SessionId); if (tempSession == null) { return(NotFound()); } tempSession.Start(); session.Start(); _sessionRepository.SaveChanges(); ViewData["partialView"] = ""; CourseMaterialViewModel vm = new CourseMaterialViewModel() { Session = tempSession, CourseMaterials = _courseMaterialRepository.GetByRank(Rank.Kyu6), AllRanks = GiveAllRanksAsList(), SelectedRank = Rank.Kyu6 }; return(View("Training", vm)); }
public IActionResult SelectCourse(int sessionId, Rank rank, int selectedUserId, int matId, CourseMaterialViewModel cmvm) { var session = _sessionRepository.GetById(sessionId); var courseMaterial = _courseMaterialRepository.GetByRank(rank); var selectedMember = (Member)_userRepository.GetById(selectedUserId); var selectedCourseMaterial = _courseMaterialRepository.GetById(matId); if (session == null || selectedMember == null) { return(NotFound()); } ViewData["partialView"] = "course"; cmvm.Update(session, courseMaterial, selectedCourseMaterial, GiveAllRanksAsList(), selectedMember, rank); return(View("Training", cmvm)); }
private void WriteViewModelToSession(CourseMaterialViewModel cmvm, HttpContext context) { context.Session.SetString("CourseMaterialViewModel", JsonConvert.SerializeObject(cmvm)); }
public override void OnActionExecuting(ActionExecutingContext context) { _cmvm = ReadViewModelFromSession(context.HttpContext); context.ActionArguments["cmvm"] = _cmvm; base.OnActionExecuting(context); }