Пример #1
0
        public ActionResult Login(UtilizadorLogIn objetoM)
        {
            //SetUp _Layout e check permições do urilizador
            setNavbar();
            setUserContext();
            if ((int)utilizadorATrabalhar._prefil != 0)
            {
                return(RedirectToAction("Index", "Home"));
            }


            string resultado = "";

            if (ModelState.IsValid)   // Validar caso JS for deslicado do lado do cliente
            {
                try {
                    Utilizador_Helper objetoHelper = new Utilizador_Helper(Program._conect);
                    utilizadorATrabalhar = objetoHelper.autentificar(objetoM._login, objetoM._pass);
                    HttpContext.Session.SetString("id", utilizadorATrabalhar._uidUtilizador);
                    return(RedirectToAction("Index", "Home"));
                }
                catch (Exception e) { resultado = e.Message; }
            }

            // Devolver página de erro
            if (resultado != "")
            {
                return(RedirectToAction(nameof(Error), new { menssagem = resultado }));
            }
            return(RedirectToAction("Index", "Home"));
        }
Пример #2
0
        public ActionResult Logout()
        {
            //SetUp _Layout e check permições do urilizador
            setNavbar();
            setUserContext();

            Utilizador_Helper objetoHelper = new Utilizador_Helper(Program._conect);

            utilizadorATrabalhar = objetoHelper.logout();
            HttpContext.Session.SetString("id", utilizadorATrabalhar._uidUtilizador); // Passar para Convidado
            // Gravar logo de saida
            return(RedirectToAction("Index", "Home"));
        }
Пример #3
0
        //--- Transformar id utilizador da sessão para objeto UtilizadorAtivo
        private void setUserContext()
        {
            string uid = "";

            try {
                //Existe já uid definido (mesmo que = "") ?
                uid = HttpContext.Session.GetString("id");
                //Sim
            }
            catch {
                //Não... portanto, predefinir conta Guest quando entra pela primeira vez
                HttpContext.Session.SetString("id", "");    //é um convidado
                uid = "";
            }
            //No conta, passo a ter um convidado (se uid="") ou um perfil válido sempre que uid é um uniqueidentifier válido e exista na BD e ativo
            utilizadorATrabalhar = Program.getUtilizador(uid);
            HttpContext.Session.SetString("id", utilizadorATrabalhar._uidUtilizador);

            //Importantissimo para enviar o perfil para a View para gerir permissões
            ViewBag.utilizador = (UtilizadorAtivo)utilizadorATrabalhar;
        }