From bda40b193568b684a4567dbe7eda31febd252ff2 Mon Sep 17 00:00:00 2001 From: mco-system Date: Tue, 9 May 2023 21:22:12 +1100 Subject: [PATCH] fix: get speaker biography directly from speaker code --- src/thsf/__init__.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/thsf/__init__.py b/src/thsf/__init__.py index dd48f2a..c8e5714 100644 --- a/src/thsf/__init__.py +++ b/src/thsf/__init__.py @@ -59,13 +59,11 @@ def get_slots(): return backend.get(endpoint=f"events/{app.local_config['pretalx']['event']}/schedules/{app.local_config['pretalx']['schedule']}/").json() -def get_speaker_biography(name): +def get_speaker_biography(code): try: - speaker_info = backend.get(endpoint=f"events/{app.local_config['pretalx']['event']}/speakers/", params={"q": name}).json() - logger.debug(speaker_info) - return speaker_info["results"][0]["biography"].strip() + speaker_info = backend.get(endpoint=f"events/{app.local_config['pretalx']['event']}/speakers/{code}/").json() + return speaker_info.get("biography").strip() except Exception as err: - logger.warning(f"UnknownSpeakerError: {name} from {str(err)}") return None @@ -126,7 +124,7 @@ def planning(): slots = get_slots() for slot in slots.get("slots"): for speaker in slot.get("speakers"): - speaker["biography"] = get_speaker_biography(speaker.get("name")) + speaker["biography"] = get_speaker_biography(speaker.get("code")) return render_template("planning.html", slots=sorted(slots.get("slots"), key=lambda slot: slot.get("slot").get("start")),