示例#1
0
        // GET: Users/Details/5
        public async Task <IActionResult> Details(int?id)
        {
            var           context  = this;
            var           identity = context.HttpContext.User.Identity as ClaimsIdentity;
            IList <Claim> claim    = identity.Claims.ToList();

            var thisUser = await _context.Users.FirstOrDefaultAsync(u => u.UserName == (claim[0].Value));

            if (AuthHandler.CheckIfAdmin(this))
            {
                TempData["IsAdmin"] = true;
            }
            else if (thisUser.UserId != id)
            {
                return(StatusCode(403));
            }

            if (id == null)
            {
                return(NotFound());
            }

            var user = await sqlTheaterData.OnGetUser(id);

            if (user == null)
            {
                return(NotFound());
            }

            return(View(user));
        }