From b198d7473fc6afa32bd2a105181b0f0a4f343cf2 Mon Sep 17 00:00:00 2001 From: NiceAesth Date: Wed, 31 Jan 2024 21:47:44 +0200 Subject: [PATCH 1/2] fix: failed scores seem to have urls now --- aiosu/models/lazer.py | 2 +- aiosu/models/score.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/aiosu/models/lazer.py b/aiosu/models/lazer.py index e5db569..f8b40d2 100644 --- a/aiosu/models/lazer.py +++ b/aiosu/models/lazer.py @@ -175,7 +175,7 @@ def score_url(self) -> Optional[str]: :return: Link to the score on the osu! website :rtype: Optional[str] """ - if (not self.id and not self.best_id) or not self.passed: + if not self.id: return None return ( f"https://osu.ppy.sh/scores/{self.id}" diff --git a/aiosu/models/score.py b/aiosu/models/score.py index 2b1d2b5..d8f63b9 100644 --- a/aiosu/models/score.py +++ b/aiosu/models/score.py @@ -171,7 +171,7 @@ def score_url(self) -> Optional[str]: :return: Link to the score on the osu! website :rtype: Optional[str] """ - if (not self.id and not self.best_id) or not self.passed: + if not self.id: return None return ( f"https://osu.ppy.sh/scores/{self.id}" From 904dc5a79e952d2e7cbf0a2b151a31d06906dcf4 Mon Sep 17 00:00:00 2001 From: NiceAesth Date: Fri, 9 Feb 2024 19:37:06 +0200 Subject: [PATCH 2/2] feat: update handling for score urls --- aiosu/models/lazer.py | 11 ++++++----- aiosu/models/score.py | 11 ++++++----- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/aiosu/models/lazer.py b/aiosu/models/lazer.py index f8b40d2..847d2d0 100644 --- a/aiosu/models/lazer.py +++ b/aiosu/models/lazer.py @@ -177,11 +177,12 @@ def score_url(self) -> Optional[str]: """ if not self.id: return None - return ( - f"https://osu.ppy.sh/scores/{self.id}" - if self.type == "solo_score" - else f"https://osu.ppy.sh/scores/{self.mode.name_api}/{self.best_id}" - ) + if self.type == "solo_score": + return f"https://osu.ppy.sh/scores/{self.id}" + + if not self.best_id: # Legacy URL format + return None + return f"https://osu.ppy.sh/scores/{self.mode.name_api}/{self.best_id}" @property def replay_url(self) -> Optional[str]: diff --git a/aiosu/models/score.py b/aiosu/models/score.py index d8f63b9..4c92dcd 100644 --- a/aiosu/models/score.py +++ b/aiosu/models/score.py @@ -173,11 +173,12 @@ def score_url(self) -> Optional[str]: """ if not self.id: return None - return ( - f"https://osu.ppy.sh/scores/{self.id}" - if self.type == "solo_score" - else f"https://osu.ppy.sh/scores/{self.mode.name_api}/{self.best_id}" - ) + if self.type == "solo_score": + return f"https://osu.ppy.sh/scores/{self.id}" + + if not self.best_id or not self.passed: # Legacy URL format + return None + return f"https://osu.ppy.sh/scores/{self.mode.name_api}/{self.best_id}" @property def replay_url(self) -> Optional[str]: