Bug dell'avatar del provider Multisite DiscourseConnect

Problema
DiscourseConnect Provider restituisce un URL errato per user_avatar nel payload in un ambiente multisito.

Quando DiscourseConnect agisce come provider, restituisce avatar_url in un formato a cui mancano ‘uploads’ e il nome dell’host multisito.

Ad esempio

Atteso: https://cdn.cdnprovider.com/uploads/dbname/original/1X/1e653a3bc23b6b07017f5635128da0b353489e60.jpg'
Realtà:  https://cdn.cdnprovider.com/original/1X/1e653a3bc23b6b07017f5635128da0b353489e60.jpg`

Il codice è qui e sta ricostruendo l’URL dall’upload

      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

mentre user.uploaded_avatar.url sembra dare il risultato corretto.

3 Mi Piace

Grazie, ci darò un’occhiata :eyes:

3 Mi Piace

Verrà corretto da

4 Mi Piace

Questo argomento è stato chiuso automaticamente dopo 2 giorni. Non sono più consentite nuove risposte.