Menu
EUR

Spijlenpoort - Excellent

De spijlenpoorten - Excellent van Hekwerk Direct zijn kwalitatieve poorten met een functioneel en strak uiterlijk. De poort is verzinkt en desgewenst voorzien van een coating laag.

Belangrijkste kenmerken:

  • Afmetingen: Beschikbaar in diverse hoogtes en breedtes, zowel in enkele als dubbele uitvoering, zodat de poort af te stemmen is op jouw specifieke wensen en de stijl van de tuin.

  • Designopties: Kies tussen spijlen tussen liggers, doorgestoken spijlen of mikado spijlen.

  • Behandeling: De poort is volledig rondom gelast voor extra stevigheid en is verzinkt volgens de norm NEN-EN-ISO 1461. Daarnaast kan de poort desgewenst voorzien worden van coating.

  • Bevestigingsmaterialen: De poorten worden geleverd met poortvleugel(s), poortpalen, slotset, scharnieren en paaldoppen, wat zorgt voor een complete en gemakkelijke installatie. 

Bij een bestelde poort krijg je ook een handleiding voor de plaatsing van de poort. Deze handleidingen zijn overigens ook digitaal te bekijken

6 Producten
Toon:
Spijlenpoort Excellent - gecoat
Spijlenpoort Excellent - gecoat
€723,95 €598,31
Dubbele Spijlenpoort Excellent Gecoat
Dubbele Spijlenpoort Excellent Gecoat
€1.107,95 €915,66
Spijlenpoort Excellent Verzinkt
Spijlenpoort Excellent Verzinkt
€647,95 €535,50
Dubbele spijlenpoort Excellent - verzinkt
Dubbele spijlenpoort Excellent - verzinkt
€1.008,95 €833,84
Spijlenpoort Mikado - Gecoat
Spijlenpoort Mikado - Gecoat
€804,95 €665,25
Dubbele spijlenpoort Mikado - Gecoat
Dubbele spijlenpoort Mikado - Gecoat
€1.536,95 €1.270,21
Toon 1 - 6 van 6
Prijs
Min Max
Sluiten
Bankoverschrijving
Kies uw taal
Kies uw valuta

Mijn account

Wachtwoord vergeten?

Recent toegevoegd

Totaal incl. btw
€0,00
Bestel nog voor €700,00 en de verzending is gratis
0
Vergelijk
Start vergelijking

Dit artikel is toegevoegd aan uw winkel wagen!
(function () { const API_BASE = "https://hd-spijlen.michel-abchekwerk.workers.dev"; const TARGET_SLUG = "/spijlendirect-compleet-pakket"; if (!location.pathname.includes(TARGET_SLUG)) return; console.log("[HD] configurator init"); function waitForProductForm(cb) { const maxTime = Date.now() + 15000; const iv = setInterval(() => { const form = document.querySelector('form[action*="cart"]'); const mount = document.getElementById("hd-configurator"); if (form && mount) { clearInterval(iv); cb(form, mount); } if (Date.now() > maxTime) { clearInterval(iv); console.warn("[HD] product form niet gevonden binnen timeout"); } }, 200); } waitForProductForm(async (productForm, mount) => { console.log("[HD] product form gevonden → configurator injecteren"); // 1️⃣ verberg standaard Lightspeed koopblok productForm.style.display = "none"; // 2️⃣ defaults (later uitbreidbaar) const DEFAULTS = { soortSpijlen: "Spijlen 25x25 vlak", hoeken: "0", muuraansluiting: "Geen", soortPalen: "Grondpalen", soortPaaldop: "Paalkap kunststof", }; const fmtEUR = (n) => new Intl.NumberFormat("nl-NL", { style: "currency", currency: "EUR" }).format(n); function getVatPref() { try { const v = localStorage.getItem("vat_type_pref") || ""; if (/excl/i.test(v)) return "excl"; if (/incl/i.test(v)) return "incl"; } catch {} return "incl"; } function roundingNote(m) { if (!isFinite(m) || m <= 0) return ""; const vakken = Math.ceil(m / 2.2); return `Wordt afgerond naar ${vakken} vak(ken) = ${(vakken * 2.2) .toFixed(1) .replace(".", ",")}m`; } // 3️⃣ opties ophalen const opt = await fetch(API_BASE + "/api/options").then(r => r.json()); if (!opt.ok) { mount.innerHTML = "

Configurator kon opties niet laden.

"; return; } const kleuren = opt.options.kleuren.filter(k => /7016|9005/.test(k)); const hoogtes = opt.options.hoogtes; // 4️⃣ UI renderen (theme-styling wordt automatisch overgenomen) mount.innerHTML = `

Configureer je spijlenpakket

`; const elKleur = mount.querySelector("#hd-kleur"); const elHoogte = mount.querySelector("#hd-hoogte"); const elLengte = mount.querySelector("#hd-lengte"); const elRound = mount.querySelector("#hd-round"); const elBtn = mount.querySelector("#hd-calc"); const elPrice = mount.querySelector("#hd-price"); kleuren.forEach(k => elKleur.add(new Option(k, k))); hoogtes.forEach(h => elHoogte.add(new Option(h, h))); elLengte.oninput = () => { elRound.textContent = roundingNote(Number(elLengte.value)); }; elRound.textContent = roundingNote(10); async function quote() { elBtn.disabled = true; const cfg = { ...DEFAULTS, kleur: elKleur.value, hoogte: elHoogte.value, lengthM: Number(elLengte.value), }; const res = await fetch(API_BASE + "/api/quote", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ config: cfg }), }).then(r => r.json()); elBtn.disabled = false; if (!res.ok) { elPrice.textContent = "Prijs ophalen mislukt"; return; } const pref = getVatPref(); const main = pref === "excl" ? res.totalExcl : res.totalIncl; elPrice.innerHTML = ` ${fmtEUR(main)}
Incl. ${fmtEUR(res.totalIncl)} · Excl. ${fmtEUR(res.totalExcl)} `; } elBtn.onclick = quote; quote(); }); })();