From 18d1bd28bfa745e884d34530d4b72293004ff677 Mon Sep 17 00:00:00 2001 From: Nick Szaunig Date: Tue, 15 Sep 2026 10:01:18 +0200 Subject: [PATCH] fix: Produkt- und Shop-Links in E-Mails ueber dieselbe Domain-Quelle Nachzug zu d3020cd: email-templates.ts nutzte fuer den Bestaetigungs-Link bereits getBaseUrl(), fuer den Produkt- und den Shop-Link in derselben Datei aber weiterhin "https://" + siteConfig.domain. Eine Wiederverfuegbarkeits-Mail konnte dadurch einen Link auf eine andere Domain enthalten als die Bestellbestaetigung daneben. Co-Authored-By: Claude Opus 5 (1M context) --- src/lib/email-templates.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/email-templates.ts b/src/lib/email-templates.ts index 2309a47..d85df79 100644 --- a/src/lib/email-templates.ts +++ b/src/lib/email-templates.ts @@ -1,5 +1,5 @@ import { formatPrice } from "@/lib/format"; -import { siteConfig } from "@/lib/site-config"; +import { getSiteUrl } from "@/lib/url"; import { getCompanyInfo } from "@/lib/company-info"; import { getEmailStrings } from "@/lib/email-strings"; import type { Locale } from "@/i18n/config"; @@ -284,7 +284,7 @@ interface BackInStockInput { export async function backInStockEmail(product: BackInStockInput): Promise { const s = getEmailStrings(product.locale).backInStock; - const url = `https://${siteConfig.domain}/honig/${product.slug}`; + const url = `${getSiteUrl()}/honig/${product.slug}`; const html = await emailLayout( product.locale, s.preheader(product.name), @@ -357,7 +357,7 @@ export async function paymentFailedEmail(order: OrderStatusUpdateInput): Promise // Der Text (retryNote) fordert bereits zur erneuten Bestellung auf — ohne // einen tatsaechlich anklickbaren Button dazu bliebe das ein reiner // Lauftext-Hinweis ohne direkten Weg zurueck in den Shop. - const shopUrl = `https://${siteConfig.domain}/shop`; + const shopUrl = `${getSiteUrl()}/shop`; const html = await emailLayout( order.locale, s.preheader(order.orderNumber),