Compare commits

...

3 Commits

Author SHA1 Message Date
Ola Malmgren
287e9a2a0e fix my page header
All checks were successful
Build and deploy / build-deploy (push) Successful in 1m17s
2026-05-22 23:20:56 +02:00
Ola Malmgren
a03d1e8541 fix magic link 2026-05-22 23:20:45 +02:00
Ola Malmgren
23fd84d85c fiix: fullfillment 2026-05-22 23:20:34 +02:00
3 changed files with 18 additions and 8 deletions

View File

@@ -11,5 +11,9 @@ export async function GET(req: Request) {
const target = email const target = email
? `${prefix}/min-sida/oversikt` ? `${prefix}/min-sida/oversikt`
: `${prefix}/min-sida/verifiera`; : `${prefix}/min-sida/verifiera`;
return NextResponse.redirect(new URL(target, url.origin)); // Use the configured public origin — req.url.origin is the internal
// container host (e.g. http://<hash>:3000) when behind Traefik.
const base =
process.env.NEXT_PUBLIC_SITE_URL ?? process.env.AUTH_URL ?? url.origin;
return NextResponse.redirect(new URL(target, base));
} }

View File

@@ -1,10 +1,12 @@
import Image from 'next/image'; import Image from 'next/image';
import { useTranslations } from 'next-intl'; import { useTranslations } from 'next-intl';
import { Link } from '@/i18n/routing';
import { LanguageSwitcher } from './LanguageSwitcher'; import { LanguageSwitcher } from './LanguageSwitcher';
export function Header() { export function Header() {
const t = useTranslations('header'); const t = useTranslations('header');
const c = useTranslations('common'); const c = useTranslations('common');
const cu = useTranslations('customer');
return ( return (
<header className="border-b border-brand-700 bg-brand-600 text-white"> <header className="border-b border-brand-700 bg-brand-600 text-white">
<div className="mx-auto flex max-w-5xl items-center justify-between gap-3 px-4 py-3 sm:py-5"> <div className="mx-auto flex max-w-5xl items-center justify-between gap-3 px-4 py-3 sm:py-5">
@@ -28,7 +30,15 @@ export function Header() {
</div> </div>
</div> </div>
</div> </div>
<LanguageSwitcher /> <div className="flex items-center gap-2 sm:gap-3">
<Link
href="/min-sida"
className="rounded-md border border-white/20 bg-white/10 px-2.5 py-1 text-xs font-medium text-white backdrop-blur-sm transition-colors hover:bg-white/20 sm:px-3 sm:py-1.5"
>
{cu('navTitle')}
</Link>
<LanguageSwitcher />
</div>
</div> </div>
</header> </header>
); );

View File

@@ -36,9 +36,7 @@ export function FulfillmentTable({
{t('title')} {t('title')}
</h3> </h3>
<div className="flex gap-1"> <div className="flex gap-1">
<form <form action={markAllDelivered}>
action={(fd) => startTransition(() => markAllDelivered(fd))}
>
<input type="hidden" name="bookingId" value={bookingId} /> <input type="hidden" name="bookingId" value={bookingId} />
<button <button
type="submit" type="submit"
@@ -48,9 +46,7 @@ export function FulfillmentTable({
{t('deliverAll')} {t('deliverAll')}
</button> </button>
</form> </form>
<form <form action={markAllReturned}>
action={(fd) => startTransition(() => markAllReturned(fd))}
>
<input type="hidden" name="bookingId" value={bookingId} /> <input type="hidden" name="bookingId" value={bookingId} />
<button <button
type="submit" type="submit"