Las insignias destacadas rompen la página de perfil del usuario

Hola,

Noté que la página de perfil de usuario termina después del encabezado “Insignias destacadas”. No hay nada más debajo (especialmente no el botón Guardar), excepto el pie de página del sitio.

Encontré lo siguiente en la consola del desarrollador:

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'split')
    at l.<anonymous> (user-featured-badges.js:12:1)
    at getter (index.js:444:104)
    at l.a [as featuredBadges] (cache-BESCGvbE.js:1878:17)
    at eM (cache-BESCGvbE.js:1647:18)
    at index.js:95:32
    at index.js:75:37
    at Z (index.js:418:5)
    at T (index.js:74:16)
    at eU (index-Cx6axmzR.js:1786:17)
    at eK.create (index-Cx6axmzR.js:1961:17)
    at Object.evaluate (index.js:1393:23)
    at Object.evaluate (index.js:770:198)
    at tq.evaluateSyscall (index.js:3353:20)
    at tq.evaluateInner (index.js:3332:60)
    at tq.evaluateOuter (index.js:3329:10)
    at t1.next (index.js:3990:46)
    at t1._execute (index.js:3979:21)
    at t1.execute (index.js:3955:41)
    at tW.handleException (index.js:3447:19)
    at tJ.handleException (index.js:3595:52)
    at t$.throw (index.js:3400:16)
    at ek.evaluate (index.js:964:42)
    at t$._execute (index.js:3387:34)
    at t$.execute (index.js:3379:17)
    at tQ.rerender (index.js:3613:8)
    at t5.render (index-Cx6axmzR.js:5114:55)
    at index-Cx6axmzR.js:5390:16
    at tD (index.js:2893:7)
    at io._renderRoots (index-Cx6axmzR.js:5370:7)
    at io._renderRootsTransaction (index-Cx6axmzR.js:5418:12)
    at io._revalidate (index.js:5451:10)
    at invoke (index.js:262:14)
    at m.flush (index.js:180:11)
    at g.flush (index.js:334:19)
    at q._end (index.js:762:32)
    at index.js:499:12
2 Me gusta

¿Alguna idea sobre este problema? ¿Qué información puedo proporcionar para investigar mejor este problema?

1 me gusta

… acabo de descubrir que para otro usuario que ha configurado algunas insignias destacadas, la página de perfil se carga completamente. No he configurado ninguna insignia destacada, ¿quizás esa sea la razón?

1 me gusta

¿Intentaste el modo seguro?

Creo que esa sección la añade el complemento de insignias de publicaciones, por lo que podría ser un error en el complemento en lugar del núcleo de Discourse.

Quizás @Arkshine sabe más al respecto

2 Me gusta

Gracias por informar, @Roi, y gracias, @Moin, por llamar mi atención sobre esto. Puedo reproducirlo. El problema ocurre cuando un usuario no tiene ninguna insignia. Haré un PR lo antes posible.

3 Me gusta

¡Gracias! :slight_smile:

Por cierto, ¿lo ejecuto como un plugin? ¿Es correcto o debería ejecutarlo como un componente temático?

1 me gusta

Aquí vamos:

La versión del componente temático no permite a los usuarios seleccionar las insignias en sus perfiles. Es una configuración global para todos los usuarios, que es la principal diferencia.

4 Me gusta

¿Entonces entiendo que la versión del plugin es mejor?

¡Gracias por la PR! :slight_smile: ¿Es para ambas versiones?

Depende de si quieres que tus usuarios controlen qué insignias quieren mostrar (plugin) o que los administradores controlen qué insignias se pueden mostrar basándose en las insignias del usuario actual (TC).

Es una limitación en TC que no puedas hacer lo mismo que el plugin, pero creo que ambas formas tienen su uso dependiendo de tus necesidades.

2 Me gusta

El PR ya está fusionado y funciona de nuevo, ¡gracias de nuevo! :slight_smile:

1 me gusta

Nota: el seguimiento de errores para temas/componentes o plugins de terceros debe realizarse en el tema dedicado del plugin/tema/componente o en un rastreador de errores de terceros.

3 Me gusta

@Arkshine, ¿puedes compartir el enlace al tema en Meta para el componente de tema afectado? Voy a mover todo esto allí y limpiar estas publicaciones molestas de administración.

Es un plugin y, hasta donde sé, no hay ningún tema. Angus lo publicó originalmente en el tema oficial de TC: Post Badges - #121 by angus. :thinking:

1 me gusta