Error en avatar del proveedor Multisite DiscourseConnect

Problema
DiscourseConnect Provider devuelve una URL incorrecta para user_avatar en el payload en un entorno multisitio.

Cuando DiscourseConnect actúa como proveedor, devuelve avatar_url en un formato al que le faltan ‘uploads’ y el nombre del host multisitio.

Por ejemplo:

Esperado: https://cdn.cdnprovider.com/uploads/dbname/original/1X/1e653a3bc23b6b07017f5635128da0b353489e60.jpg'
Realidad:  https://cdn.cdnprovider.com/original/1X/1e653a3bc23b6b07017f5635128da0b353489e60.jpg`

El código está aquí y está reconstruyendo la URL desde la carga.

      if current_user.uploaded_avatar.present?
        base_url =
          Discourse.store.external? ? "#{Discourse.store.absolute_base_url}/" : Discourse.base_url
        avatar_url =
          "#{base_url}#{Discourse.store.get_path_for_upload(current_user.uploaded_avatar)}"
        sso.avatar_url = UrlHelper.absolute Discourse.store.cdn_url(avatar_url)
      end

mientras que user.uploaded_avatar.url parece dar el resultado correcto.

3 Me gusta

Gracias, le echaré un vistazo :eyes:

3 Me gusta

Se solucionará con

4 Me gusta

Este tema se cerró automáticamente después de 2 días. Ya no se permiten nuevas respuestas.