public override void OnAuthorization(AuthorizationContext filterContext)
        {
            // Se não tiver token
            if (filterContext.HttpContext.Session["TOKEN"] == null)
            {
                filterContext.Result = new RedirectResult("~/Login");
            }
            else
            {
                String token = filterContext.HttpContext.Session["TOKEN"].ToString();

                BPLogin bp = new BPLogin();

                if (!bp.TokenEhValido(token) || !bp.UsuarioAtivo(token))
                {
                    filterContext.Result = new RedirectResult("~/Login");
                }
            }
        }
        public ActionResult Validar(LoginModels model)
        {
            BPLogin bplogin = new BPLogin();

            if (!bplogin.Validar(model.usuario, model.senha))
            {
                AddMessage("Autenticação", "Usuário e/ou Senha não foram identificados.", "erro", true);
                return(RedirectToAction("Index"));
            }
            String token = bplogin.RecuperarToken(model.usuario, model.senha);

            if (!bplogin.UsuarioAtivo(token))
            {
                AddMessage("Autenticação", "Sua conta está bloqueada. Entre em contato com o Administrador do Sistema.", "error", true);
                return(RedirectToAction("Index"));
            }
            else
            {
                Session["TOKEN"] = token;
                Session["VISAO"] = false;
                return(RedirectToAction("Index", "Home"));
            }
        }