Ejemplo n.º 1
0
        protected void cvLogin_ServerValidate(object sender, ServerValidateEventArgs e)
        {
            //Valida se usuario existe
            DBLayers.BLL.Regras.Usuario usuario = new DBLayers.BLL.Regras.Usuario();
            usuario.Select(this.Instancia.UserID);

            e.IsValid = (usuario.Instance == null);
        }
Ejemplo n.º 2
0
        protected void lnkLogar_Click(object sender, EventArgs e)
        {
            try
            {
                //Caso usuário não digite a senha invalida operação
                if (string.IsNullOrEmpty(txtUserID.Text) || string.IsNullOrEmpty(txtSenhas.Text))
                    return;

                #region Logar
                if (this.UsuarioLogado == null || this.UsuarioLogado.TipoPerfil != References.Common.Enumerations.TipoPerfil.NaoDefinido)
                {
                    DBLayers.BLL.Regras.Usuario rUsr = new DBLayers.BLL.Regras.Usuario();
                    rUsr.Select(txtUserID.Text, txtSenhas.Text);

                    if (rUsr.Instance != null)
                    {

                        #region Verificar se usuario esta logado em outro lugar
                        if (Application["UsuariosAtivos"] != null)
                        {
                            Dictionary<string, References.Security.UserContext> UsuarioAtivos =
                                     Application["UsuariosAtivos"] as Dictionary<string, References.Security.UserContext>;

                            foreach (References.Security.UserContext usuariologado in UsuarioAtivos.Values)
                            {
                                if (usuariologado.UserID.Equals(rUsr.Instance.UserID)
                                    && !usuariologado.NomeComputador.Equals(Request.ServerVariables[5]))
                                {
                                    ScriptManager.RegisterStartupScript(this, this.GetType(), "_alert",
                                            "alert(\"Usuário já esta logado em outra máquina!\")", true);
                                    return;
                                }
                            }
                        }
                        #endregion

                        this.AutenticarUsuario(
                            new References.Security.UserContext()
                            {
                                NomeUsuario = rUsr.Instance.NomeAdministrador,
                                UserID = rUsr.Instance.UserID,
                                TipoPerfil = (References.Common.Enumerations.TipoPerfil)rUsr.Instance.TipoPerfil,
                                NomeComputador = Request.ServerVariables[5]
                            });

                        RegistarUsuario();

                        if (!string.IsNullOrEmpty(ReturnPage))
                            Response.Redirect(ReturnPage);
                        else
                            Response.Redirect("~/Default.aspx");
                    }
                }
                else if (!string.IsNullOrEmpty(ReturnPage))
                {
                    RegistarUsuario();
                    Response.Redirect(ReturnPage);
                }
                else
                {
                    RegistarUsuario();
                    Response.Redirect("~/Default.aspx");
                }
                #endregion
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }