예제 #1
0
        public IActionResult Checkin(int id)
        {
            User user = new User();

            // Returns the user if they are registered and logged in. If they are not, it returns null.
            user = authProvider.GetCurrentUser();

            // If the user is not logged in, send them to the register page.
            if (user != null)
            {
                if (checkinDal.SaveCheckIn(user.Id, id))
                {
                    if (badgeDal.GiveUserBadges(user.Id))
                    {
                        TempData["earnedBadge"] = true;
                    }

                    TempData["checkedin"] = true;
                    return(RedirectToAction("Index", "Home"));
                }
            }
            else
            {
                return(RedirectToAction("Login", "Account"));
            }

            return(RedirectToAction("Index", "Home"));
        }
        public JsonResult GetBadges()
        {
            IList <Badge> badges      = new List <Badge>();
            User          currentUser = new User();

            currentUser = authProvider.GetCurrentUser();

            // If no user is logged in, They get an empty JSON result.
            // They shouldn't be able to get to this point without logging in.
            // Better safe than sorry.
            if (currentUser == null)
            {
                return(Json(badges));
            }

            badgeDal.GiveUserBadges(currentUser.Id);

            badges = badgeDal.GetUserBadges(currentUser.Id);

            return(Json(badges));
        }