From d182ceeb754b59647c048859d2c7ce4edd9169a8 Mon Sep 17 00:00:00 2001 From: 1elle1 Date: Tue, 3 Feb 2026 19:35:44 +0100 Subject: [PATCH] feat: Introduce new service pages for 'Leistungen', 'Telefonie', 'Fernsehen', and 'Internet', accompanied by new layout components and image assets. --- app/fernsehen/page.tsx | 285 +++++++++++++ app/internet/page.tsx | 402 ++++++++++++++++++ app/layout.tsx | 111 ++--- app/leistungen/page.tsx | 304 +++++++++++++ app/page.tsx | 295 ++++++++++++- app/telefonie/page.tsx | 302 +++++++++++++ components/layout/Container.tsx | 14 +- components/layout/Footer.tsx | 139 ++++++ components/layout/Header.tsx | 116 +++++ components/layout/Section.tsx | 18 +- public/images/brand/logo-systems-9fd0db14.png | Bin 0 -> 143798 bytes public/images/brand/logo-weiss-ffa4cbf6.png | Bin 0 -> 94380 bytes .../images/hero/internet-header-431619ac.jpg | Bin 0 -> 258840 bytes public/images/hero/tv-header-44c1e07b.jpg | Bin 0 -> 232031 bytes ...david-20mu-cc-88ller-da85dab8-046e19ba.jpg | Bin 0 -> 106693 bytes public/images/misc/firma1-8a863d8b.jpg | Bin 0 -> 1298065 bytes .../misc/firmenkunden-96736712-5fa99704.jpg | Bin 0 -> 136399 bytes .../images/misc/franz-8b76ccff-320f42cb.jpg | Bin 0 -> 92775 bytes .../misc/furkan-demirel-4112a488-f6dfc223.jpg | Bin 0 -> 115769 bytes .../misc/internet-7b594a2d-793cefee.jpg | Bin 0 -> 160649 bytes ...rgen-20gra-cc-88ssle-8e0dfbb3-db96fd12.jpg | Bin 0 -> 88653 bytes .../misc/julia-20besler-f4fe1bff-fb0f3af2.jpg | Bin 0 -> 126290 bytes .../images/misc/lorena-c31636eb-2f817bb4.jpg | Bin 0 -> 126849 bytes .../lukas-20schennach-0f7160e5-e8152f4f.jpg | Bin 0 -> 82845 bytes public/images/misc/lwl1-c8928579-d408002b.jpg | Bin 0 -> 126513 bytes .../misc/mario-20kien-f5e3602f-ddda3b58.jpg | Bin 0 -> 99889 bytes ...martin-20m-c3-bcller-4422f545-ddb853b7.jpg | Bin 0 -> 72232 bytes .../misc/privatkunden-a54cf4d8-0018c3fa.jpg | Bin 0 -> 147386 bytes public/images/misc/serverraum-7225cb6a.jpg | Bin 0 -> 1144884 bytes .../images/misc/telefon-fa5e8c21-271d2135.jpg | Bin 0 -> 127940 bytes public/images/misc/telefonie1-ad7595f9.jpg | Bin 0 -> 244570 bytes public/images/misc/timo-224648e7-f0782cdb.jpg | Bin 0 -> 95160 bytes .../misc/tv-business-c3bdfb94-23310090.jpg | Bin 0 -> 100776 bytes .../misc/tv-paytv-6cbac6e4-d140e2e4.jpg | Bin 0 -> 67541 bytes .../misc/tv-privat-76f60c7a-88eafcfb.jpg | Bin 0 -> 56824 bytes ...wolfgang-20schwaiger-3fd3136b-19e15245.jpg | Bin 0 -> 130229 bytes public/images/services/lwl1-40360e27.jpg | Bin 0 -> 327162 bytes .../services/tnr-leistungen-055053d5.jpg | Bin 0 -> 699082 bytes public/images/team/team-telenet-f9218567.jpg | Bin 0 -> 281135 bytes 39 files changed, 1904 insertions(+), 82 deletions(-) create mode 100644 app/fernsehen/page.tsx create mode 100644 app/internet/page.tsx create mode 100644 app/leistungen/page.tsx create mode 100644 app/telefonie/page.tsx create mode 100644 components/layout/Footer.tsx create mode 100644 components/layout/Header.tsx create mode 100644 public/images/brand/logo-systems-9fd0db14.png create mode 100644 public/images/brand/logo-weiss-ffa4cbf6.png create mode 100644 public/images/hero/internet-header-431619ac.jpg create mode 100644 public/images/hero/tv-header-44c1e07b.jpg create mode 100644 public/images/misc/david-20mu-cc-88ller-da85dab8-046e19ba.jpg create mode 100644 public/images/misc/firma1-8a863d8b.jpg create mode 100644 public/images/misc/firmenkunden-96736712-5fa99704.jpg create mode 100644 public/images/misc/franz-8b76ccff-320f42cb.jpg create mode 100644 public/images/misc/furkan-demirel-4112a488-f6dfc223.jpg create mode 100644 public/images/misc/internet-7b594a2d-793cefee.jpg create mode 100644 public/images/misc/ju-cc-88rgen-20gra-cc-88ssle-8e0dfbb3-db96fd12.jpg create mode 100644 public/images/misc/julia-20besler-f4fe1bff-fb0f3af2.jpg create mode 100644 public/images/misc/lorena-c31636eb-2f817bb4.jpg create mode 100644 public/images/misc/lukas-20schennach-0f7160e5-e8152f4f.jpg create mode 100644 public/images/misc/lwl1-c8928579-d408002b.jpg create mode 100644 public/images/misc/mario-20kien-f5e3602f-ddda3b58.jpg create mode 100644 public/images/misc/martin-20m-c3-bcller-4422f545-ddb853b7.jpg create mode 100644 public/images/misc/privatkunden-a54cf4d8-0018c3fa.jpg create mode 100644 public/images/misc/serverraum-7225cb6a.jpg create mode 100644 public/images/misc/telefon-fa5e8c21-271d2135.jpg create mode 100644 public/images/misc/telefonie1-ad7595f9.jpg create mode 100644 public/images/misc/timo-224648e7-f0782cdb.jpg create mode 100644 public/images/misc/tv-business-c3bdfb94-23310090.jpg create mode 100644 public/images/misc/tv-paytv-6cbac6e4-d140e2e4.jpg create mode 100644 public/images/misc/tv-privat-76f60c7a-88eafcfb.jpg create mode 100644 public/images/misc/wolfgang-20schwaiger-3fd3136b-19e15245.jpg create mode 100644 public/images/services/lwl1-40360e27.jpg create mode 100644 public/images/services/tnr-leistungen-055053d5.jpg create mode 100644 public/images/team/team-telenet-f9218567.jpg diff --git a/app/fernsehen/page.tsx b/app/fernsehen/page.tsx new file mode 100644 index 0000000..5532cee --- /dev/null +++ b/app/fernsehen/page.tsx @@ -0,0 +1,285 @@ +import type { Metadata } from "next"; +import Image from "next/image"; +import Link from "next/link"; +import { Container } from "@/components/layout/Container"; +import { Section } from "@/components/layout/Section"; +import { Tv, Users, Building2, Play, CheckCircle, ArrowRight } from "lucide-react"; + +export const metadata: Metadata = { + title: "Fernsehen", + description: + "Über 200 TV-Programme inkl. 40 HDTV-Sendern. Kabel-TV für Privat- und Geschäftskunden im Bezirk Reutte. Ab 16,47 € im Monat.", + openGraph: { + title: "Fernsehen | Telenet Systems GmbH", + description: + "Über 200 TV-Programme inkl. 40 HDTV-Sendern. Kabel-TV für Privat- und Geschäftskunden im Bezirk Reutte.", + }, +}; + +const tvOptions = [ + { + icon: Users, + title: "TV Privat", + price: "16,47", + period: "Monat", + description: + "Über 200 Programme inkl. 40 HDTV-Sendern und rund 40 Radiosendern direkt in Ihr Wohnzimmer.", + features: [ + "Über 200 TV-Programme", + "40 HDTV-Sender inklusive", + "Rund 40 Radiosender", + "Erstklassige Bildqualität", + ], + cta: "Jetzt bestellen", + image: "/images/misc/tv-privat-76f60c7a-88eafcfb.jpg", + popular: true, + }, + { + icon: Building2, + title: "TV Business", + price: "Auf Anfrage", + period: "", + description: + "Individuelle TV-Lösungen für Ihr Unternehmen. Hotels, Gaststätten, Wartezimmer – wir finden die passende Lösung.", + features: [ + "Maßgeschneidertes Angebot", + "Persönliche Beratung", + "Individuelle Kanalauswahl", + "Professionelle Installation", + ], + cta: "Angebot anfragen", + image: "/images/misc/tv-business-c3bdfb94-23310090.jpg", + popular: false, + }, + { + icon: Play, + title: "Pay TV", + price: "Auf Anfrage", + period: "", + description: + "Exklusive Filme, Serien und Sport in HD/UHD. Ergänzen Sie Ihr TV-Erlebnis mit Premium-Inhalten.", + features: [ + "Premium-Sender verfügbar", + "HD/UHD Qualität", + "Sport & Filme", + "Flexible Pakete", + ], + cta: "Mehr erfahren", + image: "/images/misc/tv-paytv-6cbac6e4-d140e2e4.jpg", + popular: false, + }, +]; + +const benefits = [ + "Keine Servicepauschale", + "Persönlicher Support vor Ort", + "Schnelle Installation", + "Faire und transparente Preise", +]; + +export default function FernsehenPage() { + return ( + <> + {/* Hero Section */} +
+
+ Familie genießt Fernsehen +
+ +
+
+
+

+ Über 200 TV-Programme in bester Qualität +

+

+ Erstklassige Unterhaltung für Ihr Zuhause oder Unternehmen. + Mit 40 HDTV-Sendern und rund 40 Radiosendern – ab nur 16,47 € im Monat. +

+
+ + Jetzt bestellen + + + Angebote ansehen + +
+
+
+
+ + {/* Trust Bar */} +
+ +
+ {benefits.map((benefit) => ( +
+
+ ))} +
+
+
+ + {/* TV Options */} +
+ +
+

Unsere TV-Angebote

+

+ Ob für Ihr Zuhause oder Ihr Unternehmen – wir haben das passende Angebot. +

+
+
+ {tvOptions.map((option) => ( +
+ {option.popular && ( +
+ Beliebt +
+ )} +
+ {option.title} +
+
+
+
+ + {option.price.includes("Anfrage") ? "" : "€ "} + {option.price} + + {option.period && ( + / {option.period} + )} +
+

+ {option.description} +

+
    + {option.features.map((feature) => ( +
  • +
  • + ))} +
+ + {option.cta} + +
+ ))} +
+
+
+ + {/* FAQ Section */} +
+ +
+

Häufige Fragen

+
+
+
+

+ Wie schnell ist die Installation? +

+

+ In der Regel können wir innerhalb weniger Werktage einen Installationstermin + vereinbaren. Unser Techniker kommt zu Ihnen und richtet alles ein. +

+
+
+

+ Gibt es versteckte Kosten? +

+

+ Nein. Der angezeigte Preis ist der Endpreis inklusive Mehrwertsteuer. + Es gibt keine Servicepauschale und keine versteckten Gebühren. +

+
+
+

+ Kann ich Pay-TV dazubuchen? +

+

+ Ja, wir bieten verschiedene Pay-TV-Optionen an. Kontaktieren Sie uns + und wir finden das passende Paket für Sie. +

+
+
+
+
+ + {/* CTA Section */} +
+ +
+

+ Bereit für bestes Fernsehen? +

+

+ Kontaktieren Sie uns für eine persönliche Beratung oder bestellen Sie + direkt Ihren TV-Anschluss. +

+
+ + Jetzt bestellen + + + +43 5672 5000 + +
+
+
+
+ + ); +} diff --git a/app/internet/page.tsx b/app/internet/page.tsx new file mode 100644 index 0000000..8e16dd6 --- /dev/null +++ b/app/internet/page.tsx @@ -0,0 +1,402 @@ +import type { Metadata } from "next"; +import Image from "next/image"; +import Link from "next/link"; +import { Container } from "@/components/layout/Container"; +import { Section } from "@/components/layout/Section"; +import { Wifi, Zap, Building2, CheckCircle, ArrowDown, ArrowUp } from "lucide-react"; + +export const metadata: Metadata = { + title: "Internet", + description: + "Highspeed-Internet über Kabel und Glasfaser im Bezirk Reutte. Flexible Tarife für Privat- und Geschäftskunden ab 14,50 € im Monat. Ohne Servicepauschale.", + openGraph: { + title: "Internet | Telenet Systems GmbH", + description: + "Highspeed-Internet über Kabel und Glasfaser im Bezirk Reutte. Ab 14,50 € im Monat.", + }, +}; + +const kabelTarife = [ + { + name: "telenet.hit", + price: "14,50", + download: "40", + upload: "6", + popular: false, + }, + { + name: "telenet.eco", + price: "19,00", + download: "60", + upload: "8", + popular: false, + }, + { + name: "telenet.fun", + price: "29,00", + download: "80", + upload: "12", + popular: true, + }, + { + name: "telenet.pro", + price: "39,00", + download: "100", + upload: "14", + popular: false, + }, + { + name: "telenet.mega", + price: "49,00", + download: "180", + upload: "22", + popular: false, + }, +]; + +const glasfaserTarife = [ + { + name: "telenet.eco", + price: "23,00", + download: "100", + upload: "100", + popular: false, + }, + { + name: "telenet.fun", + price: "29,00", + download: "200", + upload: "200", + popular: true, + }, + { + name: "telenet.pro", + price: "39,00", + download: "300", + upload: "300", + popular: false, + }, + { + name: "telenet.mega", + price: "49,00", + download: "500", + upload: "500", + popular: false, + }, +]; + +const benefits = [ + "Keine Servicepauschale", + "Unlimitiertes Datenvolumen", + "IPv6 inklusive", + "Persönlicher Support", +]; + +export default function InternetPage() { + return ( + <> + {/* Hero Section */} +
+
+ Highspeed Internet +
+ +
+
+
+

+ Highspeed-Internet für Ihr Zuhause +

+

+ Schnelles und zuverlässiges Internet über Kabel oder Glasfaser. + Flexible Tarife ohne Servicepauschale – ab 14,50 € im Monat. +

+
+ + Jetzt bestellen + + + Tarife vergleichen + +
+
+
+
+ + {/* Trust Bar */} +
+ +
+ {benefits.map((benefit) => ( +
+
+ ))} +
+
+
+ + {/* Kabel-Tarife */} +
+ +
+
+
+

Tarife für Kabel-Kunden

+

+ Tarife gültig ab 01.05.2024. Alle Preise inkl. MwSt. +

+
+ +
+ + + + + + + + + + + + {kabelTarife.map((tarif) => ( + + + + + + + + ))} + +
+ Tarif + + + + + + + + Preis / Monat +
+ {tarif.name} + {tarif.popular && ( + + Beliebt + + )} + + {tarif.download} Mbit/s + + {tarif.upload} Mbit/s + + € {tarif.price} + + + Bestellen + +
+
+ +

+ Alle Tarife enthalten unlimitiertes Datenvolumen und IPv6-Adressen. + Für die Tarife ab telenet.pro ist eine öffentliche IPv4-Adresse enthalten. + Einmalige Installationskosten je nach Aufwand. +

+
+
+ + {/* Glasfaser-Tarife */} +
+ +
+
+
+

Tarife für Glasfaser-Kunden

+

+ Symmetrische Bandbreite – gleich schnell hoch- wie runterladen. Tarife gültig ab 01.04.2025. +

+
+ +
+ + + + + + + + + + + + {glasfaserTarife.map((tarif) => ( + + + + + + + + ))} + +
+ Tarif + + + + + + + + Preis / Monat +
+ {tarif.name} + {tarif.popular && ( + + Empfohlen + + )} + + {tarif.download} Mbit/s + + {tarif.upload} Mbit/s + + € {tarif.price} + + + Bestellen + +
+
+ +

+ Glasfaser bietet symmetrische Geschwindigkeiten – ideal für Homeoffice und Videokonferenzen. + Alle Tarife ohne Servicepauschale mit unlimitiertem Datenvolumen. +

+
+
+ + {/* Business Section */} +
+ +
+
+ Geschäftskunde im Büro +
+
+
+
+

Maßgeschneiderte Lösungen für Ihr Unternehmen

+

+ Für Unternehmen erstellen wir individuelle Internet-Angebote + inklusive passendem Service-Paket. +

+
    +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
+ + Angebot anfragen + +
+
+
+
+ + {/* CTA Section */} +
+ +
+

+ Welcher Tarif passt zu Ihnen? +

+

+ Wir beraten Sie gerne persönlich und finden gemeinsam den idealen + Internet-Tarif für Ihre Bedürfnisse. +

+
+ + Beratung anfragen + + + +43 5672 5000 + +
+
+
+
+ + ); +} diff --git a/app/layout.tsx b/app/layout.tsx index 9dc8b4e..75922d6 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -1,98 +1,69 @@ import type { Metadata, Viewport } from "next"; +import { Inter } from "next/font/google"; +import { Header } from "@/components/layout/Header"; +import { Footer } from "@/components/layout/Footer"; import "@/theme/globals.css"; +import "@/theme/stylesheet.css"; -/** - * Root Layout - * - * This layout is designed to work with the 9-category parameter system. - * It supports: - * - Dynamic locale (from spec.client.locale or content.defaultLanguage) - * - Google Fonts loading (from spec.brand.fonts) - * - Scroll behavior (from spec.interaction.scrollBehavior) - * - Meta tags for SEO - * - * CUSTOMIZATION INSTRUCTIONS: - * 1. Update `lang` attribute based on spec.client.locale (e.g., "de", "de-AT", "en") - * 2. Add Google Fonts import based on spec.brand.fonts.heading.family and body.family - * 3. Set scroll-behavior in globals.css based on spec.interaction.scrollBehavior - * 4. Update metadata based on spec.brand and spec.seo - */ +const inter = Inter({ + subsets: ["latin"], + variable: "--font-inter", + display: "swap", +}); -// TODO: Update these values based on ProjectSpec.json -// - title: from spec.brand.name or spec.meta.projectName -// - description: from spec.brand.description -// - keywords: from spec.seo.primaryKeywords export const metadata: Metadata = { - title: "Website", - description: "Generated website", + title: { + default: "Telenet Systems GmbH | Telekommunikation & IT-Services in Tirol", + template: "%s | Telenet Systems GmbH", + }, + description: + "Ihr regionaler Partner für TV, Internet, Telefonie und IT-Services im Bezirk Reutte. Seit 1976 verbinden wir Menschen und Technik. Persönliche Beratung, schneller Support.", + keywords: [ + "Telekommunikation Tirol", + "IT-Dienstleister Reutte", + "Highspeed-Internet Österreich", + "Glasfaser Tirol", + "TeleNetSystems", + "regionaler IT-Service", + "Kabel-TV Anbieter", + "Telefonie Tarife Österreich", + ], + authors: [{ name: "Telenet Systems GmbH" }], + creator: "Telenet Systems GmbH", + publisher: "Telenet Systems GmbH", robots: { index: true, follow: true, }, - // Open Graph tags - update based on spec openGraph: { type: "website", - locale: "de_DE", - // title, description, images will be set per project + locale: "de_AT", + url: "https://www.tnr.at", + siteName: "Telenet Systems GmbH", + title: "Telenet Systems GmbH | Telekommunikation & IT-Services in Tirol", + description: + "Ihr regionaler Partner für TV, Internet, Telefonie und IT-Services im Bezirk Reutte. Persönliche Beratung, schneller Support.", }, }; export const viewport: Viewport = { width: "device-width", initialScale: 1, - // TODO: Update themeColor from spec.brand.colors.primary or design_tokens - themeColor: "#ffffff", + themeColor: "#f39210", }; -/** - * Font Loading - * - * To add Google Fonts based on spec.brand.fonts: - * - * 1. Import from next/font/google: - * import { Inter, Playfair_Display } from "next/font/google"; - * - * 2. Configure fonts: - * const headingFont = Playfair_Display({ - * subsets: ["latin"], - * variable: "--font-heading", - * display: "swap", - * }); - * - * const bodyFont = Inter({ - * subsets: ["latin"], - * variable: "--font-body", - * display: "swap", - * }); - * - * 3. Apply to html element: - * - * - * 4. Update globals.css to use the variables: - * --font-sans: var(--font-body), system-ui, sans-serif; - * --font-heading: var(--font-heading), Georgia, serif; - */ - export default function RootLayout({ children, }: Readonly<{ children: React.ReactNode; }>) { - // TODO: Update lang attribute based on spec.client.locale - // Examples: "de", "de-AT", "de-CH", "en", "en-US" - const locale = "de"; - return ( - - {/* - Scroll Behavior: - - If spec.interaction.scrollBehavior === "smooth", add className="scroll-smooth" - - Or set scroll-behavior: smooth in globals.css on html element - - Example with smooth scrolling: - - */} - {children} + + +
+
{children}
+