Multisite DiscourseConnect Provider Avatar-Bug

Problem
DiscourseConnect Provider gibt in einer Multisite-Umgebung eine falsche URL für user_avatar in der Payload zurück.

Wenn DiscourseConnect als Provider fungiert, gibt es die avatar_url in einem Format zurück, dem die ‘uploads’ und der Name des Multisite-Hosts fehlen.

Zum Beispiel:

Erwartet: https://cdn.cdnprovider.com/uploads/dbname/original/1X/1e653a3bc23b6b07017f5635128da0b353489e60.jpg'
Realität:  https://cdn.cdnprovider.com/original/1X/1e653a3bc23b6b07017f5635128da0b353489e60.jpg`

Der Code befindet sich hier und rekonstruiert die URL aus dem 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

während user.uploaded_avatar.url das richtige Ergebnis zu liefern scheint.

3 „Gefällt mir“

Danke, ich werde es mir ansehen :eyes:

3 „Gefällt mir“

Wird behoben durch

4 „Gefällt mir“

Dieses Thema wurde nach 2 Tagen automatisch geschlossen. Neue Antworten sind nicht mehr möglich.