Rework the Live preview to match D9's actual screenshot

Replaces the earlier sidebar+small-phone mock with D9's real layout: App/
Website/Email tabs (App is the only one with real content, so these are
static labels not a working control), a full-size phone mock, and a public-
site mock, plus the "Where the brand shows up" list. The phone's "Next up"
card now uses primary, not secondary -- it's a notice, not a call to action,
so it shouldn't compete visually with an actual accent-coloured button.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ECGMEwrc2k4D8VQuwjstj9
This commit is contained in:
2026-08-20 09:19:23 +02:00
parent 59d1fce674
commit 224a3fe4ed
4 changed files with 176 additions and 137 deletions

View File

@@ -4465,18 +4465,19 @@ class ClubSettingsPreviewTests(ManagementTestBase):
def setUp(self):
self.client.force_login(self.admin_user)
def test_the_preview_frame_and_colour_swatches_render(self):
def test_the_preview_tabs_and_colour_swatches_render(self):
response = self.club_get("club_settings")
self.assertContains(response, "preview-sidebar")
self.assertContains(response, "preview-tab-active")
self.assertContains(response, 'id="primary_color_swatch"')
self.assertContains(response, 'id="secondary_color_swatch"')
def test_the_mobile_app_preview_renders(self):
def test_the_mobile_app_and_website_previews_render(self):
response = self.club_get("club_settings")
self.assertContains(response, "preview-phone")
self.assertContains(response, "Coming soon")
self.assertContains(response, "preview-phone-lg")
self.assertContains(response, "preview-website")
self.assertContains(response, "Where the brand shows up")
def test_the_website_field_is_editable(self):
response = self.club_get("club_settings")