Example #1
0
        /// <summary>
        /// Valida antes da execução da action se o usuário possui o perfil necessário para a ação
        /// </summary>
        /// <param name="filterContext"></param>
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            Autorizado = false;

            foreach (var _perfil in PerfilAutorizado.ToList())
            {
                switch (_perfil)
                {
                case EnumPerfil.AdministradorMaster:
                    Autorizado = IsAdministradorMaster();
                    break;

                case EnumPerfil.AdministradorEmpresa:
                    Autorizado = IsAdministradorEmpresa();
                    break;
                }

                if (Autorizado)
                {
                    break;
                }
            }

            if (!Autorizado)
            {
                filterContext.Result = new RedirectToRouteResult(new System.Web.Routing.RouteValueDictionary(new { action = "NaoAutorizado", controller = "Account" }));
            }
        }
        /// <summary>
        /// Valida antes da execução da action se o usuário possui o perfil necessário para a ação
        /// </summary>
        /// <param name="filterContext"></param>
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            Autorizado = false;

            foreach (var _perfil in PerfilAutorizado.ToList())
            {
                switch (_perfil)
                {
                case EnumPerfil.AdministradorEmpresa:
                    Autorizado = IsAdministradorEmpresa();
                    break;

                case EnumPerfil.AdministradorMaster:
                    Autorizado = IsAdministradorMaster();
                    break;
                }

                if (Autorizado)
                {
                    break;
                }
            }

            if (!Autorizado)
            {
                filterContext.Result = new ContentResult {
                    Content = string.Empty
                }
            }
            ;
        }

        # region -- MÉTODOS PRIVADOS --