コード例 #1
0
        public IActionResult Index()
        {
            _cookiesServices = new CookiesServices(HttpContext.Response.Cookies, HttpContext.Request.Cookies);
            if (string.IsNullOrEmpty(HttpContext.Request.Cookies[CookiesServices.nicknameCookie]) ||
                string.IsNullOrEmpty(HttpContext.Request.Cookies[CookiesServices.nameCookie]))
            {
                return(LocalRedirect("/"));
            }

            string          nickname = _cookiesServices.Get(CookiesServices.nicknameCookie);
            string          path     = HttpContext.Request.Path;
            DataPagePrivate dataPage = _pageDataServices.GetDataPagePrivate(nickname, path);

            if (!dataPage.hasPermisson)
            {
                return(LocalRedirect("/"));
            }

            ViewBag.menu        = dataPage.menu;
            ViewBag.titleHeader = dataPage.TittleHeader;
            ViewBag.userName    = _cookiesServices.Get(CookiesServices.nameCookie);
            ViewData["Title"]   = dataPage.TittlePage;
            ViewBag.LtsUsers    = _userModelServices.findAll();
            ViewBag.LtsProfiles = _profileModelServices.findAll();
            return(View());
        }
コード例 #2
0
        public DataPagePrivate GetDataPagePrivate(string nicknameAuth, string path)
        {
            List <Permissions> permissons = this.GetPermissions(nicknameAuth);

            DataPagePrivate dataPage = this.hasPermissonOnPage(path, permissons);

            if (dataPage.hasPermisson)
            {
                dataPage.menu = this.buildMenu(permissons);
            }
            return(dataPage);
        }
コード例 #3
0
        private DataPagePrivate hasPermissonOnPage(string path, List <Permissions> permissions)
        {
            DataPagePrivate dataPage = new DataPagePrivate();

            dataPage.hasPermisson = false;
            foreach (Permissions pr in permissions)
            {
                string pathPermisson      = "/" + pr.Controller;
                string pathIndexPermisson = pathPermisson + "/" + pr.Page;

                if (pathPermisson == path || pathIndexPermisson == path)
                {
                    _logger.LogInformation("[USER HAS PERMISSON] url: " + path);
                    dataPage.hasPermisson = true;
                    dataPage.TittleHeader = pr.TittleHeader;
                    dataPage.TittlePage   = pr.TittlePage;
                }
            }
            if (!dataPage.hasPermisson)
            {
                _logger.LogError("[USER NOT HAS PERMISSON] url: " + path);
            }
            return(dataPage);
        }