. #471

Merged
UMBENOMENA merged 3 commits from UMBE into main 2025-04-02 12:38:13 +00:00
7 changed files with 145 additions and 83 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 KiB

View File

@@ -10,10 +10,11 @@
</script>
<div id="fensterflaechen" class="bereich-box grid
<div id="Lüftung und Kühlung" class="bereich-box grid
grid-cols-1 gap-x-4 gap-y-8
sm:grid-cols-2 sm:gap-x-6 sm:gap-y-8
xl:grid-cols-4 xl:gap-x-8 xl:gap-y-8
xl:grid-cols-2 xl:gap-x-8 xl:gap-y-8
2xl:grid-cols-4 xl:gap-x-8 xl:gap-y-8
"
>
@@ -77,7 +78,7 @@ xl:grid-cols-4 xl:gap-x-8 xl:gap-y-8
<div class="input-standard order-4 md:order-4 xl:order-4 sm:col-span-2 items-center">
<Inputlabel title="Alternative Energieversorgungssyteme"></Inputlabel>
<div class="input-row items-center gap-2 lg:gap-20 xl:gap-24">
<div class="input-row items-center justify-between">
<div class="grid grid-cols-[max-content_40px] gap-2 items-center">
<input

View File

@@ -6,6 +6,7 @@ const { tabHover3 } = Astro.props;
const { tabHover4 } = Astro.props;
const { tabHover5 } = Astro.props;
const { tabHover6 } = Astro.props;
const { tabHover7 } = Astro.props;
---
<header id="header" class="w-full bg-white h-[81px] sm:pl-8">
@@ -28,6 +29,7 @@ const { tabHover6 } = Astro.props;
<li><a href="/immowelt/angebot-anfragen/bedarfsausweis-gewerbe-anfragen/"><button class={tabHover4}>Bedarfsausweis Gewerbe</button></a></li>
<li><a href="/immowelt/angebot-anfragen/geg-nachweis-wohnen-anfragen/"><button class={tabHover5}>GEG Nachweis Wohngebäude</button></a></li>
<li><a href="/immowelt/angebot-anfragen/geg-nachweis-gewerbe-anfragen/"><button class={tabHover6}>GEG Nachweis Gewerbe</button></a></li>
<li><a href="/immowelt/welcher-ausweis/"><button class={tabHover7}>Welcher Ausweis</button></a></li>
</ul>
</div>
@@ -38,7 +40,7 @@ const { tabHover6 } = Astro.props;
</header>
<div class="block w-full 2xl:h-[270px] lg:h-[148px] bg-cover" style="background-image: url('/images/immowelt/hero-desktop.webp');
<div class="block w-full 2xl:h-[270px] lg:h-[148px] bg-cover" style="background-image: url('/images/immowelt/hero-desktop.png');
background-repeat:no-repeat; background-position:right;">
</div>
@@ -59,8 +61,12 @@ background-repeat:no-repeat; background-position:right;">
@apply px-4 py-2 text-primary-content font-medium text-lg tracking-normal hover:bg-secondary h-full;
}
.navlist{@apply block sm:flex pl-[1.75rem];}
.navlist li{@apply flex md:pr-[6px]}
.navlist {
@apply flex flex-wrap flex-col sm:flex-row pl-[1.75rem] sm:pl-[1.75rem];
}
.navlist li {
@apply pr-0 sm:pr-[6px] pb-1 sm:pb-0;
}
.navlist li button{@apply text-[0.75rem] md:text-[1rem] text-[#646464] sm:p-2 text-left
hover:rounded-[1rem] hover:bg-[rgba(50,50,50,0.1)];
font-family: "immo Sans";

View File

@@ -17,7 +17,7 @@ export interface Props {
const { title } = Astro.props;
---
<script>
<script>
import { H } from "highlight.run";
if (import.meta.env.PROD) {
@@ -29,76 +29,77 @@ const { title } = Astro.props;
enabled: true,
recordHeadersAndBody: true
}
})
});
}
window.addEventListener("scroll", (event) => {
const skala = document.getElementById("skala");
window.addEventListener("scroll", () => {
const skala = document.getElementById("skala");
if (skala?.classList.contains("no-scroll")) {
if (skala) {
skala.classList.remove(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.add("w-full");
skala.style.borderBottom = "none";
}
if (!skala) return;
document
.getElementById("formInput-1")
?.classList.remove("2xl:mt-[370px]");
return;
}
// Wenn skala "no-scroll" hat, alles zurücksetzen
if (skala.classList.contains("no-scroll")) {
skala.classList.remove(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.add("w-full");
skala.style.borderBottom = "none";
skala.style.width = ""; // zurücksetzen
let scroll = window.scrollY;
if (scroll >= 400) {
if (skala) {
skala.classList.add(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.remove("w-full");
skala.style.borderBottom = "3px solid #e6e6e6";
}
document.getElementById("formInput-1")?.classList.remove("2xl:mt-[370px]");
return;
}
const performanceBox =
document.getElementById("performance-box");
if (performanceBox) {
performanceBox.style.maxWidth = "688.5px";
}
const progressBox = document.getElementById("progress-box");
let scroll = window.scrollY;
if (scroll >= 400) {
// Breite einmal auslesen und festsetzen
const skalaWidth = skala.offsetWidth + "px";
skala.style.width = skalaWidth;
if (progressBox) {
progressBox.style.maxWidth = "688.5px";
}
skala.classList.add(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.remove("w-full");
skala.style.borderBottom = "3px solid #e6e6e6";
document
.getElementById("formInput-1")
?.classList.add("2xl:mt-[370px]");
} else {
if (skala) {
skala.classList.remove(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.add("w-full");
skala.style.borderBottom = "none";
}
document.getElementById("formInput-1")?.classList.add("2xl:mt-[370px]");
} else {
skala.classList.remove(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.add("w-full");
skala.style.borderBottom = "none";
skala.style.width = ""; // zurücksetzen
document.getElementById("formInput-1")?.classList.remove("2xl:mt-[370px]");
}
});
window.addEventListener("resize", () => {
const skala = document.getElementById("skala");
if (!skala) return;
// Nur aktualisieren, wenn gerade "fixed" ist
if (skala.classList.contains("2xl:fixed")) {
// Temporär zurücksetzen, um echte Breite zu bekommen
skala.style.width = "";
const skalaWidth = skala.offsetWidth + "px";
skala.style.width = skalaWidth;
}
});
document
.getElementById("formInput-1")
?.classList.remove("2xl:mt-[370px]");
}
});
</script>
<html lang="de">
<head>
<meta charset="UTF-8" />

View File

@@ -26,23 +26,71 @@ const { tabHover5 } = Astro.props;
const { tabHover6 } = Astro.props;
---
<script>
window.addEventListener("scroll", (event) => {
let scroll = window.scrollY;
window.addEventListener("scroll", () => {
const skala = document.getElementById("skala");
// if(scroll>=400){
//
// document.getElementById('skala')?.classList.add('2xl:w-[calc(100%-6rem)]', '2xl:fixed','2xl:py-4','2xl:top-0','2xl:z-20' ,'2xl:[box-shadow:0_2px_12px_#ccc;]');
// document.getElementById('formInput-1')?.classList.add('2xl:mt-[270px]');
// }else{
//
// document.getElementById('skala')?.classList.remove('2xl:w-[calc(100%-6rem)]','2xl:fixed','2xl:py-4','2xl:top-0','2xl:z-20','2xl:[box-shadow:0_0_20px_#000;]');
// document.getElementById('formInput-1')?.classList.remove('2xl:mt-[270px]');
// }
if (!skala) return;
// Wenn skala "no-scroll" hat, alles zurücksetzen
if (skala.classList.contains("no-scroll")) {
skala.classList.remove(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.add("w-full");
skala.style.borderBottom = "none";
skala.style.width = ""; // zurücksetzen
document.getElementById("formInput-1")?.classList.remove("2xl:mt-[370px]");
return;
}
let scroll = window.scrollY;
if (scroll >= 400) {
// Breite einmal auslesen und festsetzen
const skalaWidth = skala.offsetWidth + "px";
skala.style.width = skalaWidth;
skala.classList.add(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.remove("w-full");
skala.style.borderBottom = "3px solid #e6e6e6";
document.getElementById("formInput-1")?.classList.add("2xl:mt-[370px]");
} else {
skala.classList.remove(
"2xl:fixed",
"2xl:py-4",
"2xl:top-0",
"2xl:z-20"
);
skala.classList.add("w-full");
skala.style.borderBottom = "none";
skala.style.width = ""; // zurücksetzen
document.getElementById("formInput-1")?.classList.remove("2xl:mt-[370px]");
}
});
window.addEventListener("resize", () => {
const skala = document.getElementById("skala");
if (!skala) return;
// Nur aktualisieren, wenn gerade "fixed" ist
if (skala.classList.contains("2xl:fixed")) {
// Temporär zurücksetzen, um echte Breite zu bekommen
skala.style.width = "";
const skalaWidth = skala.offsetWidth + "px";
skala.style.width = skalaWidth;
}
});
</script>
<!DOCTYPE html>
@@ -93,11 +141,11 @@ window.addEventListener("scroll", (event) => {
<Header {tabHover1} {tabHover2} {tabHover3} {tabHover4} {tabHover5} {tabHover6}/>
<main class="w-full p-0 grid grid-cols-1">
<main class="w-full p-0 grid grid-cols-1 rounded-none">
<!--<SidebarLeft />-->
<article class="p-0 lg:p-2">
<article class="p-0 lg:p-20">
<slot />
</article>

View File

@@ -5,8 +5,11 @@ import { createCaller } from "src/astro-typesafe-api-caller";
import { API_ACCESS_TOKEN_COOKIE_NAME } from "#lib/constants.js";
import { validateAccessTokenServer } from "#server/lib/validateAccessToken.js";
import GEGNachweisWohnenModule from "#modules/angebot-anfragen/GEGNachweisWohnenModule.svelte";
import { Enums } from "#lib/server/prisma";
const uid = Astro.url.searchParams.get("uid");
const ausweistyp = Astro.url.searchParams.get("ausweistyp") || Enums.AusweisTyp.Standard;
let nachweis: GEGNachweisWohnenClient = {} as GEGNachweisWohnenClient;
let aufnahme: AufnahmeClient = {} as AufnahmeClient;
let objekt: ObjektClient = {} as ObjektClient;
@@ -86,5 +89,5 @@ if (uid) {
---
<AusweisLayout title="GEG Nachweis Wohnen anfragen" tabHover5="glow">
<GEGNachweisWohnenModule client:only {nachweis} {objekt} {aufnahme} {bilder} {unterlagen} />
<GEGNachweisWohnenModule client:only {nachweis} {objekt} {aufnahme} {bilder} {ausweistyp} {unterlagen} />
</AusweisLayout>

View File

@@ -6,8 +6,11 @@ import { inferOutput } from "astro-typesafe-api/client";
import { API_ACCESS_TOKEN_COOKIE_NAME } from "#lib/constants";
import { validateAccessTokenServer } from "#server/lib/validateAccessToken";
import VerbrauchsausweisGewerbeModule from "#modules/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeModule.svelte";
import { Enums } from "#lib/server/prisma";
const uid = Astro.url.searchParams.get("uid");
const ausweistyp = Astro.url.searchParams.get("ausweistyp") || Enums.AusweisTyp.Standard;
let ausweis: VerbrauchsausweisGewerbeClient = {} as VerbrauchsausweisGewerbeClient;
let aufnahme: AufnahmeClient = {} as AufnahmeClient;
let objekt: ObjektClient = {} as ObjektClient;
@@ -79,5 +82,5 @@ if (uid) {
---
<AusweisLayout title="Verbrauchsausweis Gewerbe erstellen | IBCornelsen" tabHover2="glow">
<VerbrauchsausweisGewerbeModule client:only {ausweis} {objekt} {aufnahme} {bilder} />
<VerbrauchsausweisGewerbeModule client:only {ausweis} {objekt} {aufnahme} {bilder} {ausweistyp}/>
</AusweisLayout>