---
import i18next from "i18next";

import "#style/global.css";
import "../../svelte-dialogs.config"
import "svelte-ripple-action/ripple.css"
import DashboardSidebar from "../components/Dashboard/DashboardSidebar.svelte"
import { validateAccessTokenServer } from "#server/lib/validateAccessToken";
import { createCaller } from "#lib/caller";

const valid = validateAccessTokenServer(Astro)

if (!valid) {
	Astro.redirect("/auth/login", 302)
}


const caller = createCaller(Astro)

const benutzer = await caller.v1.benutzer.self()

export interface Props {
	title: string;
}

const { title } = Astro.props;

const schema = JSON.stringify({
	"@context": "http://schema.org",
	"@type": "Corporation",
	name: "IB Cornelsen",
	alternateName: "online-energieausweis.org",
	url: "https://online-energieausweis.org",
	logo: "https://online-energieausweis.org/ib-cornelsen.png",
	address: {
		"@type": "PostalAddress",
		streetAddress: "Katendeich 5A",
		addressLocality: "Hamburg",
		postalCode: "21035",
		addressCountry: "Deutschland",
		email: "info@online-energieausweis.org",
	},
	contactPoint: {
		"@type": "ContactPoint",
		telephone: "+49-040-209339850",
		faxNumber: "+49-040-209339859",
		contactType: "customer service",
		areaServed: "DE",
		availableLanguage: "German",
	},
});

let lightTheme = Astro.cookies.get("theme")?.value === "light";
---

<!DOCTYPE html>
<html lang={i18next.language}>
	<head>
		<meta charset="UTF-8" />
		<meta name="viewport" content="width=device-width" />
		<script type="application/ld+json" set:html={schema}></script>
		<link rel="icon" type="image/svg+xml" href="/favicon.jpg" />

		<meta
			name="description"
			content="✅ Jetzt Ihren Energieausweis online erstellen. Erhalten Sie Ihren online Energieausweis rechtssicher und nach aktueller GEG (vormals EnEV) vom Diplom Ingenieur geprüft."
		/>
		<link rel="canonical" href="https://online-energieausweis.org/" />

		<meta property="og:locale" content="de_DE" />
		<meta property="og:type" content="website" />
		<meta
			property="og:title"
			content="Energieausweis online erstellen - Online Energieausweis"
		/>
		<meta
			property="og:description"
			content="✅ Jetzt Ihren Energieausweis online erstellen. Erhalten Sie Ihren online Energieausweis rechtssicher und nach aktueller GEG (vormals EnEV) vom Diplom Ingenieur geprüft."
		/>
		<meta property="og:url" content="https://online-energieausweis.org/" />
		<meta
			property="og:site_name"
			content="Energieausweis online erstellen"
		/>

		<meta name="twitter:card" content="summary_large_image" />
		<meta
			name="twitter:description"
			content="✅ Jetzt Ihren Energieausweis online erstellen. Erhalten Sie Ihren online Energieausweis rechtssicher und nach aktueller GEG (vormals EnEV) vom Diplom Ingenieur geprüft."
		/>
		<meta
			name="twitter:title"
			content="Energieausweis online erstellen - Online Energieausweis"
		/>
		<meta
			name="twitter:image"
			content="https://online-energieausweis.org/images/energieausweis-online-erstellen.jpg"
		/>
		<title>
			{title || "Energieausweis online erstellen - Online Energieausweis"}
		</title>
	</head>

	<body class="min-h-screen grid md:grid-cols-[300px_1fr]">
		<DashboardSidebar lightTheme={lightTheme} benutzer={benutzer} client:load></DashboardSidebar>
		<main class="p-4 md:p-8 overflow-auto h-screen bg-base-100 pt-20 md:!pt-24">
			<slot />
		</main>
	</body>
</html>