defmodule BerrypodWeb.Shop.Content do use BerrypodWeb, :live_view alias Berrypod.Theme.PreviewData @impl true def mount(_params, _session, socket) do {:ok, socket} end @impl true def handle_params(_params, _uri, socket) do config = page_config(socket.assigns.live_action) {:noreply, assign(socket, config)} end @impl true def render(assigns) do ~H""" """ end defp page_config(:about) do %{ page_title: "About", page_description: "Your story goes here – this is sample content for the demo shop", og_url: BerrypodWeb.Endpoint.url() <> "/about", active_page: "about", hero_title: "About the studio", hero_description: "Your story goes here – this is sample content for the demo shop", hero_background: :sunken, image_src: "/mockups/night-sky-blanket-3", image_alt: "Night sky blanket draped over a chair", content_blocks: PreviewData.about_content() } end defp page_config(:delivery) do %{ page_title: "Delivery & returns", page_description: "Everything you need to know about shipping and returns.", og_url: BerrypodWeb.Endpoint.url() <> "/delivery", active_page: "delivery", hero_title: "Delivery & returns", hero_description: "Everything you need to know about shipping and returns", content_blocks: PreviewData.delivery_content() } end defp page_config(:privacy) do %{ page_title: "Privacy policy", page_description: "How we handle your personal information.", og_url: BerrypodWeb.Endpoint.url() <> "/privacy", active_page: "privacy", hero_title: "Privacy policy", hero_description: "How we handle your personal information", content_blocks: PreviewData.privacy_content() } end defp page_config(:terms) do %{ page_title: "Terms of service", page_description: "The terms and conditions governing purchases from our shop.", og_url: BerrypodWeb.Endpoint.url() <> "/terms", active_page: "terms", hero_title: "Terms of service", hero_description: "The legal bits", content_blocks: PreviewData.terms_content() } end end