"use strict";

/**
 * Centrale productcatalogus.
 * Elk product is de enige bron van waarheid; alle pagina's en het mandje
 * worden hieruit gegenereerd.
 *
 * Velden:
 * - id        : artikelnummer / SKU.
 * - slug      : semantisch URL-deel, bijv. /producten/hdmi-naar-tuinslang.
 * - from / to : labels op de connector-tegel (fallback zonder foto).
 * - category  : sleutel uit CATEGORIES.
 * - image     : pad naar een foto in assets/images/ (leeg = connector-tegel).
 * - stock     : { label, available } voor de beschikbaarheidsweergave.
 * - desc      : korte omschrijving voor kaarten.
 * - long      : uitgebreide omschrijving voor de productpagina.
 * - specs     : technische specificaties (label -> waarde).
 * - features  : opsomming van eigenschappen.
 */
window.PRODUCTS = [
  {
    id: "CL-1001", slug: "hdmi-naar-tuinslang", from: "HDMI", to: "Slang", category: "video",
    name: "HDMI naar tuinslang", price: 24.99, old: 39.99, rating: 4, reviews: 1204,
    image: "assets/images/cl-1001.png",
    stock: { label: "Theoretisch leverbaar", available: true },
    desc: "Geleidt 4K-beeldsignaal rechtstreeks naar een standaard tuinslangkoppeling.",
    long: "De HDMI naar tuinslang vormt de brug tussen uw mediacentrum en de besproeiing van de border. Het beeldsignaal wordt zonder noemenswaardig verlies omgezet naar een waterkolom die geschikt is voor de meeste Europese slangkoppelingen. Ideaal voor wie zijn vakantiefoto's letterlijk wil laten stromen.",
    specs: { "Aansluiting in": "HDMI 2.1 (m)", "Aansluiting uit": "Gardena-compatibel 13 mm", "Maximale resolutie": "4K bij 60 Hz", "Maximale waterdruk": "6 bar", "Kabellengte": "1,5 m", "Behuizing": "Geborsteld aluminium" },
    features: ["Volledig waterdichte signaalkern", "Geschikt voor binnen- en buitengebruik", "Knikbestendige trekontlasting", "Geen driver vereist (ook niet beschikbaar)"]
  },
  {
    id: "CL-1002", slug: "ethernet-naar-midi", from: "RJ45", to: "MIDI", category: "audio",
    name: "Ethernet naar MIDI", price: 18.50, old: 29.00, rating: 5, reviews: 893,
    image: "assets/images/cl-1002.png",
    stock: { label: "Op voorraad in theorie", available: true },
    desc: "Zet netwerkpakketten om in MIDI-noten. Gemeten latency rond drie werkdagen.",
    long: "De Ethernet naar MIDI vertaalt binnenkomend netwerkverkeer naar muzikale noten. Elk TCP-pakket wordt een toon, elke timeout een rust. Uw firewall-logboek wordt een symfonie. De gemeten latency van circa drie werkdagen maakt het instrument bijzonder geschikt voor zeer geduldige componisten.",
    specs: { "Aansluiting in": "RJ45 (1 Gbit/s)", "Aansluiting uit": "5-pins DIN MIDI", "Polyfonie": "Onbeperkt, theoretisch", "Latency": "≈ 3 werkdagen", "Voeding": "Power over Ethernet", "Protocol": "MIDI 1.0 over IP" },
    features: ["Realtime omzetting van pakketten naar noten", "Compatibel met de meeste DAW's die niet bestaan", "Automatische kwantisering naar werkdagen", "Galmvrije netwerkstilte"]
  },
  {
    id: "CL-1003", slug: "sata-naar-9v-analoog", from: "SATA", to: "9V", category: "power",
    name: "SATA naar 9V analoog", price: 12.95, old: 19.95, rating: 3, reviews: 412,
    image: "assets/images/cl-1003.png",
    stock: { label: "Beperkt leverbaar", available: true },
    desc: "Leest een harde schijf uit en levert het resultaat als analoge 9V-spanning.",
    long: "De SATA naar 9V analoog zet de inhoud van uw harde schijf om in een vloeiende analoge spanning tussen 0 en 9 volt. Documenten worden golfvormen, vakantiefoto's worden ruis. Sluit een oude effectpedaal aan en beluister uw back-up zoals die bedoeld was: volstrekt onbegrijpelijk.",
    specs: { "Aansluiting in": "SATA III data + voeding", "Aansluiting uit": "9V mono jack", "Uitgangsspanning": "0–9 V analoog", "Bemonstering": "Niet van toepassing", "Ruisniveau": "Aangenaam hoog", "Behuizing": "Mat zwart ABS" },
    features: ["Directe omzetting van data naar spanning", "Geschikt voor gitaarversterkers", "Geen formattering nodig", "Volledig onleesbaar resultaat gegarandeerd"]
  },
  {
    id: "CL-1004", slug: "hdmi-naar-kippensoep", from: "HDMI", to: "Soep", category: "video",
    name: "HDMI naar kippensoep", price: 32.00, old: 49.99, rating: 5, reviews: 2671,
    image: "assets/images/cl-1004.png",
    stock: { label: "Goed leverbaar", available: true },
    desc: "Converteert een beeldsignaal naar warme bouillon. Vegetarische variant op aanvraag.",
    long: "Onze bestverkochte converter zet ieder beeldsignaal om in een portie warme kippensoep. Een actiefilm levert een stevige bouillon, een natuurdocumentaire iets met meer groente. De vegetarische variant vervangt de kip door een gelijkwaardig signaalverlies.",
    specs: { "Aansluiting in": "HDMI 2.0", "Aansluiting uit": "Hittebestendige tuit", "Capaciteit": "250 ml per aflevering", "Temperatuur": "63 °C ± 2", "Smaakprofiel": "Afhankelijk van het beeld", "Reiniging": "Handwas aanbevolen" },
    features: ["Warm signaal binnen enkele minuten", "Vegetarische modus op aanvraag", "Geïntegreerde zeef", "Geschikt voor filmavonden"]
  },
  {
    id: "CL-1005", slug: "usb-c-naar-faxrook", from: "USB-C", to: "Rook", category: "data",
    name: "USB-C naar faxrook", price: 27.75, old: 44.00, rating: 4, reviews: 556,
    image: "assets/images/cl-1005.png",
    stock: { label: "Theoretisch leverbaar", available: true },
    desc: "Verstuurt bestanden als rooksignaal. Compatibel met de meeste schoorstenen.",
    long: "De USB-C naar faxrook moderniseert de prehistorie. Bestanden worden omgezet in nette rookwolken die door collega's op een nabijgelegen heuvel kunnen worden ontcijferd. Werkt het best bij windstil weer en een gedeelde afspraak over wat de wolken betekenen.",
    specs: { "Aansluiting in": "USB-C 3.2", "Aansluiting uit": "Geïsoleerde rookpijp", "Doorvoersnelheid": "1 wolk per minuut", "Bereik": "Tot de horizon", "Brandstof": "Niet meegeleverd", "Veiligheid": "Rookmelder aanbevolen" },
    features: ["Compatibel met de meeste schoorstenen", "Werkt offline en off-grid", "Geen abonnement nodig", "Historisch verantwoord"]
  },
  {
    id: "CL-1006", slug: "vga-naar-sok", from: "VGA", to: "Sok", category: "video",
    name: "VGA naar sok", price: 9.99, old: 14.99, rating: 2, reviews: 88,
    image: "assets/images/cl-1006.png",
    stock: { label: "Laatste exemplaren", available: true },
    desc: "Beeldscherm-uitvoer naar een enkele katoenen sok. Beschikbaar in maat 38 tot 46.",
    long: "De VGA naar sok is ons instapmodel. Het analoge beeldsignaal wordt geweven in een enkele katoenen sok, waardoor uw desktop voortaan ook draagbaar is. Let op: de andere sok is, net als bij echte sokken, onvindbaar.",
    specs: { "Aansluiting in": "VGA (15-pins D-sub)", "Aansluiting uit": "Katoenen boord", "Maatvoering": "EU 38–46", "Materiaal": "80% katoen, 20% mysterie", "Wasvoorschrift": "30 °C fijne was", "Inhoud": "1 sok" },
    features: ["Draagbare desktop", "Ademend materiaal", "Geschikt voor de wasmachine", "Eén sok per verpakking"]
  },
  {
    id: "CL-1007", slug: "bluetooth-naar-koffie", from: "BT", to: "Koffie", category: "audio",
    name: "Bluetooth naar koffie", price: 21.40, old: 33.00, rating: 5, reviews: 1999,
    image: "assets/images/cl-1007.png",
    stock: { label: "Goed leverbaar", available: true },
    desc: "Draadloze koppeling met een verse espresso. Pairing-code is altijd 0000.",
    long: "De Bluetooth naar koffie koppelt draadloos met een vers gezette espresso. Na het pairen (code 0000, altijd) ontvangt u binnen handbereik een kopje van gemiddelde kwaliteit. Ondersteunt meerdere apparaten, mits ze allemaal koffie willen.",
    specs: { "Protocol": "Bluetooth 5.2", "Pairing-code": "0000", "Capaciteit": "1 espresso per koppeling", "Bereik": "10 m", "Bonen": "Niet inbegrepen", "Accu": "Ingebouwd, niet vervangbaar" },
    features: ["Volledig draadloze koffie", "Ondersteunt meerdere apparaten", "Energiezuinige sluimerstand", "Pairing-code nooit te vergeten"]
  },
  {
    id: "CL-1008", slug: "displayport-naar-wind", from: "DP", to: "Wind", category: "video",
    name: "DisplayPort naar wind", price: 16.20, old: 25.00, rating: 4, reviews: 734,
    image: "assets/images/cl-1008.png",
    stock: { label: "Theoretisch leverbaar", available: true },
    desc: "Vertaalt framerate naar luchtverplaatsing. Bij 144Hz wordt orkaankracht bereikt.",
    long: "De DisplayPort naar wind zet de framerate van uw monitor om in een verfrissende bries. Op 60 Hz blijft het bij een zacht briesje; vanaf 144 Hz raden wij aan losse voorwerpen vast te zetten. Inclusief windschaal-sticker voor op uw bureau.",
    specs: { "Aansluiting in": "DisplayPort 1.4", "Aansluiting uit": "Gerichte luchtmond", "Windkracht": "1–11 Bft", "Drempel orkaan": "144 Hz", "Geluidsniveau": "Afhankelijk van scène", "Behuizing": "Geventileerd polycarbonaat" },
    features: ["Variabele windkracht via framerate", "Inclusief windschaal-sticker", "Geen ventilator met bewegende delen", "Verkoelend tijdens het gamen"]
  },
  {
    id: "CL-1009", slug: "glasvezel-naar-slak", from: "Fiber", to: "Slak", category: "data",
    name: "Glasvezel naar slak", price: 45.00, old: 69.99, rating: 3, reviews: 203,
    image: "assets/images/cl-1009.png",
    stock: { label: "Beperkt leverbaar", available: true },
    desc: "Gigabit-doorvoer in biologisch afbreekbare, uiterst trage uitvoering.",
    long: "De Glasvezel naar slak combineert de bandbreedte van glasvezel met de voortvarendheid van een tuinslak. Pakketten arriveren gegarandeerd, zij het wanneer ze daar zelf aan toe zijn. Volledig biologisch afbreekbaar en bijzonder milieuvriendelijk.",
    specs: { "Aansluiting in": "SC/APC glasvezel", "Transport": "Gastropode", "Doorvoer": "Tot 1 Gbit/s, ooit", "Snelheid": "0,013 m/s", "Voeding": "Sla", "Levensduur": "Seizoensgebonden" },
    features: ["Biologisch afbreekbaar transport", "Geen elektriciteit nodig", "Volledig geruisloos", "Komt altijd aan, uiteindelijk"]
  },
  {
    id: "CL-1010", slug: "aux-naar-kaasplank", from: "AUX", to: "Kaas", category: "audio",
    name: "AUX naar kaasplank", price: 14.49, old: 22.00, rating: 5, reviews: 1420,
    image: "assets/images/cl-1010.png",
    stock: { label: "Goed leverbaar", available: true },
    desc: "Audio uit de ene poort, kaas uit de andere. Geschikt voor borrelopstellingen.",
    long: "De AUX naar kaasplank tilt elke borrel naar een hoger niveau. Steek de jack in uw telefoon en de converter serveert een passende kaas bij het nummer. Jazz levert iets gerijpts op, hardstyle iets met peper. Plankje en mesje inbegrepen.",
    specs: { "Aansluiting in": "3,5 mm jack (stereo)", "Aansluiting uit": "Eikenhouten plank", "Capaciteit": "3 soorten kaas", "Koeling": "Passief", "Accessoires": "Mesje inbegrepen", "Onderhoud": "Afneembaar met doek" },
    features: ["Kaasselectie op basis van genre", "Plankje en mesje inbegrepen", "Geschikt voor borrelopstellingen", "Stille werking tussen de gangen"]
  },
  {
    id: "CL-1011", slug: "rj45-naar-buitenaards", from: "RJ45", to: "Ruimte", category: "data",
    name: "RJ45 naar buitenaards", price: 99.99, old: 149.99, rating: 5, reviews: 42,
    image: "assets/images/cl-1011.png",
    stock: { label: "Zeer beperkt leverbaar", available: true },
    desc: "Koppelt de router aan het bredere melkwegstelsel. Ping naar Mars circa vier minuten.",
    long: "Ons vlaggenschip. De RJ45 naar buitenaards verbindt uw thuisnetwerk met het bredere melkwegstelsel. De ping naar Mars bedraagt onder gunstige omstandigheden circa vier minuten. Eventuele antwoorden van buitenaardse beschavingen vallen buiten de garantie.",
    specs: { "Aansluiting in": "RJ45 (10 Gbit/s)", "Aansluiting uit": "Parabolische zender", "Bereik": "Het waarneembare heelal", "Ping naar Mars": "≈ 4 min", "Vermogen": "Aanzienlijk", "Vergunning": "Niet geregeld" },
    features: ["Interplanetaire connectiviteit", "Geschikt voor first contact", "Richtbare antenne", "Indrukwekkend op verjaardagen"]
  },
  {
    id: "CL-1012", slug: "usb-c-naar-drumsolo", from: "USB-C", to: "Drum", category: "power",
    name: "USB-C naar drumsolo", price: 19.95, old: 29.95, rating: 4, reviews: 612,
    image: "assets/images/cl-1012.png",
    stock: { label: "Goed leverbaar", available: true },
    desc: "Bij elke laadcyclus wordt een korte drumsolo afgespeeld, inclusief cimbaal.",
    long: "De USB-C naar drumsolo maakt opladen weer een gebeurtenis. Elke laadcyclus begint met een korte, energieke drumsolo, compleet met afsluitende cimbaal. Het volume schaalt mee met het laadvermogen, dus snelladen wordt een waar spektakel.",
    specs: { "Aansluiting in": "USB-C Power Delivery", "Uitvoer": "Geïntegreerde luidspreker", "Vermogen": "Tot 100 W", "Soloduur": "4–8 seconden", "Cimbaal": "Inbegrepen", "Volume": "Schaalt met laadsnelheid" },
    features: ["Drumsolo bij elke laadcyclus", "Volume schaalt met vermogen", "Afsluitende cimbaal", "Niet uit te schakelen"]
  },
];

window.CATEGORIES = [
  { key: "all", label: "Alles" },
  { key: "video", label: "Video" },
  { key: "audio", label: "Audio" },
  { key: "data", label: "Data" },
  { key: "power", label: "Voeding" },
];
