Insignias de publicación

Okay, no es necesario reinstalar para las actualizaciones, pero la reinstalé porque no funcionaba. El nuevo repositorio tampoco funciona.

1 me gusta

Solo para aclarar: ¿pudiste actualizar el componente, pero la actualización no resolvió el problema? ¿Luego eliminaste el componente antiguo y lo reinstalaste desde el nuevo repositorio?

Lo estoy viendo funcionar sin problemas en dos instancias separadas de Discourse. Asegúrate de:

  • Haber agregado el componente al tema correcto.
  • Haber recargado la página después de agregar el componente.
  • Ajustar todas las configuraciones según tus necesidades.
3 Me gusta

Sí, exactamente.

  • Lo agregué a mi tema principal
  • Refresqué la página
  • Configuración completada

Resultado:
image

4 Me gusta

Estoy bastante seguro de que lo he resuelto.

Me olvidé completamente de dar seguimiento a esto :sweat_smile: Acabo de subir un commit que debería solucionar las cosas para ti. Avísame si encuentras cualquier otro problema.

6 Me gusta

No aparecía en ‘componentes disponibles para actualizar’, así que lo eliminé y lo instalé desde
GitHub - discourse/discourse-post-badges

Ahora funciona como se esperaba.
Gracias, ¡fue muy rápido!

6 Me gusta

No quedan problemas. Gracias.

@tshenry Ha dejado de funcionar :thinking:

5 Me gusta

¿Todo el componente o has vuelto al problema original de que esa configuración no funciona? Acabo de probarlo todo (también con una configuración regional no inglesa) y todo parece funcionar correctamente. Necesitaré más detalles, por favor :slight_smile:

2 Me gusta

No, esta vez ha dejado de funcionar por completo.

Supongo que he encontrado la razón por la que dejó de funcionar. Los nombres de mis insignias están en turco. Cambié el idioma de turco a inglés. Ahora lo he vuelto a cambiar a turco y ya funciona.

6 Me gusta

Genial. Eso es un comportamiento esperado, al menos por ahora. No creo que haya una forma de evitar esto al ingresar una insignia en la configuración por su nombre. Consideraré agregar soporte adicional para ingresar una insignia por ID para hacer las cosas aún más independientes de la configuración regional, pero pasará un tiempo antes de que pueda ocuparme de ello.

6 Me gusta

Advertencia: a continuación se muestran las 10 solicitudes más frecuentes de las últimas horas en un sitio que utiliza este componente del tema.

El sitio se volvió extremadamente lento y se convirtió en una experiencia masiva de limitación de tasa, con navegadores colgados y numerosas quejas.

 214163 GET /user-badges
  29537 POST /message-bus
  14166 GET /assets
  13425 GET /user_avatar
  10125 GET /stylesheets
   8957 GET /theme-javascripts
   8131 GET /images
   7160 GET /letter_avatar
   2992 POST /topics
   2845 GET /t
12 Me gusta

Sí, somos conscientes de esto y vamos a mejorarlo.

9 Me gusta

No sé si esto está relacionado, pero últimamente recibo muchos errores al hacer clic en enlaces que apuntan a la página de insignias. He creado una página de resumen para las insignias personalizadas de cada usuario (con un emoji que las acompaña), y al hacer clic en varios enlaces como [:z133:](/badges/133/-?username=user_name) seguidos, aparece un error:

Registro:

Mensaje

Uncaught TypeError: Cannot read property 'users' of undefined
Url: https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js
Línea: 1
Columna: 267440
Ubicación de la ventana: https://discourse.forum.tld/t/topic-slug/id

Rastreo

TypeError: Cannot read property 'users' of undefined
    at https://discourse.forum.tld/assets/plugins/discourse-presence-e4fe1148b25ac06931c3b78b8411907e35aef58f8dd5ac28a262cdd28fb6e51d.js:1:5982
    at E (https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:547359)
    at https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:547817
    at t.invoke (https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:490065)
    at e.t.flush (https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:489055)
    at e.t.flush (https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:491070)
    at e.t._end (https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:496499)
    at e.t.end (https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:493035)
    at e.t._run (https://discourse.forum.tld/assets/ember_jquery-57d09ec67e9e407d9b0d42aa1fefd1a470c45310d953b07793a3ca8adc6ec599.js:1:497037)

Entorno

HOSTS HTTP: discourse.forum.tld
1 me gusta

Estoy usando enlaces en todas mis descripciones para insignias personalizadas de esta manera:

Descripción de la insignia seguida de un enlace <a href="/t/topic-slug/id#heading--detailed-descrption-topic">➥</a>

que apunta al tema con la descripción detallada de la insignia. Funciona muy bien en la página de insignias, pero los usuarios se confunden con los códigos HTML que se muestran en los mensajes emergentes de las insignias en las publicaciones:

Si las etiquetas de ancla <a href=...>Descripción</a> pudieran eliminarse del mensaje emergente, dejando solo la descripción, probablemente se resolvería la mayoría de los casos de uso.

4 Me gusta

¿Por casualidad, esto ya se ha solucionado en la versión 2.5.X?

@tshenry he encontrado una solución alternativa que evita múltiples llamadas a la API para cargar los datos del usuario. La he utilizado en este componente del tema:

¿Qué opinas?

4 Me gusta

Este componente está causando errores de JS al usar los nuevos atajos de teclado para el tema anterior/siguiente que Sam agregó al núcleo (gj). Es un poco impredecible, pero se puede reproducir de manera consistente usando el atajo para ir al siguiente tema hasta que ocurra el error. Si elimino el componente, este error nunca ocurre.

Línea 27516

3 Me gusta

¿Cómo va funcionando esta solución hasta ahora? ¿Alguien más la ha puesto a prueba ya? :slight_smile:

2 Me gusta

Solo para avisarles: estoy recopilando los comentarios de todos, pero trabajar en este componente ha sido una prioridad menor mientras esperamos las mejoras que mencionó @sam.

Aún no lo he probado, pero parece que debería ser perfectamente viable usar un enfoque similar para mostrar insignias de nivel de confianza. Lo que necesitaría la mejora que mencionó Sam son las insignias que no son de nivel de confianza.

Sería útil saber cómo usan las personas este componente, o al menos cómo les gustaría usarlo.

¿Qué insignias quieren mostrar?
  • Insignias de nivel de confianza
  • Otras insignias
  • Una combinación de ambas
0 voters

Si hay suficiente interés en los niveles de confianza, puedo crear un componente separado llamado “Estilo de publicación por nivel de confianza” que podría eliminarse una vez que se mejore el rendimiento de este componente.

6 Me gusta

Solo una nota aquí: hemos creado una versión de código abierto de esto en un plugin, que serializa las insignias junto con la publicación en sí, para abordar el problema de rendimiento mencionado anteriormente.

En cuanto a la selección de qué insignias se destacarán, el usuario lo hace por sí mismo en su perfil, en una nueva configuración específica del usuario.

12 Me gusta

¿A alguien más le ha dejado de mostrar este componente las imágenes personalizadas que se suben? Por defecto muestra el icono de Font Awesome y, si no se selecciona ningún icono de FA, muestra “undefined”, independientemente de si se ha subido o no un icono personalizado.

¡Gracias!

3 Me gusta