private void BtnEnviarCorreo_Click(object sender, EventArgs e) { if (String.IsNullOrWhiteSpace(txtUsername.Text) || String.IsNullOrWhiteSpace(txtEmail.Text)) { MessageBox.Show("Debe completar todos los campos."); return; } try//validar email { var addr = new MailAddress(txtEmail.Text); if (addr.Address != txtEmail.Text) { MessageBox.Show("El email no es válido"); return; } } catch { MessageBox.Show("El email no es válido"); return; } try { Modelo.Usuario usuario = usuarioBL.Consultar(txtUsername.Text, txtEmail.Text); if (usuario == null) { MessageBox.Show("Los datos ingresados son incorrectos"); return; } string passDES = Logica.Hasheo.RandomString(6, true); usuario.Password = Logica.Hasheo.GenerarContrasena(passDES); usuarioBL.CambiarContrasena(passDES, usuario.ID, usuario.ID, true); usuarioBL.EnviarEmail(passDES, usuario.Email); MessageBox.Show("Revise su correo electrónico para conocer su nueva contraseña."); } catch (Exception) { MessageBox.Show("Ha ocurrido un error"); } this.Close(); }
private void BtnAceptar_Click(object sender, EventArgs e) { if (necesitaContrActual && String.IsNullOrWhiteSpace(txtContrasenaActual.Text) || String.IsNullOrWhiteSpace(txtContrasenaNueva.Text) || String.IsNullOrWhiteSpace(txtRepetirContrasena.Text)) { MessageBox.Show("Debe completar todos los campos"); return; } if (txtContrasenaNueva.Text != txtRepetirContrasena.Text) { MessageBox.Show("Las contraseñas no coinciden"); return; } if (necesitaContrActual) { if (!usuarioBL.ValidarContrasena(usuario, txtContrasenaActual.Text, txtContrasenaNueva.Text)) { MessageBox.Show("La contraseña actual no es correcta o coincide con la nueva"); return; } } try { bool needNewPass = !necesitaContrActual; usuarioBL.CambiarContrasena(txtContrasenaNueva.Text, userId, Modelo.Sesion.ObtenerInstancia().Usuario.ID, needNewPass); Actualizar(false); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } }