From 84008ce945f24d68fb6e2f07894a9e078f4d25ca Mon Sep 17 00:00:00 2001
From: Andreas Hubel <andi@saerdnaer.de>
Date: Mon, 25 Dec 2023 00:52:59 +0100
Subject: [PATCH] fix(schedule-import): propery map avatar_url as avatar

---
 src/api/schedule.py                    | 6 +++---
 src/core/models/schedules.py           | 2 +-
 src/core/models/users.py               | 2 +-
 src/core/schedules/schedulejsonfrab.py | 6 +++---
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/api/schedule.py b/src/api/schedule.py
index d518eee8c..65ad5f1a1 100644
--- a/src/api/schedule.py
+++ b/src/api/schedule.py
@@ -115,7 +115,7 @@ class ScheduleEncoder(json.JSONEncoder):
                 'guid': p.uuid,
                 'name': name,
                 'public_name': name,
-                'avatar_url': p.avatar_url,
+                'avatar': p.avatar_url,
                 'biography': member.description if member else None,
                 # 'links': person.links,  # TODO
                 # 'url': p.get_absolute_url(),
@@ -129,7 +129,7 @@ class ScheduleEncoder(json.JSONEncoder):
                 'guid': p.participant.uuid,
                 'name': name,
                 'public_name': name,
-                'avatar_url': p.participant.avatar_url,
+                'avatar': p.participant.avatar_url,
                 'biography': member.description if member else '',
                 # 'links': person.participant.links,  # TODO
                 # 'url': p.participant.get_absolute_url(),
@@ -140,7 +140,7 @@ class ScheduleEncoder(json.JSONEncoder):
             'guid': p.get('guid', None),
             'id': p.get('id', None),
             'name': p.get('name', p.get('public_name')),
-            'avatar_url': p.get('avatar', None),
+            'avatar': p.get('avatar', None),
             'biography': p.get('biography') or p.get('description', ''),
             'links': p.get('links', []),
         }
diff --git a/src/core/models/schedules.py b/src/core/models/schedules.py
index bb0cb67d6..658c56ce1 100644
--- a/src/core/models/schedules.py
+++ b/src/core/models/schedules.py
@@ -450,7 +450,7 @@ class ScheduleSource(models.Model):
                 }
               ],
               "biography": "Das Projekt-Team vom Hub, der Daten-Integrationsplattform von Congress & Camp.",
-              "avatar_url": "https://www.ccc.de/images/events.png",
+              "avatar": "https://www.ccc.de/images/events.png",
               "public_name": "Hub Team"
             }
             ```
diff --git a/src/core/models/users.py b/src/core/models/users.py
index d1ee7f4a8..37cb8fcb1 100644
--- a/src/core/models/users.py
+++ b/src/core/models/users.py
@@ -387,7 +387,7 @@ class PlatformUser(AbstractUser):
             )
 
         # load avatar, if an URL is given (and has not changed since last time)
-        if avatar_url := data.get('avatar_url'):
+        if avatar_url := data.get('avatar'):
             if obj.avatar_url != avatar_url:
                 try:
                     obj.load_avatar_from_url(avatar_url)
diff --git a/src/core/schedules/schedulejsonfrab.py b/src/core/schedules/schedulejsonfrab.py
index 314ec2c4d..d2285b429 100644
--- a/src/core/schedules/schedulejsonfrab.py
+++ b/src/core/schedules/schedulejsonfrab.py
@@ -79,8 +79,8 @@ class ScheduleJSONFrabSupport(ScheduleJSONSupport):
             images_base_url = schedule.get('base_url')
 
         def overwrite_avatar_url(p):
-            if p.get('avatar_url'):
-                return {**p, 'avatar_url': p['avatar_url'].replace('/original/', '/large/').replace(f'{host}/', images_base_url)}
+            if p.get('avatar'):
+                return {**p, 'avatar': p['avatar'].replace('/original/', '/large/').replace(f'{host}/', images_base_url)}
             return p
 
         for e in schedule.events():
@@ -153,7 +153,7 @@ class SpeakerJSON:
                     'name': s.get('name'),
                     'public_name': s.get('public_name'),
                     'biography': SpeakerJSON.build_biogaphy(s),
-                    'avatar_url': f"{base_url}{s['image']}" if s.get('image') else None,
+                    'avatar': f"{base_url}{s['image']}" if s.get('image') else None,
                     'links': s.get('links', []),
                 }
             )
-- 
GitLab