public String bloquear(string usuario_tb) { ManejadorXML manej = new ManejadorXML(); usuario_tb = usuario_tb.Trim(); System.Diagnostics.Debug.WriteLine("ESTE es el SessionID " + Session.SessionID); //check the IsNewSession value, this will tell us if the session has been reset if (Session.IsNewSession) { //now we know it's a new session, so we check to see if a cookie is present string cookie = HttpContext.Current.Request.Headers["Cookie"]; //now we determine if there is a cookie does it contains what we're looking for if ((null != cookie) && (cookie.IndexOf("ASP.NET_SessionId") >= 0)) { //since it's a new session but a ASP.Net cookie exist we know //the session has expired so we need to redirect them System.Diagnostics.Debug.WriteLine("Error 503"); return manej.codificarXmlAEnviar(manej.envioMensajeError("503")); } } Usuario usuarioInput = new Usuario(usuario_tb); System.Diagnostics.Debug.WriteLine("Error 3"); //Invocar método que coloque bloqueado = 1 usuarioInput.setBloqueadoTrue(usuario_tb); //Creamos un hilo que espera a que //que transcurra el tiempo para poner en 0 nuevamente el campo //bloqueado Thread th1 = new Thread(new ThreadStart(usuarioInput.esperaDesbloquear)); th1.Start(); return manej.codificarXmlAEnviar(manej.envioMensajeError("3")); }
public String InicioSesion(string usuario_tb, string clave_tb) { ManejadorXML manej = new ManejadorXML(); usuario_tb = usuario_tb.Trim(); clave_tb = clave_tb.Trim(); System.Diagnostics.Debug.WriteLine("ESTE es el SessionID " + Session.SessionID); //check the IsNewSession value, this will tell us if the session has been reset if (Session.IsNewSession) { //now we know it's a new session, so we check to see if a cookie is present string cookie = HttpContext.Current.Request.Headers["Cookie"]; //now we determine if there is a cookie does it contains what we're looking for if ((null != cookie) && (cookie.IndexOf("ASP.NET_SessionId") >= 0)) { //since it's a new session but a ASP.Net cookie exist we know //the session has expired so we need to redirect them System.Diagnostics.Debug.WriteLine("Error 502"); return manej.codificarXmlAEnviar(manej.envioMensajeError("502")); } else { Session.Add("Loggedin", ""); } } //Creamos una instancia de usuario con los datos que fueron introducidos por pantalla (Pantalla de Inicio de Sesión) Usuario usuarioInput = new Usuario(usuario_tb, clave_tb); //Verificamos si la base de datos está disponible usuarioInput.DisponibleBD(); if (usuarioInput.Disponible == false) return manej.codificarXmlAEnviar(manej.envioMensajeError("600")); //Verificamos si el usuario ingresado existe en la base de datos usuarioInput.ExisteUsuario(); if (usuarioInput.Valido == false) { System.Diagnostics.Debug.WriteLine("Error 1"); return manej.codificarXmlAEnviar(manej.envioMensajeError("1")); } else { //Verificamos si el usuario está bloqueado if (usuarioInput.estaBloqueado(usuario_tb)) { System.Diagnostics.Debug.WriteLine("Error 4"); return manej.codificarXmlAEnviar(manej.envioMensajeError("4")); } else { //Como el usuario es válido creamos su count de intentos fallidos (en caso de que no exista) //if (Session[usuario_tb] == null) // Session.Add(usuario_tb, 0); //System.Diagnostics.Debug.WriteLine("Count de " + usuario_tb + " " + (int)Session[usuario_tb]); //Verificamos que se introdujo bien la contraseña String codigo = usuarioInput.ConsultarUsuario(); if (usuarioInput.Valido == false) { //Session[usuario_tb] = (int)Session[usuario_tb] + 1; //if ((int)Session[usuario_tb] == 3) /*{ System.Diagnostics.Debug.WriteLine("Error 3"); //Invocar método que coloque bloqueado = 1 usuarioInput.setBloqueadoTrue(usuario_tb); //Creamos un hilo que espera a que //que transcurra el tiempo para poner en 0 nuevamente el campo //bloqueado Thread th1 = new Thread(new ThreadStart(usuarioInput.esperaDesbloquear)); th1.Start(); //Reiniciamos el count Session.Remove(usuario_tb); return manej.codificarXmlAEnviar(manej.envioMensajeError("3")); } else {*/ System.Diagnostics.Debug.WriteLine("Error 0"); return manej.codificarXmlAEnviar(manej.envioMensajeError("0")); //} } else { //Los datos introducidos son correctos. Inicio de sesión exitoso usuarioInput.ConsultarCodigosPago(codigo); usuarioInput.ConsultarFechaAdmin(); Session["Loggedin"] = "yes"; Session.Add("UltimaConsulta", DateTime.Now); Session["codigosPago"] = usuarioInput.CodigosPago; return manej.codificarXmlAEnviar(manej.creacionRespuestaInicioSesion(usuarioInput)); } } } /*VERSION VIEJA ManejadorXML manej = new ManejadorXML(); DataSet ds = new DataSet(); usuario_tb = usuario_tb.Trim(); clave_tb = clave_tb.Trim(); //LOGIN USUARIO// System.Diagnostics.Debug.WriteLine("ESTE es el SessionID " + Session.SessionID); Session.Add("Loggedin", ""); //Creamos una instancia de usuario con los datos que fueron introducidos por pantalla (Pantalla de Inicio de Sesión) Usuario usuarioInput = new Usuario(usuario_tb, clave_tb); //Verificamos si el usuario ingresado existe en la base de datos ds = usuarioInput.ExisteUsuario(usuarioInput); if (ds.Tables[0].Rows.Count == 0) { //Los datos no corresponden a un usuario de la Base de datos return manej.codificarXmlAEnviar(manej.envioMensajeError("1")); } else { ds = usuarioInput.ConsultarUsuario(usuarioInput); if (ds.Tables[0].Rows.Count == 0) { //La contraseña es incorrecta return manej.codificarXmlAEnviar(manej.envioMensajeError("0")); } else { //Los datos introducidos son correctos //Del DataSet devuelto tomo los datos del usuario string nombre = ds.Tables[0].Rows[0].ItemArray.ElementAt(0).ToString(); string apellido = ds.Tables[0].Rows[0].ItemArray.ElementAt(1).ToString(); string codigo = ds.Tables[0].Rows[0].ItemArray.ElementAt(2).ToString(); string nombreUsuario = ds.Tables[0].Rows[0].ItemArray.ElementAt(3).ToString(); Session["Loggedin"] = "yes"; return manej.codificarXmlAEnviar(manej.creacionRespuestaInicioSesion(nombre, apellido, codigo, nombreUsuario)); } }*/ }