Merge version_1 into main #2

Merged
bender merged 2 commits from version_1 into main 2026-03-12 12:00:56 +00:00
2 changed files with 38 additions and 54 deletions

View File

@@ -51,22 +51,23 @@ export default function LandingPage() {
imageAlt="Moderne Zahnarztpraxis Frankfurt Westend"
imagePosition="right"
mediaAnimation="blur-reveal"
background={{ variant: "plain" }}
testimonials={[
{
name: "Sarah M.", handle: "Patientin", testimonial: "Bester Zahnarzt Frankfurts! Hervorragendes handwerkliches Können und sehr kompetente medizinische Lösungen.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/front-view-female-doctor-with-excited-expression-yellow-space_179666-13788.jpg?_wi=1"
imageSrc: "http://img.b2bpic.net/free-photo/front-view-female-doctor-with-excited-expression-yellow-space_179666-13788.jpg"
},
{
name: "Marco K.", handle: "Angstpatient", testimonial: "Als Angstpatient fühle ich mich hier wirklich angenommen. Die Beratung ist intensiv und man bekommt ein sehr gutes Gefühl.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/successful-senior-businessman-standing-window_1262-3120.jpg?_wi=1"
imageSrc: "http://img.b2bpic.net/free-photo/successful-senior-businessman-standing-window_1262-3120.jpg"
},
{
name: "Anna L.", handle: "Stammpatientín", testimonial: "Ich gehe wirklich gerne in diese Praxis. Man fühlt sich von Anfang an wohl und gut betreut.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/positive-entrepreneur-sitting_1098-3668.jpg?_wi=1"
imageSrc: "http://img.b2bpic.net/free-photo/positive-entrepreneur-sitting_1098-3668.jpg"
},
{
name: "Thomas B.", handle: "Sanierungspatient", testimonial: "Ich habe eine Komplettsanierung unter Vollnarkose durchführen lassen und bin mit dem Ergebnis sehr zufrieden.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/aged-middle-expression-calling-business_1262-2838.jpg?_wi=1"
imageSrc: "http://img.b2bpic.net/free-photo/aged-middle-expression-calling-business_1262-2838.jpg"
}
]}
buttons={[
@@ -110,16 +111,16 @@ export default function LandingPage() {
tag="Leistungen"
products={[
{
id: "aesthetic", name: "Ästhetische Zahnmedizin", price: "Perfekte Zähne", imageSrc: "http://img.b2bpic.net/free-photo/smiling-brunette-girl-posing-with-coat_23-2148136021.jpg?_wi=1", imageAlt: "Ästhetische Zahnmedizin - Veneers und Bleaching"
id: "aesthetic", name: "Ästhetische Zahnmedizin", price: "Perfekte Zähne", imageSrc: "http://img.b2bpic.net/free-photo/smiling-brunette-girl-posing-with-coat_23-2148136021.jpg", imageAlt: "Ästhetische Zahnmedizin - Veneers und Bleaching"
},
{
id: "complete", name: "Komplettsanierungen", price: "Ganzheitliche Lösungen", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-girl-dentist_1157-18577.jpg", imageAlt: "Komplette Sanierung - Umfangreiche Zahnbehandlung"
},
{
id: "anxiety", name: "Behandlung von Angstpatienten", price: "Einfühlsame Betreuung", imageSrc: "http://img.b2bpic.net/free-photo/close-up-smiley-woman-chair_23-2149093346.jpg?_wi=1", imageAlt: "Angstpatienten - Sanfte und beruhigende Behandlung"
id: "anxiety", name: "Behandlung von Angstpatienten", price: "Einfühlsame Betreuung", imageSrc: "http://img.b2bpic.net/free-photo/close-up-smiley-woman-chair_23-2149093346.jpg", imageAlt: "Angstpatienten - Sanfte und beruhigende Behandlung"
},
{
id: "sedation", name: "Vollnarkose-Behandlungen", price: "Angstfrei", imageSrc: "http://img.b2bpic.net/free-photo/dentist-examining-woman-teeth-with-diagnostic-microscope_651396-2532.jpg?_wi=1", imageAlt: "Vollnarkose Behandlung - Entspannte Atmosphäre"
id: "sedation", name: "Vollnarkose-Behandlungen", price: "Angstfrei", imageSrc: "http://img.b2bpic.net/free-photo/dentist-examining-woman-teeth-with-diagnostic-microscope_651396-2532.jpg", imageAlt: "Vollnarkose Behandlung - Entspannte Atmosphäre"
}
]}
gridVariant="four-items-2x2-equal-grid"
@@ -135,22 +136,22 @@ export default function LandingPage() {
description="Authentische Bewertungen von Patienten, die ihre Zahnarztangst überwunden haben und neu gewonnenes Vertrauen erfahren."
testimonials={[
{
id: "1", name: "Sarah M.", handle: "@sarahdentalstory", testimonial: "Bester Zahnarzt Frankfurts! Hervorragendes handwerkliches Können und sehr kompetente medizinische Lösungen. Ich fühle mich hier verstanden.", imageSrc: "http://img.b2bpic.net/free-photo/front-view-female-doctor-with-excited-expression-yellow-space_179666-13788.jpg?_wi=2", imageAlt: "Sarah M."
id: "1", name: "Sarah M.", handle: "@sarahdentalstory", testimonial: "Bester Zahnarzt Frankfurts! Hervorragendes handwerkliches Können und sehr kompetente medizinische Lösungen. Ich fühle mich hier verstanden.", imageSrc: "http://img.b2bpic.net/free-photo/front-view-female-doctor-with-excited-expression-yellow-space_179666-13788.jpg", imageAlt: "Sarah M."
},
{
id: "2", name: "Marco K.", handle: "@marco_angstfrei", testimonial: "Als Angstpatient fühle ich mich hier wirklich angenommen. Die Beratung ist intensiv und man bekommt ein sehr gutes Gefühl für die Behandlung.", imageSrc: "http://img.b2bpic.net/free-photo/successful-senior-businessman-standing-window_1262-3120.jpg?_wi=2", imageAlt: "Marco K."
id: "2", name: "Marco K.", handle: "@marco_angstfrei", testimonial: "Als Angstpatient fühle ich mich hier wirklich angenommen. Die Beratung ist intensiv und man bekommt ein sehr gutes Gefühl für die Behandlung.", imageSrc: "http://img.b2bpic.net/free-photo/successful-senior-businessman-standing-window_1262-3120.jpg", imageAlt: "Marco K."
},
{
id: "3", name: "Anna L.", handle: "@anna_zahnarzt", testimonial: "Ich gehe wirklich gerne in diese Praxis. Man fühlt sich von Anfang an wohl und gut betreut. Das ist die beste Erfahrung gewesen!", imageSrc: "http://img.b2bpic.net/free-photo/positive-entrepreneur-sitting_1098-3668.jpg?_wi=2", imageAlt: "Anna L."
id: "3", name: "Anna L.", handle: "@anna_zahnarzt", testimonial: "Ich gehe wirklich gerne in diese Praxis. Man fühlt sich von Anfang an wohl und gut betreut. Das ist die beste Erfahrung gewesen!", imageSrc: "http://img.b2bpic.net/free-photo/positive-entrepreneur-sitting_1098-3668.jpg", imageAlt: "Anna L."
},
{
id: "4", name: "Thomas B.", handle: "@thomas_sanierung", testimonial: "Ich habe eine Komplettsanierung unter Vollnarkose durchführen lassen und bin mit dem Ergebnis sehr zufrieden. Absolute Empfehlung!", imageSrc: "http://img.b2bpic.net/free-photo/aged-middle-expression-calling-business_1262-2838.jpg?_wi=2", imageAlt: "Thomas B."
id: "4", name: "Thomas B.", handle: "@thomas_sanierung", testimonial: "Ich habe eine Komplettsanierung unter Vollnarkose durchführen lassen und bin mit dem Ergebnis sehr zufrieden. Absolute Empfehlung!", imageSrc: "http://img.b2bpic.net/free-photo/aged-middle-expression-calling-business_1262-2838.jpg", imageAlt: "Thomas B."
},
{
id: "5", name: "Julia H.", handle: "@julia_vertraut", testimonial: "Nach Jahren ohne Zahnarztbesuch wegen meiner Angst: Hier fühle ich mich endlich sicher. Danke für so viel Geduld und Einfühlungsvermögen!", imageSrc: "http://img.b2bpic.net/free-photo/front-view-female-doctor-with-excited-expression-yellow-space_179666-13788.jpg?_wi=3", imageAlt: "Julia H."
id: "5", name: "Julia H.", handle: "@julia_vertraut", testimonial: "Nach Jahren ohne Zahnarztbesuch wegen meiner Angst: Hier fühle ich mich endlich sicher. Danke für so viel Geduld und Einfühlungsvermögen!", imageSrc: "http://img.b2bpic.net/free-photo/front-view-female-doctor-with-excited-expression-yellow-space_179666-13788.jpg", imageAlt: "Julia H."
},
{
id: "6", name: "Klaus M.", handle: "@klaus_lächelt", testimonial: "Die ästhetischen Ergebnisse sind beeindruckend. Moderne Technik, persönliche Beratung und ein Zahnarzt, der seine Arbeit liebt. Kann ich nur empfehlen!", imageSrc: "http://img.b2bpic.net/free-photo/successful-senior-businessman-standing-window_1262-3120.jpg?_wi=3", imageAlt: "Klaus M."
id: "6", name: "Klaus M.", handle: "@klaus_lächelt", testimonial: "Die ästhetischen Ergebnisse sind beeindruckend. Moderne Technik, persönliche Beratung und ein Zahnarzt, der seine Arbeit liebt. Kann ich nur empfehlen!", imageSrc: "http://img.b2bpic.net/free-photo/successful-senior-businessman-standing-window_1262-3120.jpg", imageAlt: "Klaus M."
}
]}
animationType="slide-up"
@@ -171,16 +172,16 @@ export default function LandingPage() {
imageSrc: "http://img.b2bpic.net/free-photo/room-with-blue-couchs-with-white-cushions_1203-374.jpg", imageAlt: "Einfühlsame Betreuung - Phone 1"
},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/close-up-smiley-woman-chair_23-2149093346.jpg?_wi=2", imageAlt: "Einfühlsame Betreuung - Phone 2"
imageSrc: "http://img.b2bpic.net/free-photo/close-up-smiley-woman-chair_23-2149093346.jpg", imageAlt: "Einfühlsame Betreuung - Phone 2"
}
},
{
id: 2,
title: "Moderne schmerzarme Methoden", description: "Wir nutzen die neuesten Technologien für sanfte, schmerzfreie Behandlungen. Ihre Sicherheit und Entspannung sind unser Ziel.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/dentist-examining-woman-teeth-with-diagnostic-microscope_651396-2532.jpg?_wi=2", imageAlt: "Moderne schmerzarme Methoden - Phone 1"
imageSrc: "http://img.b2bpic.net/free-photo/dentist-examining-woman-teeth-with-diagnostic-microscope_651396-2532.jpg", imageAlt: "Moderne schmerzarme Methoden - Phone 1"
},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/smiling-brunette-girl-posing-with-coat_23-2148136021.jpg?_wi=2", imageAlt: "Moderne schmerzarme Methoden - Phone 2"
imageSrc: "http://img.b2bpic.net/free-photo/smiling-brunette-girl-posing-with-coat_23-2148136021.jpg", imageAlt: "Moderne schmerzarme Methoden - Phone 2"
}
}
]}

View File

@@ -1,51 +1,34 @@
"use client";
import { memo } from "react";
import useSvgTextLogo from "./useSvgTextLogo";
import { cls } from "@/lib/utils";
import React from 'react';
interface SvgTextLogoProps {
logoText: string;
adjustHeightFactor?: number;
verticalAlign?: "top" | "center";
text: string;
className?: string;
fontSize?: number;
fill?: string;
}
const SvgTextLogo = memo<SvgTextLogoProps>(function SvgTextLogo({
logoText,
adjustHeightFactor,
verticalAlign = "top",
className = "",
}) {
const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor);
export default function SvgTextLogo({
text,
className = '',
fontSize = 24,
fill = 'currentColor',
}: SvgTextLogoProps) {
return (
<svg
ref={svgRef}
viewBox={viewBox}
className={cls("w-full", className)}
style={{ aspectRatio: aspectRatio }}
preserveAspectRatio="none"
role="img"
aria-label={`${logoText} logo`}
viewBox={`0 0 ${text.length * fontSize * 0.6} ${fontSize * 1.5}`}
className={className}
xmlns="http://www.w3.org/2000/svg"
>
<text
ref={textRef}
x="0"
y={verticalAlign === "center" ? "50%" : "0"}
className="font-bold fill-current"
style={{
fontSize: "20px",
letterSpacing: "-0.02em",
dominantBaseline: verticalAlign === "center" ? "middle" : "text-before-edge"
}}
x="50%"
y="50%"
fontSize={fontSize}
fill={fill}
textAnchor="middle"
dominantBaseline="middle"
>
{logoText}
{text}
</text>
</svg>
);
});
SvgTextLogo.displayName = "SvgTextLogo";
export default SvgTextLogo;
}