protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { lblTitulo.Text = Global.gTituloPagina; lblTitulo.Text = Global.gSubTituloPagina; Page.Title = "TEC - " + Global.gSubTituloPagina; //TODO: esto es temporal, en etapa de desarrollo wsSeguridad.SeguridadSoapClient wsseg = new wsSeguridad.SeguridadSoapClient(); Session.Add("NUM_CEDULA", wsseg.ObtenerCedula(Session["ID_USUARIO"].ToString())); //obtener número de cédula si tiene. Session.Add("NOM_USUARIO", wsseg.ObtenerNombreUsuario(Session["ID_USUARIO"].ToString())); //obtener nombre completo del usuario.*/ Session.Add("COD_SEDE", "CA"); //hasta aqui... if (Session == null) { Response.Redirect("frmAutenticacion.aspx", true); } //si la sesión es válida crea el menu if (Session["ID_USUARIO"] != null) { CrearMenu(Session["COD_SEDE"].ToString(), Global.gCOD_APLICACION, Session["ID_USUARIO"].ToString()); lblCuentaUsuario.Text = Session["ID_USUARIO"].ToString(); //CrearMenu("CA", 28, "csanabria"); } else { Response.Redirect("frmAutenticacion.aspx"); } } else{ CrearMenu(Session["COD_SEDE"].ToString(), Global.gCOD_APLICACION, Session["ID_USUARIO"].ToString()); } }
protected void btnEntrar_Click(object sender, ImageClickEventArgs e) { lblMensajeError.Text = ""; if (txtUsuario.Text == "") { lblMensajeError.Text = "El nombre de usuario no puede ser vacío"; } else { if (txtPassword.Text == "") { lblMensajeError.Text = "La clave de acceso no puede ser vacía"; } else { try { string IdUsuario = txtUsuario.Text; string Password = txtPassword.Text; Session["COD_SEDE"] = "CA"; // DropSede.SelectedItem.Value; //modificado a solicitud de Kattia 22/3/2012 int CodAplicacion = Global.gCOD_APLICACION; wsSeguridad.SeguridadSoapClient wsseg = new wsSeguridad.SeguridadSoapClient(); if (wsseg.TieneAccesoAplicacion(CodAplicacion, IdUsuario, Session["COD_SEDE"].ToString())) { switch (System.Int32.Parse(ddlTipoUsuario.SelectedItem.Value)) { case 1://Funcionario wsseg.ValidarFuncionarioBit(IdUsuario, Password, Global.gCOD_APLICACION, Session["COD_SEDE"].ToString()); break; case 2://Estudiante if (!wsseg.ValidarEstudianteBit(IdUsuario, Password, Global.gCOD_APLICACION, Session["COD_SEDE"].ToString())) { throw new Exception("El Pin es incorrecto."); } break; case 3://Usuario Sistema wsseg.ValidarUsuarioSistema(IdUsuario, Password, CodAplicacion, Session["COD_SEDE"].ToString()); break; } Session.Add("ID_USUARIO", IdUsuario); Session.Add("NUM_CEDULA", wsseg.ObtenerCedula(IdUsuario)); //obtener número de cédula si tiene. Session.Add("NOM_USUARIO", wsseg.ObtenerNombreUsuario(IdUsuario)); //obtener nombre completo del usuario. Session.Add("COD_SEDE", Session["COD_SEDE"].ToString()); if (FormsAuthentication.GetRedirectUrl(IdUsuario, false) == "") { FormsAuthentication.SetAuthCookie(IdUsuario, false); Response.Redirect(this.PaginaRedireccionar); } else { FormsAuthentication.RedirectFromLoginPage(IdUsuario, false); } } else { txtUsuario.Text = ""; txtPassword.Text = ""; } } catch (COMException ex)// captura y manejo de errores { if (ex.ErrorCode == -2147024810) { lblMensajeError.ForeColor = Color.Red; lblMensajeError.Font.Bold = true; lblMensajeError.Text = "La contraseña de red especificada no es válida"; txtPassword.Text = ""; } else if (ex.ErrorCode == -2147023570) { lblMensajeError.ForeColor = Color.Red; lblMensajeError.Font.Bold = true; lblMensajeError.Text = "Error de inicio de sesión: nombre de usuario desconocido o contraseña incorrecta"; txtPassword.Text = ""; } else { lblMensajeError.Text = ex.Message; txtPassword.Text = ""; } } catch (Exception ex) // captura y manejo de errores { lblMensajeError.ForeColor = Color.Red; lblMensajeError.Font.Bold = true; lblMensajeError.Text = ex.Message; txtPassword.Text = ""; } } } }