Frame the club logo with a primary-coloured ring, sharpen its scaling

Wraps the uploaded logo in the same avatar shape as the initials
fallback (so the header doesn't jump in size depending on whether a
club has one) and adds a ring in the club's own primary colour as a
plain border around it.

Also hints the browser to use its higher-quality image scaler: a
club's raster logo is often much smaller than the badge it's shown in,
and the default upscaling in some engines reads as pixelated. Doesn't
affect SVG logos, which scale losslessly regardless.
This commit is contained in:
2026-07-27 11:06:08 +02:00
parent c17e7b5059
commit a86c35cbe7
4 changed files with 28 additions and 4500 deletions

View File

@@ -1009,6 +1009,12 @@ class BrandingTests(TestCase):
self.assertContains(self.login_page("ajax-united.rosterchief.app"), "clubs/ajax-united/crest.png")
def test_a_club_logo_gets_a_primary_coloured_ring(self):
self.club.logo = "clubs/ajax-united/crest.png"
self.club.save()
self.assertContains(self.login_page("ajax-united.rosterchief.app"), "ring-primary")
def test_a_club_colour_overrides_the_theme(self):
self.club.primary_color = "#1e40af"
self.club.save()