private void ReiniciarPantalla()
 {
     try
     {
         EmpleadoVerPerfil empleadoVerPerfil = new EmpleadoVerPerfil();
         this.Hide();
         empleadoVerPerfil.Show();
     }
     catch (Exception ex)
     {
         string metodoYclase = this.GetType().Name + ", " + System.Reflection.MethodBase.GetCurrentMethod().Name;
         registrarError(ex, metodoYclase);
     }
 }
 private void botonDeVerPerfil_Click(object sender, EventArgs e)
 {
     try
     {
         EmpleadoVerPerfil empleadoVerPerfil = new EmpleadoVerPerfil();
         this.Hide();
         empleadoVerPerfil.Show();
     }
     catch (Exception ex)
     {
         string metodoYclase = this.GetType().Name + ", " + System.Reflection.MethodBase.GetCurrentMethod().Name;
         registrarError(ex, metodoYclase);
     }
 }
        private void botonDeGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                string contrasenaAnterior = "";
                var    conexion           = AbrirBaseDeDatos();
                var    comando            = conexion.GetStoredProcCommand("[EMPLEADO_SACAR_CONTRASENA]", Empleado.Cedula);
                conexion.ExecuteNonQuery(comando);
                using (IDataReader informacionEncontrada = conexion.ExecuteReader(comando))
                {
                    if (informacionEncontrada.Read())
                    {
                        contrasenaAnterior = informacionEncontrada.GetString(0);
                    }
                }
                EmpleadoVerPerfil empleadoVerPerfil = new EmpleadoVerPerfil();
                string            contrasena        = textBoxDeContrasena.Text;
                string            contrasenaEnHash  = encriptarClaveAsha256(contrasena);
                contrasenaEnHash = contrasenaEnHash.Substring(0, 24);
                if (string.IsNullOrEmpty(contrasena))
                {
                    MessageBox.Show("Escriba contraseña", "Opciones de Contraseña", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else if (!ValidarContrasena(contrasena))
                {
                    MessageBox.Show("Revise contraseña", "Opciones de Contraseña", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else if (contrasenaEnHash.Equals(contrasenaAnterior))
                {
                    MessageBox.Show("Contraseña igual a la anterior, por favor usar otra.", "Opciones de Contraseña", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    const string message = "Desea guardar la contraseña escrita?";
                    const string caption = "Opciones de Contraseña";
                    var          result  = MessageBox.Show(message, caption,
                                                           MessageBoxButtons.YesNoCancel,
                                                           MessageBoxIcon.Question);
                    // Seleccionar no
                    if (result == DialogResult.No)
                    {
                        MessageBox.Show("Regresando", "Opciones de Contraseña", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else if (result == DialogResult.Yes)
                    {
                        var comando02 = conexion.GetStoredProcCommand("[EMPLEADO_CAMBIAR_CONTRASENA]", Empleado.Cedula, contrasenaEnHash);
                        conexion.ExecuteNonQuery(comando02);
                        AdministradorDeCorreo administradorDeCorreo = new AdministradorDeCorreo("mail.electronicaureba.com", "*****@*****.**", "Qwertz987.,!", 8889);
                        StringBuilder         builder = new StringBuilder();

                        builder.Append("<table class=table table-bordered align=center border=1 cellpadding= 3 cellspacing= 0 width= 100%'>");
                        builder.Append("<tr>");
                        builder.Append("<th>CONTRASEÑA NUEVA</th>");
                        builder.Append("</tr>");
                        builder.Append("<tr>");
                        builder.Append("<td align=center>" + contrasena + "</td>");
                        builder.Append("</tr>");
                        builder.Append("</table>");


                        List <string> listaDeCorreos = new List <string>();

                        string evento       = "El empleado con cédula: " + Empleado.Cedula + "; ha actualizado su contraseña.";
                        string metodoYclase = this.GetType().Name + ", " + System.Reflection.MethodBase.GetCurrentMethod().Name;
                        registrarEvento(evento, metodoYclase);
                        administradorDeCorreo.EnviarCorreo("<img src=https://i.ibb.co/jv7wTtq/LOGO-UREBA.png height=80vh width=100%> <br> <br> <h1>Ha hecho un cambio de contraseña, a continuación se muestra su nueva contraseña:</h1> <br/> " + builder.ToString(), "Cambio de Contraseña", "*****@*****.**", "Electrónica UREBA S.A.", new List <string> {
                            Empleado.Correo
                        });
                        MessageBox.Show("Cambios realizados, su nueva contraseña se ha enviado a su correo", "Opciones de Contraseña", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.Hide();
                        empleadoVerPerfil.Show();
                    }
                    else if (result == DialogResult.Cancel)
                    {
                        MessageBox.Show("Regresando", "Opciones de Contraseña", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
            catch (Exception ex)
            {
                string metodoYclase = this.GetType().Name + ", " + System.Reflection.MethodBase.GetCurrentMethod().Name;
                registrarError(ex, metodoYclase);
            }
        }