diff --git a/src/components/layout/Footer.astro b/src/components/layout/Footer.astro
index f75aae5..d0ff69a 100644
--- a/src/components/layout/Footer.astro
+++ b/src/components/layout/Footer.astro
@@ -49,7 +49,7 @@ const footer = yaml.load(
{
footer.services.map((item: any) => (
-
diff --git a/src/components/maps/MapGoogle.astro b/src/components/maps/MapGoogle.astro
index 8f7adb1..9cf5f89 100644
--- a/src/components/maps/MapGoogle.astro
+++ b/src/components/maps/MapGoogle.astro
@@ -1,5 +1,9 @@
---
import "../../styles/map-google.css";
+
+/**
+ * PARAMETRY MAPY
+ */
const {
apiKey,
lat,
@@ -8,106 +12,127 @@ const {
title = "",
description = "",
showMarker = false,
- mode = "full", // "full" – mapa na całą sekcję, wszystko inne => karta
+ mode = "full",
+ mapStyleId = "8e0a97af9476f2d3" // Google DEMO mapId (legalne, bez warningów)
} = Astro.props;
-const mapId = `fuz-map-${Math.random().toString(36).slice(2)}`;
+/** ID kontenera w DOM */
+const domId = `fuz-map-${Math.random().toString(36).slice(2)}`;
---
+
-
+/>
-
diff --git a/src/components/sections/SectionContact.astro b/src/components/sections/SectionContact.astro
index c85f025..f93f0bb 100644
--- a/src/components/sections/SectionContact.astro
+++ b/src/components/sections/SectionContact.astro
@@ -8,11 +8,11 @@ const data = yaml.load(
fs.readFileSync("./src/content/contact/contact.yaml", "utf8"),
);
const apiKey = import.meta.env.PUBLIC_GOOGLE_MAPS_KEY;
+const form = data.form;
---
diff --git a/src/content/contact/contact.yaml b/src/content/contact/contact.yaml
index d4ea442..6294246 100644
--- a/src/content/contact/contact.yaml
+++ b/src/content/contact/contact.yaml
@@ -17,3 +17,31 @@ lng: 21.456797
markerTitle: "FUZ Adam Rojek"
markerAddress: ul. Świętojańska 4607-200 Wyszków
contactFormTitle: Pisząc wiadomość ...
+
+maps:
+ mapId: "8e0a97af9476f2d3"
+
+form:
+ firstName:
+ placeholder: "Imię"
+ lastName:
+ placeholder: "Nazwisko"
+ email:
+ placeholder: "Email"
+ phone:
+ placeholder: "Telefon"
+ subject:
+ placeholder: "Temat wiadomości"
+ message:
+ placeholder: "Treść wiadomości"
+ rows: 5
+
+ rodo:
+ label: "Wyrażam zgodę na przetwarzanie moich danych osobowych zgodnie z"
+ policyLink: "/polityka-prywatnosci"
+ policyText: "polityką prywatności"
+ policyTitle: "Polityka prywatności FUZ Adam Rojek"
+
+ submit:
+ label: "Wyślij wiadomość →"
+ title: "Wyślij wiadomość pocztową"
\ No newline at end of file
diff --git a/src/content/internet-radiowy/offers.yaml b/src/content/internet-radiowy/offers.yaml
index 8e1aad0..4444e63 100644
--- a/src/content/internet-radiowy/offers.yaml
+++ b/src/content/internet-radiowy/offers.yaml
@@ -2,12 +2,13 @@ przelaczniki:
- id: "umowa"
etykieta: "Okres umowy"
domyslny: "24m"
+ title: Wybierz okres umowy by zobaczyć odpowiednie ceny
opcje:
- id: "24m"
nazwa: "24 miesiące"
- id: "12m"
nazwa: "12 miesięcy"
- - id: "bez"
+ - id: "bezterminowa"
nazwa: "Bezterminowa"
funkcje:
@@ -30,7 +31,7 @@ plany:
ceny:
24m: "38 zł/mc"
12m: "45 zł/mc"
- bez: "80 zł/mc"
+ bezterminowa: "80 zł/mc"
funkcje:
predkosc: "4 Mb/s"
wysylanie: "1 Mb/s"
@@ -45,7 +46,7 @@ plany:
ceny:
24m: "45 zł/mc"
12m: "60 zł/mc"
- bez: "110 zł/mc"
+ bezterminowa: "110 zł/mc"
funkcje:
predkosc: "6 Mb/s"
wysylanie: "1 Mb/s"
@@ -59,7 +60,7 @@ plany:
ceny:
24m: "55 zł/mc"
12m: "75 zł/mc"
- bez: "120 zł/mc"
+ bezterminowa: "120 zł/mc"
funkcje:
predkosc: "8 Mb/s"
wysylanie: "1.5 Mb/s"
@@ -73,7 +74,7 @@ plany:
ceny:
24m: "80 zł/mc"
12m: "110 zł/mc"
- bez: "160 zł/mc"
+ bezterminowa: "160 zł/mc"
funkcje:
predkosc: "10 Mb/s"
wysylanie: "2 Mb/s"
diff --git a/src/content/internet-swiatlowodowy/offers.yaml b/src/content/internet-swiatlowodowy/offers.yaml
index 9b4b549..33ab1a1 100644
--- a/src/content/internet-swiatlowodowy/offers.yaml
+++ b/src/content/internet-swiatlowodowy/offers.yaml
@@ -2,6 +2,7 @@ przelaczniki:
- id: "budynek"
etykieta: "Rodzaj budynku"
domyslny: "jednorodzinny"
+ title: Zmień rodzaj budynku by zobaczyć odpowiednie ceny
opcje:
- id: "jednorodzinny"
nazwa: "Jednorodzinny"
@@ -11,6 +12,7 @@ przelaczniki:
- id: "umowa"
etykieta: "Okres umowy"
domyslny: "24m"
+ title: Wybierz okres umowy by zobaczyć odpowiednie ceny
opcje:
- id: "24m"
nazwa: "24 miesiące"
@@ -121,4 +123,4 @@ uslugi_dodatkowe:
- Jeden numer dostępny na wielu urządzeniach jednocześnie
- Krystalicznie czysty dźwięk HD
- [Poznaj szczegóły oferty telefonii →](/telefon)
\ No newline at end of file
+ [Poznaj szczegóły oferty telefonii →](/telefon "Poznaj szczegóły oferty telefonii")
\ No newline at end of file
diff --git a/src/content/internet-swiatlowodowy/section.yaml b/src/content/internet-swiatlowodowy/section.yaml
index 25eaaf3..7f6605a 100644
--- a/src/content/internet-swiatlowodowy/section.yaml
+++ b/src/content/internet-swiatlowodowy/section.yaml
@@ -1,14 +1,18 @@
sections:
- title: Sprawdź dostępność usługi
image: "/assets/internet/internet.webp"
+ button:
+ text: "Sprawdź dostępność pod Twoim adresem →"
+ url: "/mapa-zasiegu"
+ title: "Sprawdź zasięg Internetu światłowodowego i radiowego FUZ"
content: |
Światłowody nie docierają jeszcze niestety do wszystkich domów.
- Sprawdź czy pod Twoim adresem dostępna jest nasza usługa internetu światłowodowego.
+ [Sprawdź](/mapa-zasięgu "Sprawdź zasięg Internetu światłowodowego i radiowego FUZ") czy pod Twoim adresem dostępna jest nasza usługa internetu światłowodowego.
Tam gdzie nie docierają światłowody stosuje się inne technologie.
- Jeśli pod Twoim adresem nie ma jeszcze usług światłowodowych, to sprawdź czy dociera tam nasz [internet radiowy →](/internet-radiowy)
+ Jeśli pod Twoim adresem nie ma jeszcze usług światłowodowych, to sprawdź czy dociera tam nasz [internet radiowy](/internet-radiowy "Przejdź do oferty Internetu radiowego").
- title: Router WiFi 5 AC1200
image: "/assets/internet/E5400.webp"
diff --git a/src/content/internet-telewizja/hero.yaml b/src/content/internet-telewizja/hero.yaml
index ee22389..e74c40d 100644
--- a/src/content/internet-telewizja/hero.yaml
+++ b/src/content/internet-telewizja/hero.yaml
@@ -11,14 +11,17 @@ description: |
Sprawdź zasięg usług i wybierz najlepsze łącze dla swojego domu.
imageUrl: "/images/section-tv.webp"
ctas:
- - label: "Zobacz ofertę Internetu"
- href: "/internet-telewizja"
+ - label: "Zobacz ofertę internetu światłowodowego"
+ href: "/internet-swiatlowodowy"
+ title: "Przejdź do oferty Internetu światłowodowego"
primary: false
+
- label: "Zobacz ofertę telefonu"
href: "/telefon"
+ title: "Przejdź do oferty telefonu"
primary: false
- # - label: "Sprawdź dostępność"
- # href: "/mapa-zasiegu"
- # primary: false
- # - label: "Zobacz ofertę"
- # href: "/oferta"
+
+ - label: "Sprawdź dostępność"
+ href: "/mapa-zasiegu"
+ title: "Sprawdź zasięg Internetu światłowodowego i radiowego FUZ"
+ primary: false
diff --git a/src/content/internet-telewizja/offers.yaml b/src/content/internet-telewizja/offers.yaml
index ae61e81..872892f 100644
--- a/src/content/internet-telewizja/offers.yaml
+++ b/src/content/internet-telewizja/offers.yaml
@@ -2,6 +2,7 @@ przelaczniki:
- id: "budynek"
etykieta: "Rodzaj budynku"
domyslny: "jednorodzinny"
+ title: Zmień rodzaj budynku by zobaczyć odpowiednie ceny
opcje:
- id: "jednorodzinny"
nazwa: "Jednorodzinny"
@@ -11,6 +12,7 @@ przelaczniki:
- id: "umowa"
etykieta: "Okres umowy"
domyslny: "24m"
+ title: Wybierz okres umowy by zobaczyć odpowiednie ceny
opcje:
- id: "24m"
nazwa: "24 miesiące"
diff --git a/src/content/internet-telewizja/section.yaml b/src/content/internet-telewizja/section.yaml
index 38ce2d9..9edd87a 100644
--- a/src/content/internet-telewizja/section.yaml
+++ b/src/content/internet-telewizja/section.yaml
@@ -2,13 +2,13 @@ sections:
- title: Dodatkowe możliwości naszej telewizji"
image: "/assets/tv/ekosystem-kyanit.png"
content: |
- - **Catchup** — na wybranych kanałach możesz obejrzeć audycję z ostatnich 7 dni. [Więcej →](#catchup)
+ - **Catchup** — na wybranych kanałach możesz obejrzeć audycję z ostatnich 7 dni. [Więcej →](#catchup "Przeczytaj o usłudze CatchUp")
- - **Nagrywanie** — nagraj interesującą Cię audycję i obejrzyj ją kiedy chcesz. [Więcej →](#nagrywarka)
+ - **Nagrywanie** — nagraj interesującą Cię audycję i obejrzyj ją kiedy chcesz. [Więcej →](#nagrywarka "Przeczytaj o nagrywaniu audycji")
- - **StartOver** — obejrzyj od początku audycję, która już się rozpoczęła (do 3h wstecz). [Więcej →](#startover)
+ - **StartOver** — obejrzyj od początku audycję, która już się rozpoczęła (do 3h wstecz). [Więcej →](#startover "Przeczytaj o usłudze StartOver")
- - **Nagrywanie serii** — zaplanuj nagrywanie kolejnych odcinków ulubionego serialu. [Więcej →](#nagrywanie_cykliczne)
+ - **Nagrywanie serii** — zaplanuj nagrywanie kolejnych odcinków ulubionego serialu. [Więcej →](#nagrywanie_cykliczne "Przeczytaj o nagrywaniu cyklicznym")
- **Pauzowanie** — zatrzymuj i cofaj audycje.
diff --git a/src/content/site/footer.yaml b/src/content/site/footer.yaml
index e956d08..4b78170 100644
--- a/src/content/site/footer.yaml
+++ b/src/content/site/footer.yaml
@@ -13,15 +13,22 @@ contact:
services:
- name: "Internet Światłowodowy"
url: "/internet-swiatlowodowy"
+ title: "Przejdź do oferty Internetu światłowodowego"
+
- name: "Internet Radiowy"
url: "/internet-radiowy"
+ title: "Przejdź do oferty Internetu radiowego"
+
- name: "Internet + Telewizja"
url: "/internet-telewizja"
+ title: "Przejdź do oferty Internet + Telewizja w FUZ"
+
- name: "Telefon"
url: "/telefon"
+ title: "Przejdź do oferty telefonu"
recaptcha:
Ta strona jest chroniona przez reCAPTCHA.
Obowiązują
- Google Polityka prywatności oraz
- Warunki korzystania.
\ No newline at end of file
+ Google Polityka prywatności oraz
+ Warunki korzystania.
\ No newline at end of file
diff --git a/src/content/site/site.section.yaml b/src/content/site/site.section.yaml
index 1ddf4be..3f5a472 100644
--- a/src/content/site/site.section.yaml
+++ b/src/content/site/site.section.yaml
@@ -4,8 +4,9 @@ sections:
dimmed: true
type: default
button:
- text: "Zobacz ofertę →"
+ text: "Zobacz ofertę Internetu Światłowodowego →"
url: "/internet-swiatlowodowy"
+ title: "Przejdź do oferty Internetu światłowodowego"
content: |
Z naszym światłowodem zyskujesz nie tylko internet, ale przewagę — najwyższą jakość połączenia, która nigdy nie zwalnia.
@@ -15,8 +16,9 @@ sections:
image: "/images/section-tv.webp"
dimmed: true
button:
- text: "Zobacz ofertę →"
+ text: "Zobacz ofertę Internetu + Telewizja →"
url: "/internet-telewizja/"
+ title: "Przejdź do oferty Internet + Telewizja w FUZ"
content: |
Internet + TV to połączenie stabilnego, szybkiego łącza z bogatą ofertą telewizyjną dla całej rodziny.
@@ -27,8 +29,9 @@ sections:
dimmed: true
type: default
button:
- text: "Zobacz ofertę →"
- url: "/internet-radiowy/"
+ text: "Zobacz ofertę Internetu Radiowego →"
+ url: "/internet-radiowy/"
+ title: "Przejdź do oferty Internetu radiowego"
content: |
Nowoczesna technologia radiowa gwarantuje stabilny internet o wysokiej wydajności tam, gdzie inne łącza nie mają szans.
@@ -38,8 +41,9 @@ sections:
image: "/images/section-telefon.webp"
dimmed: true
button:
- text: "Zobacz ofertę →"
+ text: "Zobacz ofertę telefonu →"
url: "/internet-telewizja/"
+ title: "Przejdź do oferty telefonu"
content: |
Nasza telefonia wykorzystuje zaawansowaną technologię VoIP, dzięki której dźwięk jest wyraźny, a połączenia stabilne.
diff --git a/src/content/telefon/hero.yaml b/src/content/telefon/hero.yaml
index 64f5341..4696348 100644
--- a/src/content/telefon/hero.yaml
+++ b/src/content/telefon/hero.yaml
@@ -9,9 +9,17 @@ description: |
Dziś dla wielu to niezbędne narzędzie pełne funkcji – „bez telefonu jak bez ręki".
imageUrl: "/images/section-telefon.webp"
ctas:
- - label: "Zobacz ofertę Internetu + Telewizji"
- href: "/internet-telewizja"
- primary: false
- label: "Zobacz ofertę internetu światłowodowego"
href: "/internet-swiatlowodowy"
+ title: "Przejdź do oferty Internetu światłowodowego"
primary: false
+
+ - label: "Zobacz ofertę Internetu + Telewizji"
+ href: "/internet-telewizja"
+ title: "Przejdź do oferty Internet + Telewizja w FUZ"
+ primary: false
+
+ - label: "Sprawdź dostępność"
+ href: "/mapa-zasiegu"
+ title: "Sprawdź zasięg Internetu światłowodowego i radiowego FUZ"
+ primary: false
diff --git a/src/content/telefon/page.yaml b/src/content/telefon/page.yaml
index 0ecc4c5..ce284d1 100644
--- a/src/content/telefon/page.yaml
+++ b/src/content/telefon/page.yaml
@@ -21,7 +21,7 @@ paragraphs:
Dzięki temu możesz cieszyć się niezawodną łącznością głosową dzięki technologii VoIP, jednocześnie korzystając z szybkiego i stabilnego dostępu do Internetu oraz bogatej oferty telewizyjnej.
- Wybierz naszą usługę telefonu stacjonarnego z [internetem światłowodowym](/internet-swiatlowodowy) lub [internetem + telewizją](/internet-telewizja) i zyskaj kompleksowe rozwiązanie komunikacyjne dostosowane do Twoich potrzeb.
+ Wybierz naszą usługę telefonu stacjonarnego z [internetem światłowodowym](/internet-swiatlowodowy "Przejdź do oferty Internetu światłowodowego") lub [internetem + telewizją](/internet-telewizja "Przejdź do oferty Internet + Telewizja w FUZ") i zyskaj kompleksowe rozwiązanie komunikacyjne dostosowane do Twoich potrzeb.
# Kolejne sekcje mozna dodawać poja wiać się bedą pod tabela produktów
\ No newline at end of file
diff --git a/src/content/telefon/section.yaml b/src/content/telefon/section.yaml
index afc066a..a1bcccc 100644
--- a/src/content/telefon/section.yaml
+++ b/src/content/telefon/section.yaml
@@ -10,4 +10,4 @@ sections:
Wszystko załatwisz w kilka minut, bez sporządzania pism, wysyłania listów, czy odwiedzania biur obsługi klienta.
- Masz pytania? [Skontaktuj się](/#contact)
\ No newline at end of file
+ Masz pytania? [Skontaktuj się](/#contact "Skontaktuj się z nami")
\ No newline at end of file
diff --git a/src/islands/ChannelSwitcher.jsx b/src/islands/ChannelSwitcher.jsx
index 5ddb7c4..6a7ae56 100644
--- a/src/islands/ChannelSwitcher.jsx
+++ b/src/islands/ChannelSwitcher.jsx
@@ -1,6 +1,6 @@
import { useState } from "preact/hooks";
-export default function ChannelSwitcher({ sets = [] }) {
+export default function ChannelSwitcher({ sets = [], title = "" }) {
const [activeId, setActiveId] = useState(sets[0]?.id);
const active = sets.find((x) => x.id === activeId);
@@ -15,6 +15,7 @@ export default function ChannelSwitcher({ sets = [] }) {
type="button"
class={`fuz-switch ${activeId === s.id ? "active" : ""}`}
onClick={() => setActiveId(s.id)}
+ title={title}
>
{s.name}
diff --git a/src/islands/Markdown.jsx b/src/islands/Markdown.jsx
index 03a1f9c..ad4828d 100644
--- a/src/islands/Markdown.jsx
+++ b/src/islands/Markdown.jsx
@@ -48,14 +48,12 @@ export default function FuzMarkdown({ text, ctx = {} }) {
// Konwersja kinków na modal linki
processed = processed.replace(
- /\[([^\]]+)\]\(#([^)]+)\)/g,
- `$1`
+ /\[([^\]]+)\]\(#([^) "]+)(?:\s+"([^"]+)")?\)/g,
+ (match, label, modalId, title) => {
+ return `${label}`;
+ }
);
-
- // processed = processed.replace(
- // /\[([^\]]+)\]\(#([^)]+)\)/g,
- // ``
- // );
const html = marked(processed);
return (
diff --git a/src/islands/Offers/OffersExtraServices.jsx b/src/islands/Offers/OffersExtraServices.jsx
index 1899ef7..12440bd 100644
--- a/src/islands/Offers/OffersExtraServices.jsx
+++ b/src/islands/Offers/OffersExtraServices.jsx
@@ -30,7 +30,7 @@ export default function OffersExtraServices({
{srv.nazwa} |
{srv.cena} |
- |
diff --git a/src/islands/Offers/OffersSwitches.jsx b/src/islands/Offers/OffersSwitches.jsx
index 48f15c5..6703b36 100644
--- a/src/islands/Offers/OffersSwitches.jsx
+++ b/src/islands/Offers/OffersSwitches.jsx
@@ -11,10 +11,10 @@ export default function OffersSwitches({ switches, selected, onSwitch }) {
{sw.opcje.map((op) => (
onSwitch(sw.id, op.id)}
+ title={sw.title}
>
{op.nazwa}
diff --git a/src/pages/mapa-zasiegu/index.astro b/src/pages/mapa-zasiegu/index.astro
index ebea1a9..f3b2e74 100644
--- a/src/pages/mapa-zasiegu/index.astro
+++ b/src/pages/mapa-zasiegu/index.astro
@@ -6,6 +6,7 @@ import MapSwitch from "../../components/maps/MapSwitch.astro";
const apiKey = import.meta.env.PUBLIC_GOOGLE_MAPS_KEY;
const lat = 52.597388
const lon = 21.456797;
+const mapStyleId="8e0a97af9476f2d3"
---
@@ -61,6 +62,7 @@ const lon = 21.456797;
zoom={14}
showMarker={true}
mode="full"
+ mapStyleId={mapStyleId}
/>
diff --git a/src/styles/buttons.css b/src/styles/buttons.css
index b73f6e5..f923de1 100644
--- a/src/styles/buttons.css
+++ b/src/styles/buttons.css
@@ -84,6 +84,11 @@
}
/* Textarea */
-textarea.fuz-input {
+/* textarea.fuz-input {
resize: none;
-}
+} */
+
+.fuz-link {
+ color: var(--fuz-accent);
+ transition: color 0.2s ease;
+}
\ No newline at end of file
diff --git a/src/styles/contact.css b/src/styles/contact.css
index 2574eec..1869dab 100644
--- a/src/styles/contact.css
+++ b/src/styles/contact.css
@@ -33,6 +33,13 @@
color: var(--fuz-text);
}
+.fuz-rodo a {
+ color: var(--fuz-accent); /* Twój kolor linków */
+}
+
+.fuz-rodo a:hover {
+ color: var(--fuz-accent-hover); /* jeśli masz globalne zmienne */
+}
/* --- TOAST --- */
.fuz-toast {
diff --git a/src/styles/theme.css b/src/styles/theme.css
index 3a4c2ba..327a4df 100644
--- a/src/styles/theme.css
+++ b/src/styles/theme.css
@@ -2,8 +2,10 @@
--fuz-bg: #ffffff;
--fuz-text: #1a1a1a;
--fuz-accent: #0066ff;
- --fuz-accent: #0094ff;
+ --fuz-accent-hover: #9e133d;
--fuz-accent-text: #ffffff;
+
+
/* Buttons */
--btn-bg: var(--fuz-accent);
@@ -21,8 +23,11 @@
--fuz-text: #e6edf3;
--fuz-bg: #0d1117;
--fuz-accent: #58a6ff;
+ --fuz-accent-hover: #9e133d;
--fuz-accent-text: #0d1117;
+
+
/* Buttons */
--btn-bg: var(--fuz-accent);
--btn-text: var(--fuz-accent-text);