private void iniciarBtn_Click(object sender, EventArgs e) { try { this.verificarCamposObligatorios(); Login_Manager loginMng = new Login_Manager(); password = Encriptacion.getHashSha256(passBox.Text); id_usuario = loginMng.iniciarLogin(userBox.Text, password); username = userBox.Text; if (id_usuario != 0) { Boolean esPrimerLogin = loginMng.esPrimerLogueo(id_usuario); if (esPrimerLogin) { MessageBox.Show("A continuacion debe actualizar su contraseña"); CambiarPassForm cambiarPassForm = new CambiarPassForm(username, password, id_usuario); if (cambiarPassForm.ShowDialog(this) != DialogResult.OK) { cambioPassOK = false; MessageBox.Show("Operacion cancelada. Debe cambiar contraseña para ingresar al sistema."); } cambiarPassForm.Dispose(); cambiarPassForm.Close(); } if (cambioPassOK) { rolesDeUsuario = rolMng.getRolesConIDUsuario(id_usuario); if (rolesDeUsuario.Count > 1) { //Abro ventana para seleccionar rol, en caso de ser necesario SeleccionRolForm seleccionForm = new SeleccionRolForm(rolesDeUsuario); if (seleccionForm.ShowDialog(this) == DialogResult.OK) { id_rol_seleccionado = seleccionForm.get_IdRolSeleccionado(); } else { MessageBox.Show("Operacion cancelada"); } seleccionForm.Dispose(); seleccionForm.Close(); this.limpiarCampos(); } else { id_rol_seleccionado = rolesDeUsuario.ElementAt(0).id_rol; } funcionalidades = funcMng.funcionalidadesXRol(id_rol_seleccionado); DatosSesion.iniciarSesion(id_usuario, username, password, id_rol_seleccionado, funcionalidades); this.Close(); } } } catch (Exception exc) { MessageBox.Show(exc.Message); } }