예제 #1
0
        public IActionResult Show(int activityId)
        {
            User userInDb = dbContext.Users.FirstOrDefault(u => u.UserId == (int)HttpContext.Session.GetInt32("UserId"));

            ACActivity activityInDb = dbContext.ACActivities
                                      .Include(a => a.User)
                                      .Include(a => a.Participants)
                                      .ThenInclude(p => p.User)
                                      .FirstOrDefault(a => a.ACActivityId == activityId);

            ViewBag.ActivityCreator = activityInDb.User;

            if (userInDb != null)
            {
                ViewBag.CurrUserId = userInDb.UserId;
                ViewBag.CurrUser   = userInDb;
            }
            else
            {
                ViewBag.CurrUserId = null;
                ViewBag.CurrUser   = null;
            }

            return(View(activityInDb));
        }
예제 #2
0
        public IActionResult AddActivity(ACActivity newActivity)
        {
            if (ModelState.IsValid)
            {
                if (newActivity.Date < DateTime.Now)
                {
                    ModelState.AddModelError("Date", "Date Must Be Planned for the Future");
                    return(View("New"));
                }
                else
                {
                    int UserID = (int)HttpContext.Session.GetInt32("UserId");

                    User userInDb = dbContext.Users.FirstOrDefault(u => u.UserId == UserID);

                    newActivity.UserId   = userInDb.UserId;
                    newActivity.Duration = Request.Form["DurationNum"] + " " + Request.Form["DurationOption"];
                    dbContext.Add(newActivity);
                    dbContext.SaveChanges();

                    return(RedirectToAction("Index"));
                }
            }
            else
            {
                if (newActivity.Date < DateTime.Now)
                {
                    ModelState.AddModelError("Date", "Date Must Be Planned for the Future");
                }
                return(View("New"));
            }
        }
예제 #3
0
        public IActionResult Delete(int activityId)
        {
            ACActivity activityInDb = dbContext.ACActivities.FirstOrDefault(a => a.ACActivityId == activityId);

            dbContext.ACActivities.Remove(activityInDb);

            dbContext.SaveChanges();

            return(RedirectToAction("Index"));
        }
예제 #4
0
        public IActionResult Join(int activityId)
        {
            User userInDb = dbContext.Users.FirstOrDefault(u => u.UserId == HttpContext.Session.GetInt32("UserId"));

            ACActivity activityInDb = dbContext.ACActivities.FirstOrDefault(a => a.ACActivityId == activityId);

            Join newJoin = new Join()
            {
                UserId = userInDb.UserId, ACActivityId = activityInDb.ACActivityId
            };

            activityInDb.Participants.Add(newJoin);

            dbContext.SaveChanges();

            return(RedirectToAction("Index"));
        }