(function () {
var root = document.getElementById("gx-produktfinder");
if (!root) {
return;
}
if (root.getAttribute("data-gx-ready") === "1") {
return;
}
root.setAttribute("data-gx-ready", "1");
/* =========================================
GRUNDFUNKTIONEN
========================================= */
function createElement(tag, css, text) {
var element = document.createElement(tag);
if (css) {
element.style.cssText = css;
}
if (typeof text !== "undefined" && text !== null) {
element.textContent = text;
}
return element;
}
function append(parent, child) {
if (parent && child) {
parent.appendChild(child);
}
return child;
}
function clear(element) {
while (element.firstChild) {
element.removeChild(element.firstChild);
}
}
function track(eventName, data) {
window.dataLayer = window.dataLayer || [];
var eventData = data || {};
eventData.event = eventName;
window.dataLayer.push(eventData);
}
/* =========================================
PRODUKTBILDER
========================================= */
var productImageCache = {};
function normalizeImageUrl(url, baseUrl) {
if (!url) {
return "";
}
try {
return new URL(url, baseUrl || window.location.origin).href;
} catch (error) {
return url;
}
}
function findProductImageInJsonLd(value) {
var i;
var found;
if (!value) {
return "";
}
if (Array.isArray(value)) {
for (i = 0; i < value.length; i++) {
found = findProductImageInJsonLd(value[i]);
if (found) {
return found;
}
}
return "";
}
if (typeof value !== "object") {
return "";
}
if (value["@type"] === "Product" && value.image) {
if (Array.isArray(value.image)) {
return value.image.length ? value.image[0] : "";
}
if (typeof value.image === "string") {
return value.image;
}
if (value.image && typeof value.image.url === "string") {
return value.image.url;
}
}
if (value["@graph"]) {
found = findProductImageInJsonLd(value["@graph"]);
if (found) {
return found;
}
}
return "";
}
function extractFirstProductImage(html, productUrl) {
var parser = new DOMParser();
var doc = parser.parseFromString(html, "text/html");
var meta;
var scripts;
var i;
var data;
var imageUrl;
var candidates;
var src;
/* Plentymarkets setzt das Hauptproduktbild in der Regel als OG-Bild. */
meta = doc.querySelector('meta[property="og:image"]');
if (meta && meta.getAttribute("content")) {
return normalizeImageUrl(meta.getAttribute("content"), productUrl);
}
meta = doc.querySelector('meta[name="twitter:image"], meta[property="twitter:image"]');
if (meta && meta.getAttribute("content")) {
return normalizeImageUrl(meta.getAttribute("content"), productUrl);
}
/* Zweite Quelle: Product-JSON-LD. */
scripts = doc.querySelectorAll('script[type="application/ld+json"]');
for (i = 0; i < scripts.length; i++) {
try {
data = JSON.parse(scripts[i].textContent);
imageUrl = findProductImageInJsonLd(data);
if (imageUrl) {
return normalizeImageUrl(imageUrl, productUrl);
}
} catch (error) {
/* Ungültiges JSON-LD überspringen. */
}
}
/* Letzter Fallback: erstes wahrscheinlich echte Produktbild. */
candidates = doc.querySelectorAll(
'[itemprop="image"], .product-image img, .product-images img, .image-carousel img, .carousel img, main img'
);
for (i = 0; i < candidates.length; i++) {
src =
candidates[i].getAttribute("data-src") ||
candidates[i].getAttribute("data-original") ||
candidates[i].getAttribute("src");
if (
src &&
src.indexOf("data:image") !== 0 &&
src.toLowerCase().indexOf("logo") === -1 &&
src.toLowerCase().indexOf("icon") === -1
) {
return normalizeImageUrl(src, productUrl);
}
}
return "";
}
function loadFirstProductImage(product, imageElement, imageBox) {
var productUrl = normalizeImageUrl(product.url, window.location.origin);
if (productImageCache[product.id]) {
imageElement.src = productImageCache[product.id];
return;
}
fetch(productUrl, {
credentials: "same-origin"
})
.then(function (response) {
if (!response.ok) {
throw new Error("Produktseite konnte nicht geladen werden");
}
return response.text();
})
.then(function (html) {
var imageUrl = extractFirstProductImage(html, productUrl);
if (!imageUrl) {
throw new Error("Kein Produktbild gefunden");
}
productImageCache[product.id] = imageUrl;
imageElement.src = imageUrl;
})
.catch(function () {
/* Falls die Bildabfrage einmal fehlschlägt, bleibt die Ergebniskarte nutzbar. */
imageBox.style.display = "none";
});
}
/* =========================================
PRODUKTDATEN
========================================= */
var products = [
{
"id": "182014045",
"articleNumber": "182014045",
"name": "OFFROAD SPEED E-14R PT45 SM",
"badge": "45 km/h · Rohloff",
"url": "/offroad-speed-rohloff-e-14r-pt45_182014045_9405/",
"price": 7899,
"description": "Faltbares S-Pedelec mit Bosch Performance Line Speed, Rohloff E-14 und Gates-Riemen.",
"facts": [
"Bosch Performance Line Speed · 85 Nm · Smart System",
"Rohloff E-14 · Gates CDX Riemen",
"500 Wh · bis ca. 140 km",
"ca. 23,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 70 cm"
],
"bosch": true,
"midMotor": true,
"speed45": true,
"weightKg": 23.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"premium",
"classic"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": true,
"uses": [
"commute",
"longtour",
"hills",
"speed45"
],
"compactScore": 58,
"premiumScore": 100
},
{
"id": "182014016",
"articleNumber": "182014016",
"name": "Rohloff E-14R PT CX SM",
"badge": "CX · Rohloff · Smart System",
"url": "/rohloff-14-gang-nabenschaltung-mit-freilauf-smart-system-riemenantrieb_182014016_9173/",
"price": 6999,
"description": "High-End CX-Faltrad mit elektronischer Rohloff E-14 und wartungsarmem Gates-Riemen.",
"facts": [
"Bosch Performance Line CX · 85 Nm · Smart System",
"Rohloff E-14 2.0 · Gates CDN Riemen",
"500 Wh · bis ca. 140 km",
"ca. 23,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 70 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 23.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"premium",
"classic"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": true,
"uses": [
"commute",
"everyday",
"longtour",
"hills"
],
"compactScore": 58,
"premiumScore": 100
},
{
"id": "182014002",
"articleNumber": "182014002",
"name": "Rohloff E-14R PP",
"badge": "Rohloff · PowerPack",
"url": "/rohloff-e-14-gang-nabenschaltung-mit-freilauf_182014002_9229/",
"price": 6499,
"description": "Premium-Tourenfaltrad mit Bosch CX, Rohloff E-14 und Gates-Riemenantrieb.",
"facts": [
"Bosch Performance Line CX · 85 Nm",
"Rohloff E-14 · Gates CDN Riemen",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"premium",
"classic"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"everyday",
"longtour",
"hills"
],
"compactScore": 50,
"premiumScore": 98
},
{
"id": "182014011",
"articleNumber": "182014011",
"name": "Rohloff E-14R PT CX",
"badge": "CX · Rohloff",
"url": "/rohloff-14-gang-nabenschaltung-mit-freilauf-performance-line-cx-riemen_182014011_9161/",
"price": 6499,
"description": "Bosch-CX-Faltrad mit elektronischer Rohloff E-14 für Vielfahrer und anspruchsvolle Touren.",
"facts": [
"Bosch Performance Line CX · 85 Nm",
"Rohloff E-14 · Gates CDN Riemen",
"500 Wh · bis ca. 140 km",
"ca. 23,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 70 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 23.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"premium",
"classic"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"everyday",
"longtour",
"hills"
],
"compactScore": 58,
"premiumScore": 98
},
{
"id": "182014001",
"articleNumber": "182014001",
"name": "Rohloff E-14K/R PP",
"badge": "Rohloff · 65 Nm",
"url": "/mobilemaster-offroad-gt-8g-mit-elektronischer-rohloff-e-14-schaltung-bosch-motor_182014001_9209/",
"price": 4999,
"description": "Rohloff-E-14-Faltrad mit Bosch Performance Line und Wahlmöglichkeit zwischen Kette und Riemen.",
"facts": [
"Bosch Performance Line · 65 Nm",
"Rohloff E-14 · Kette oder Gates-Riemen",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 65,
"shiftModes": [
"premium",
"classic"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 48,
"premiumScore": 92
},
{
"id": "182380001",
"articleNumber": "182380001",
"name": "N380R PP CX Vollautomatik",
"badge": "Vollautomatik · Stufenlos",
"url": "/mobilemaster-n380r-f-vollautomatik_182380001_9511/",
"price": 5799,
"description": "Komfortorientiertes CX-Faltrad mit Enviolo AutomatiQ und stufenloser Vollautomatik.",
"facts": [
"Bosch Performance Line CX · 85 Nm",
"Enviolo N380 AutomatiQ · Gates CDX",
"500 Wh · ca. 120–140 km laut Produktseite",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 120,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"automatic",
"stepless",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": true,
"stepless": true,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour",
"hills"
],
"compactScore": 48,
"premiumScore": 90
},
{
"id": "1900000902",
"articleNumber": "1900000902",
"name": "N380K/R PT/PP CX Stufenlos",
"badge": "CX · Stufenlos",
"url": "/mobilemaster-n380-pt-cx-stufenlos-performance-line-cx-85nm-enviolo-380_1900000902_9664/",
"price": 4099,
"description": "Bosch-CX-Faltrad mit stufenloser Enviolo N380; AutomatiQ ist optional.",
"facts": [
"Bosch Performance Line CX · 85 Nm",
"Enviolo N380 · 380 % stufenlos",
"400/500 Wh · mit 500 Wh bis ca. 140 km",
"ca. 23,9 kg ohne Akku · Kette oder Gates-Riemen"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 23.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"stepless",
"classic"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": true,
"smartSystem": false,
"uses": [
"everyday",
"longtour",
"hills"
],
"compactScore": 48,
"premiumScore": 78
},
{
"id": "182005041",
"articleNumber": "182005041",
"name": "N380K/R PP Manuell Stufenlos",
"badge": "Stufenlos · 65 Nm",
"url": "/mobilemaster-n380k-manuell-380-nabenschaltung-mit-freilauf-e-bike-klapprad-mit-bosch-mittelmotor_182005041_9193/",
"price": 4399,
"description": "Stufenloses Enviolo-Faltrad mit Bosch Performance Line und manueller Drehgriffbedienung.",
"facts": [
"Bosch Performance Line · 65 Nm",
"Enviolo N380 · 380 % stufenlos",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Kette oder Gates CDX"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 65,
"shiftModes": [
"stepless",
"classic"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": true,
"smartSystem": false,
"uses": [
"commute",
"everyday",
"longtour"
],
"compactScore": 48,
"premiumScore": 76
},
{
"id": "182005042",
"articleNumber": "182005042",
"name": "N380K/R PP Vollautomatik",
"badge": "AutomatiQ · Stufenlos",
"url": "/enviolo-380-vollautomatische-nabenschaltung-mit-freilauf_182005042_9200/",
"price": 3999,
"description": "Komfortables Enviolo-Faltrad mit vollautomatischer, stufenloser AutomatiQ-Schaltung.",
"facts": [
"Bosch Performance Line · 65 Nm",
"Enviolo N380 AutomatiQ · 380 %",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 65,
"shiftModes": [
"automatic",
"stepless",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": true,
"stepless": true,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 48,
"premiumScore": 82
},
{
"id": "1900000840",
"articleNumber": "1900000840",
"name": "E5R PT CX Automatik SM",
"badge": "CX · Di2 · Smart System",
"url": "/e5r-pt-cx-automatik-sm-performance-line-cx-riemen-nabenschaltung-mit-freilauf_1900000840_9506/",
"price": 5899,
"description": "Bosch-CX-Smart-System-Faltrad mit elektronischer Shimano E5 Di2 und Gates-Riemen.",
"facts": [
"Bosch Performance Line CX · 85 Nm · Smart System",
"Shimano Nexus E5 Di2 · Gates CDX",
"500 Wh · bis ca. 140 km",
"ca. 23,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 23.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"automatic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": true,
"stepless": false,
"smartSystem": true,
"uses": [
"commute",
"everyday",
"longtour",
"hills"
],
"compactScore": 48,
"premiumScore": 84
},
{
"id": "1900000839",
"articleNumber": "1900000839",
"name": "JUNG E5R PT CX Automatik SM",
"badge": "Tiefeinstieg · CX · Di2",
"url": "/jung-e5r-pt-cx-automatik-sm_1900000839_9502/",
"price": 5799,
"description": "Tiefeinstiegsmodell mit Bosch CX Smart System, Shimano E5 Di2 und Gates-Riemen.",
"facts": [
"Bosch Performance Line CX · 85 Nm · Smart System",
"Shimano Nexus E5 Di2 · Gates CDX",
"500 Wh · bis ca. 140 km",
"ca. 23,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 23.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"automatic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": true,
"stepless": false,
"smartSystem": true,
"uses": [
"commute",
"everyday",
"longtour",
"hills"
],
"compactScore": 48,
"premiumScore": 84
},
{
"id": "182005033",
"articleNumber": "182005033",
"name": "E5K/R PP F Automatik",
"badge": "Di2 · Automatik",
"url": "/e5k-automatik-f-kette-shimano-e5-gang-di2-nabenschaltung_182005033_9203/",
"price": 4499,
"description": "Bosch-Performance-Line-Faltrad mit elektronischer Shimano E5 Di2 und Automatikfunktion.",
"facts": [
"Bosch Performance Line · 65 Nm",
"Shimano Nexus E5 Di2 · Freilauf/Rücktritt",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 80 × 40 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 65,
"shiftModes": [
"automatic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": true,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 52,
"premiumScore": 74
},
{
"id": "182001199",
"articleNumber": "182001199",
"name": "E11R PP F Automatik",
"badge": "Alfine 11 · Di2",
"url": "/e11r-pp-f-automatik-shimano-alfine-11-gang-di2-nabenschaltung_182001199_9562/",
"price": 4899,
"description": "CX-Faltrad mit elektronischer Shimano Alfine 11-Gang Di2 und großer Übersetzungsbandbreite.",
"facts": [
"Bosch Performance Line CX · 85 Nm",
"Shimano Alfine 11-Gang Di2 · Gates-Riemen",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 35 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"automatic",
"premium"
],
"beltDrive": true,
"hubShift": true,
"automatic": true,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"everyday",
"longtour",
"hills"
],
"compactScore": 62,
"premiumScore": 88
},
{
"id": "1900000833",
"articleNumber": "1900000833",
"name": "Mobilemaster LIGHT E8 SX",
"badge": "Leicht · Bosch SX",
"url": "/e8-light-sx55_1900000833_9516/",
"price": 4299,
"description": "Relativ leichtes Bosch-Faltrad mit Performance Line SX und Shimano Nexus 8-Gang.",
"facts": [
"Bosch Performance Line SX · bis 60 Nm · Smart System",
"Shimano Nexus 8-Gang · Riemen optional",
"545 Wh · bis ca. 140 km",
"ca. 19,3 kg ohne Akku · Faltmaß ca. 82 × 35 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 19.3,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 60,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": true,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 70,
"premiumScore": 72
},
{
"id": "182005004",
"articleNumber": "182005004",
"name": "JUNG E5R PT CX",
"badge": "Tiefeinstieg · CX",
"url": "/jung-e5r-cx-performance-line-kette-shimano-e5-gang-nabenschaltung-mit-ohne-ruecktritt_182005004_9168/",
"price": 4399,
"description": "Tiefeinstiegs-Faltrad mit Bosch CX und Shimano Nexus E5.",
"facts": [
"Bosch Performance Line CX · 85 Nm",
"Shimano Nexus E5 5-Gang · Gates-Riemen",
"500 Wh · bis ca. 140 km",
"ca. 23,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 23.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"camper",
"everyday",
"longtour",
"hills"
],
"compactScore": 48,
"premiumScore": 72
},
{
"id": "182005005",
"articleNumber": "182005005",
"name": "JUNG E5R F SM",
"badge": "Tiefeinstieg · Smart System",
"url": "/shimano-e5r-pp-f-sm-performance-line-75nm-smart-system_182005005_9221/",
"price": 4199,
"description": "Tiefeinstiegsmodell mit Bosch Performance Line Smart System und Shimano E5.",
"facts": [
"Bosch Performance Line · 75 Nm · Smart System",
"Shimano Nexus E5 5-Gang Di2",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 80 × 40 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 75,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": false,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": true,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 52,
"premiumScore": 74
},
{
"id": "182005010",
"articleNumber": "182005010",
"name": "E5K PP CX",
"badge": "CX · Preis-Leistung",
"url": "/e5k-f-cx-performance-line-cx-85nm-shimano-nexus-5-gang-freilauf_182005010_9484/",
"price": 3999,
"description": "Preisorientiertes Bosch-CX-Faltrad mit Shimano Nexus 5-Gang und Kettenantrieb.",
"facts": [
"Bosch Performance Line CX · 85 Nm",
"Shimano Nexus 5-Gang · Kette",
"400 Wh serienmäßig · 500 Wh optional · bis ca. 140 km laut Seite",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 110,
"maxRangeKm": 140,
"torqueNm": 85,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": false,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"everyday",
"longtour",
"hills"
],
"compactScore": 48,
"premiumScore": 66
},
{
"id": "182005001",
"articleNumber": "182005001",
"name": "E5K PP F/RT",
"badge": "5-Gang · Allrounder",
"url": "/mobilemaster-e5k-f-rt_182005001_9012/",
"price": 3499,
"description": "Klassisches Bosch-Performance-Line-Faltrad mit Shimano Nexus 5-Gang.",
"facts": [
"Bosch Performance Line · 65 Nm",
"Shimano Nexus E5 5-Gang · Freilauf/Rücktritt",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 65,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": false,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 48,
"premiumScore": 62
},
{
"id": "182008123",
"articleNumber": "182008123",
"name": "P8R RT Automatik (Di2)",
"badge": "8-Gang Di2 · Rücktritt",
"url": "/p8r-rt-automatik-performance-line-riemen-shimano-8-gang-di2-nabenschaltung-mit-ohne-ruecktritt_182008123_9121/",
"price": 4198,
"description": "Bosch-Faltrad mit Shimano Nexus 8-Gang Di2, Rücktritt und Gates-Riemen.",
"facts": [
"Bosch Performance Line · 65 Nm",
"Shimano Nexus 8-Gang Di2 · Gates CDN",
"500 Wh · bis ca. 140 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 140,
"maxRangeKm": 140,
"torqueNm": 65,
"shiftModes": [
"automatic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": true,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 48,
"premiumScore": 72
},
{
"id": "182008135",
"articleNumber": "182008135",
"name": "P8K F SM",
"badge": "Smart System · 8-Gang",
"url": "/e-klapprad/offroad-gt-bosch/mobilemaster-p8k-f-sm-bosch-performance-line-smart-system-75nm-kettenantrieb-shimano-8-gang-nabenschaltung-e-bike-klapprad-mit-bosch-mittelmotor_182008135_9800/",
"price": 3599,
"description": "Bosch-Smart-System-Allrounder mit Shimano Nexus 8-Gang und 545-Wh-Akku.",
"facts": [
"Bosch Performance Line · 75 Nm · Smart System",
"Shimano Nexus 8-Gang · Kette · Riemen optional",
"545 Wh · bis ca. 150 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 150,
"maxRangeKm": 150,
"torqueNm": 75,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": true,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 48,
"premiumScore": 70
},
{
"id": "182008121",
"articleNumber": "182008121",
"name": "P8K F/RT",
"badge": "8-Gang · Preis-Leistung",
"url": "/p8k-bosch-performance-line-freilauf-ruecktritt-mit-kettanantrieb_182008121_9093/",
"price": 2699,
"description": "Preisgünstiges Bosch-Faltrad mit Shimano Nexus 8-Gang und Freilauf oder Rücktritt.",
"facts": [
"Bosch Performance Line · 65 Nm",
"Shimano Nexus 8-Gang · Kette",
"400/500 Wh · bis ca. 110 km",
"ca. 21,9 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": true,
"midMotor": true,
"speed45": false,
"weightKg": 21.9,
"rangeKm": 110,
"maxRangeKm": 110,
"torqueNm": 65,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": false,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday"
],
"compactScore": 48,
"premiumScore": 58
},
{
"id": "1900000836",
"articleNumber": "1900000836",
"name": "Offroad SUV DualPower bis 1134 Wh",
"badge": "Bis 280 km · DualBattery",
"url": "/mobilemaster-offroad-suv-dualbattery-bis-1134-wh-cm-8g-bafang-mittelmotor-mit-max-80nm-zul-gesamtgewicht-160-kg-bis-zu-280-km_1900000836_9477/",
"price": 4899,
"description": "Reichweiten-Spezialist mit Bafang M400, Doppelakku und Shimano Nexus 8-Gang.",
"facts": [
"Bafang M400 Mittelmotor · 80 Nm",
"Shimano Nexus 8-Gang · Gates-Riemen",
"1008/1134 Wh DualBattery · bis ca. 280 km",
"ca. 24,6 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": false,
"midMotor": true,
"speed45": false,
"weightKg": 24.6,
"rangeKm": 280,
"maxRangeKm": 280,
"torqueNm": 80,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"camper",
"everyday",
"longtour",
"hills"
],
"compactScore": 46,
"premiumScore": 72
},
{
"id": "1820081012",
"articleNumber": "1820081012",
"name": "Offroad SUV DualPower 1000 Wh PT 8G",
"badge": "Bis 220 km · DualBattery",
"url": "/offroad-cm-8g/mobilemaster-offroad-plus-dualbattery-ueber-1000wh-cm-8g-mittelmotor-mit-max-80nm_1820081012_8997/",
"price": 4399,
"description": "Bafang-Offroad-Faltrad mit 1008-Wh-Doppelakku für sehr lange Touren.",
"facts": [
"Bafang M400 Mittelmotor · 80 Nm",
"Shimano 8-Gang Nabenschaltung · Kette/Riemen",
"1008 Wh DualBattery · bis ca. 220 km",
"ca. 24,6 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": false,
"midMotor": true,
"speed45": false,
"weightKg": 24.6,
"rangeKm": 220,
"maxRangeKm": 220,
"torqueNm": 80,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"camper",
"everyday",
"longtour",
"hills"
],
"compactScore": 46,
"premiumScore": 68
},
{
"id": "182008001",
"articleNumber": "182008001",
"name": "Offroad CM 8G Riemen",
"badge": "Bafang · Riemen",
"url": "/germanxia-elektrofahrrad-20-zoll-8gang-shimano-nabenschaltung_182008001_7653/",
"price": 3498,
"description": "Bafang-Mittelmotor-Faltrad mit Shimano 8-Gang und wartungsarmem Gates-Riemen.",
"facts": [
"Bafang M400 Mittelmotor · 80 Nm",
"Shimano 8-Gang Nabenschaltung · Gates-Riemen",
"468 Wh · bis ca. 100 km",
"ca. 21 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": false,
"midMotor": true,
"speed45": false,
"weightKg": 21.0,
"rangeKm": 100,
"maxRangeKm": 100,
"torqueNm": 80,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"hills"
],
"compactScore": 48,
"premiumScore": 60
},
{
"id": "1820081011",
"articleNumber": "1820081011",
"name": "Offroad SUV SinglePower PT 8G",
"badge": "Bafang · 80 Nm",
"url": "/offroad-plus-intube-single-battery-cm-8g-mittelmotor-mit-max-80nm_1820081011_8992/",
"price": 3299,
"description": "Kräftiges Bafang-SUV-Faltrad mit InTube-Akku; Doppelakku ist optional.",
"facts": [
"Bafang M400 Mittelmotor · 80 Nm",
"Shimano 8-Gang Nabenschaltung · Kette/Riemen",
"504 Wh · ca. 100 km · DualBattery optional",
"ca. 24,6 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": false,
"midMotor": true,
"speed45": false,
"weightKg": 24.6,
"rangeKm": 100,
"maxRangeKm": 220,
"torqueNm": 80,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"camper",
"everyday",
"longtour",
"hills"
],
"compactScore": 46,
"premiumScore": 60
},
{
"id": "182008101",
"articleNumber": "182008101",
"name": "Offroad CM 8G Kette",
"badge": "Bafang · Preis-Leistung",
"url": "/elektrofahrrad/premium-germanxia-mobilmaster-cm-8g-nabenschaltung-mit-drehmomentsensor_182008101_3050/",
"price": 2699,
"description": "Preisorientiertes Bafang-Mittelmotor-Faltrad mit Shimano 8-Gang und Drehmomentsensor.",
"facts": [
"Bafang M400 Mittelmotor · 80 Nm",
"Shimano 8-Gang Nabenschaltung · Kette",
"500 Wh · bis ca. 100 km",
"ca. 21,6 kg ohne Akku · Faltmaß ca. 82 × 41 × 92 cm"
],
"bosch": false,
"midMotor": true,
"speed45": false,
"weightKg": 21.6,
"rangeKm": 100,
"maxRangeKm": 100,
"torqueNm": 80,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": false,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"hills"
],
"compactScore": 48,
"premiumScore": 54
},
{
"id": "182008000",
"articleNumber": "182008000",
"name": "Light CF 3G V18",
"badge": "Leicht · 3-Gang",
"url": "/e-faltrad-3-gang-shimano-nabenschaltung-mit-oder-ohne-ruecktrittbremsen_182008000_3237/",
"price": 2199,
"description": "Leichtes E-Faltrad mit Shimano Nexus 3-Gang für Alltag, Reise und Wohnmobil.",
"facts": [
"xGerman Frontmotor · 45 Nm",
"Shimano Nexus 3-Gang · Riemen optional",
"374 Wh · bis ca. 90 km",
"ca. 18 kg ohne Akku · Faltmaß ca. 85 × 40 × 74 cm"
],
"bosch": false,
"midMotor": false,
"speed45": false,
"weightKg": 18.0,
"rangeKm": 90,
"maxRangeKm": 90,
"torqueNm": 45,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday"
],
"compactScore": 80,
"premiumScore": 48
},
{
"id": "1900000953",
"articleNumber": "1900000953",
"name": "Light CF 3G V16",
"badge": "Ca. 16 kg · Tiefeinstieg",
"url": "/e-klapprad/light-cf/mobilemaster-light-cf-3g-ultraleicht-e-faltrad-16kg-27cm-tiefeinstieg_1900000953_9805/",
"price": 2099,
"description": "Sehr leichtes Tiefeinstiegs-Faltrad mit 16-Zoll-Rädern und Shimano Nexus 3-Gang.",
"facts": [
"xGerman Frontmotor · 45 Nm",
"Shimano Nexus 3-Gang · Gates optional",
"374 Wh · bis ca. 90 km",
"ca. 16 kg ohne Akku · Faltmaß ca. 77 × 39 × 77 cm"
],
"bosch": false,
"midMotor": false,
"speed45": false,
"weightKg": 16.0,
"rangeKm": 90,
"maxRangeKm": 90,
"torqueNm": 45,
"shiftModes": [
"classic",
"simple"
],
"beltDrive": true,
"hubShift": true,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday"
],
"compactScore": 94,
"premiumScore": 48
},
{
"id": "181607126",
"articleNumber": "181607126",
"name": "MINI-TOURING 7G 16 Zoll",
"badge": "16 Zoll · Kompakt",
"url": "/e-klapprad/klappfahrrad-mit-kettenschaltung/16-zoll-touring-7g-e-faltrad_181607126_8686/",
"price": 2599,
"description": "Kompaktes 16-Zoll-E-Faltrad mit 7-Gang-Kettenschaltung und hoher Reichweite.",
"facts": [
"xGerman Hinterradmotor · 50 Nm",
"Shimano Altus 7-Gang Kettenschaltung",
"470 Wh · bis ca. 130 km",
"ca. 17 kg ohne Akku · Faltmaß ca. 73 × 40 × 71 cm"
],
"bosch": false,
"midMotor": false,
"speed45": false,
"weightKg": 17.0,
"rangeKm": 130,
"maxRangeKm": 130,
"torqueNm": 50,
"shiftModes": [
"classic"
],
"beltDrive": false,
"hubShift": false,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 96,
"premiumScore": 52
},
{
"id": "181601016",
"articleNumber": "181601016",
"name": "Mobilemaster eFlow3.16",
"badge": "Extrem kompakt",
"url": "/e-klapprad/eflow3-16-mobilemaster-e-faltrad-16-zoll-mit-patentierter-falttechnik-nur-15-kg_181601016_9917/",
"price": 1369,
"description": "Extrem kompaktes 16-Zoll-E-Faltrad ohne klassische Gangschaltung für Pendeln und kleine Stauräume.",
"facts": [
"xGerman Hinterradmotor · 50 Nm",
"Keine klassische Gangschaltung",
"336 Wh · bis ca. 100 km laut Detailseite",
"15 kg ohne Akku · Faltmaß ca. 61 × 29,5/45 × 59 cm"
],
"bosch": false,
"midMotor": false,
"speed45": false,
"weightKg": 15.0,
"rangeKm": 100,
"maxRangeKm": 100,
"torqueNm": 50,
"shiftModes": [
"simple"
],
"beltDrive": false,
"hubShift": false,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday"
],
"compactScore": 100,
"premiumScore": 36
},
{
"id": "182007116",
"articleNumber": "182007116",
"name": "TOURING CH 7G Alu-Gussräder + Gasgriff",
"badge": "Touring · Gasgriff",
"url": "/touring-ch-7g-shimano-mit-alu-gussraedern_182007116_9305/",
"price": 2799,
"description": "Touring-Faltrad mit 7-Gang-Kettenschaltung, Alu-Gussrädern und Gasgriff.",
"facts": [
"xGerman Hinterradmotor · 50 Nm",
"Shimano 7-Gang Kettenschaltung",
"562 Wh · bis ca. 110 km",
"ca. 21 kg ohne Akku · Faltmaß ca. 85 × 43 × 75 cm"
],
"bosch": false,
"midMotor": false,
"speed45": false,
"weightKg": 21.0,
"rangeKm": 110,
"maxRangeKm": 110,
"torqueNm": 50,
"shiftModes": [
"classic"
],
"beltDrive": false,
"hubShift": false,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 58,
"premiumScore": 46
},
{
"id": "182009318",
"articleNumber": "182009318",
"name": "TOURING PLUS 9G",
"badge": "9-Gang · Touren",
"url": "/germanxia-elektrofaltrad-20-zoll-9gang-kettenschaltung-tiefeinstieg_182009318_3231/",
"price": 2299,
"description": "Touring-Allrounder mit Shimano Sora 9-Gang und Drehmomentsensor für Mittel- und Langstrecke.",
"facts": [
"xGerman Hinterradmotor · 50 Nm · Drehmomentsensor",
"Shimano Sora 9-Gang Kettenschaltung",
"562 Wh · Kategorie nennt bis ca. 120 km",
"ca. 21 kg ohne Akku · Faltmaß ca. 85 × 43 × 75 cm"
],
"bosch": false,
"midMotor": false,
"speed45": false,
"weightKg": 21.0,
"rangeKm": 120,
"maxRangeKm": 120,
"torqueNm": 50,
"shiftModes": [
"classic"
],
"beltDrive": false,
"hubShift": false,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"everyday",
"longtour"
],
"compactScore": 58,
"premiumScore": 52
},
{
"id": "182007316",
"articleNumber": "182007316",
"name": "TOURING CH 7G",
"badge": "Touring · Preis-Leistung",
"url": "/mobilemaster-touring-ch-7g-mit-gasgriff_182007316_8845/",
"price": 1999,
"description": "Preisorientiertes Touring-Faltrad mit 7-Gang-Kettenschaltung für Alltag und Mittelstrecke.",
"facts": [
"xGerman Hinterradmotor · 50 Nm",
"Shimano Altus 7-Gang Kettenschaltung",
"562 Wh · Kategorie nennt bis ca. 110 km",
"ca. 21 kg ohne Akku · Faltmaß ca. 85 × 43 × 75 cm"
],
"bosch": false,
"midMotor": false,
"speed45": false,
"weightKg": 21.0,
"rangeKm": 110,
"maxRangeKm": 110,
"torqueNm": 50,
"shiftModes": [
"classic"
],
"beltDrive": false,
"hubShift": false,
"automatic": false,
"stepless": false,
"smartSystem": false,
"uses": [
"commute",
"camper",
"everyday",
"longtour"
],
"compactScore": 58,
"premiumScore": 44
}
];
/* Artikelnummern-Sicherheitscheck – ohne sichtbare Änderung */
(function validateUniqueArticleNumbers() {
var seen = {};
products.forEach(
function (product) {
if (seen[product.articleNumber]) {
if (window.console && console.error) {
console.error(
"Doppelte GermanXia Artikelnummer im Produktfinder:",
product.articleNumber
);
}
}
seen[product.articleNumber] = true;
}
);
})();
/* =========================================
FRAGEN
========================================= */
var questions = [
{
id: "usage",
title: "Wofür möchten Sie Ihr E-Faltrad hauptsächlich nutzen?",
subtitle: "Wählen Sie den wichtigsten Einsatzzweck.",
options: [
{
value: "commute",
title: "Pendeln & ÖPNV",
text: "Arbeitsweg, Bahn und kurze Wege"
},
{
value: "camper",
title: "Wohnmobil & Urlaub",
text: "Kompakt im Camper oder Auto verstauen"
},
{
value: "everyday",
title: "Alltag & Stadt",
text: "Regelmäßige Fahrten und Einkäufe"
},
{
value: "longtour",
title: "Lange Touren",
text: "Viele Kilometer und längere Ausfahrten"
},
{
value: "hills",
title: "Berge & Steigungen",
text: "Leistungsstarker Antrieb ist wichtig"
},
{
value: "speed45",
title: "Bis 45 km/h",
text: "Ich suche ausdrücklich ein S-Pedelec"
}
]
},
{
id: "carry",
title: "Müssen Sie das E-Faltrad regelmäßig tragen oder anheben?",
subtitle: "Zum Beispiel für Bahn, Treppen, Kofferraum oder Wohnmobil.",
options: [
{
value: "often",
title: "Ja, regelmäßig",
text: "Geringes Gewicht ist sehr wichtig"
},
{
value: "sometimes",
title: "Manchmal",
text: "Zum Beispiel für Auto oder Wohnmobil"
},
{
value: "no",
title: "Eher nicht",
text: "Gewicht ist für mich zweitrangig"
}
]
},
{
id: "range",
title: "Welche Reichweite benötigen Sie typischerweise?",
subtitle: "Die tatsächliche Reichweite hängt von Fahrweise und Bedingungen ab.",
options: [
{
value: "short",
title: "Bis ca. 50 km",
text: "Vor allem kurze Strecken"
},
{
value: "medium",
title: "Ca. 50–100 km",
text: "Alltag und normale Touren"
},
{
value: "long",
title: "100 km und mehr",
text: "Längere Touren"
},
{
value: "max",
title: "Maximale Reichweite",
text: "So weit wie möglich fahren"
}
]
},
{
id: "motor",
title: "Wie wichtig ist Ihnen ein Mittelmotor?",
subtitle: "Sie können Bosch ausdrücklich bevorzugen oder offen bleiben.",
options: [
{
value: "bosch",
title: "Bosch Mittelmotor",
text: "Ich möchte ausdrücklich einen Bosch-Antrieb"
},
{
value: "mid",
title: "Mittelmotor ist wichtig",
text: "Bosch oder Bafang kommen infrage"
},
{
value: "flexible",
title: "Ich bin offen",
text: "Der Einsatzzweck ist wichtiger als der Motor"
}
]
},
{
id: "shift",
title: "Wie möchten Sie schalten?",
subtitle: "Wir übersetzen Ihre Auswahl in passende Technik.",
options: [
{
value: "simple",
title: "Möglichst einfach",
text: "Wenig Bedienaufwand"
},
{
value: "classic",
title: "Klassisch",
text: "Ich schalte meine Gänge selbst"
},
{
value: "stepless",
title: "Stufenlos",
text: "Keine festen Gangstufen"
},
{
value: "automatic",
title: "Vollautomatisch",
text: "Das Fahrrad soll möglichst viel übernehmen"
},
{
value: "premium",
title: "Premium-Schaltung",
text: "Hochwertige Technik und große Bandbreite"
},
{
value: "flexible",
title: "Weiß ich noch nicht",
text: "Bitte passend zum Einsatz empfehlen"
}
]
},
{
id: "priority",
title: "Was ist Ihnen am wichtigsten?",
subtitle: "Damit bestimmen wir die endgültige Empfehlung.",
options: [
{
value: "light",
title: "Möglichst leicht",
text: "Einfach tragen und verstauen"
},
{
value: "compact",
title: "Möglichst kompakt",
text: "Kleines Faltmaß und einfache Mitnahme"
},
{
value: "range",
title: "Große Reichweite",
text: "Viele Kilometer ohne Nachladen"
},
{
value: "value",
title: "Preis-Leistung",
text: "Viel Fahrrad fürs Geld"
},
{
value: "premium",
title: "Premium-Komponenten",
text: "Fahrgefühl und Ausstattung stehen im Vordergrund"
},
{
value: "maintenance",
title: "Wartungsarm & komfortabel",
text: "Komfortable Technik für häufige Nutzung"
}
]
}
];
var answers = {};
var step = -1;
/* =========================================
HAUPTCONTAINER
========================================= */
root.style.cssText =
"max-width:1100px;" +
"margin:35px auto;" +
"padding:0 15px;" +
"box-sizing:border-box;" +
"font-family:Arial,Helvetica,sans-serif;";
var card = append(
root,
createElement(
"div",
"background:#ffffff;" +
"border:1px solid #dfe5eb;" +
"border-radius:14px;" +
"box-shadow:0 4px 18px rgba(25,45,65,0.07);" +
"overflow:hidden;"
)
);
var header = append(
card,
createElement(
"div",
"padding:28px 28px 22px;" +
"text-align:center;" +
"border-bottom:1px solid #e8edf2;"
)
);
append(
header,
createElement(
"div",
"color:#075eae;" +
"font-size:12px;" +
"font-weight:700;" +
"letter-spacing:0.08em;" +
"text-transform:uppercase;" +
"margin-bottom:7px;",
"GermanXia E-Faltrad-Beratung"
)
);
append(
header,
createElement(
"div",
"color:#252a30;" +
"font-size:28px;" +
"line-height:1.2;" +
"font-weight:700;" +
"margin-bottom:9px;",
"Welches E-Faltrad passt zu Ihnen?"
)
);
append(
header,
createElement(
"div",
"max-width:680px;" +
"margin:0 auto;" +
"color:#65717d;" +
"font-size:15px;" +
"line-height:1.55;",
"Beantworten Sie 6 kurze Fragen. Wir vergleichen Ihre Anforderungen mit unseren Mobilemaster-Modellen."
)
);
var progressArea = append(
card,
createElement(
"div",
"padding:20px 28px 0;"
)
);
var progressBackground = append(
progressArea,
createElement(
"div",
"height:6px;" +
"background:#e8edf2;" +
"border-radius:10px;" +
"overflow:hidden;"
)
);
var progressBar = append(
progressBackground,
createElement(
"div",
"width:0%;" +
"height:100%;" +
"background:#075eae;" +
"border-radius:10px;" +
"transition:width .25s ease;"
)
);
var progressText = append(
progressArea,
createElement(
"div",
"margin-top:7px;" +
"text-align:right;" +
"color:#7a848e;" +
"font-size:12px;",
"Start"
)
);
var content = append(
card,
createElement(
"div",
"padding:24px 28px 30px;"
)
);
/* =========================================
STARTSEITE
========================================= */
function renderStart() {
clear(content);
progressBar.style.width = "0%";
progressText.textContent = "Start";
var center = append(
content,
createElement(
"div",
"text-align:center;padding:8px 0;"
)
);
var benefits = append(
center,
createElement(
"div",
"display:grid;" +
"grid-template-columns:repeat(auto-fit,minmax(170px,1fr));" +
"gap:10px;" +
"max-width:760px;" +
"margin:0 auto 24px;"
)
);
addBenefit(
benefits,
"6 kurze Fragen",
"In etwa 60 Sekunden"
);
addBenefit(
benefits,
"Ohne Anmeldung",
"Ergebnis sofort sehen"
);
addBenefit(
benefits,
"Persönliche Auswahl",
"Passend zu Ihrem Einsatz"
);
var startButton = append(
center,
createElement(
"button",
"border:0;" +
"border-radius:7px;" +
"background:#075eae;" +
"color:#ffffff;" +
"padding:14px 30px;" +
"font-size:15px;" +
"font-weight:700;" +
"cursor:pointer;" +
"min-width:220px;",
"Produktfinder starten"
)
);
startButton.type = "button";
startButton.addEventListener(
"click",
function () {
answers = {};
step = 0;
track(
"gx_product_finder_start"
);
renderQuestion();
}
);
}
function addBenefit(parent, title, text) {
var box = append(
parent,
createElement(
"div",
"padding:14px;" +
"background:#f7f9fb;" +
"border:1px solid #e3e8ed;" +
"border-radius:8px;"
)
);
append(
box,
createElement(
"div",
"font-weight:700;" +
"color:#252a30;" +
"font-size:14px;",
title
)
);
append(
box,
createElement(
"div",
"margin-top:3px;" +
"color:#76818c;" +
"font-size:12px;",
text
)
);
}
/* =========================================
FRAGEN
========================================= */
function renderQuestion() {
clear(content);
var question = questions[step];
var percentage =
((step + 1) / questions.length) * 100;
progressBar.style.width =
percentage + "%";
progressText.textContent =
"Frage " +
(step + 1) +
" von " +
questions.length;
var wrapper = append(
content,
createElement(
"div",
"max-width:850px;margin:0 auto;"
)
);
var questionHeader = append(
wrapper,
createElement(
"div",
"text-align:center;margin-bottom:22px;"
)
);
append(
questionHeader,
createElement(
"div",
"font-size:22px;" +
"font-weight:700;" +
"color:#252a30;" +
"line-height:1.3;",
question.title
)
);
append(
questionHeader,
createElement(
"div",
"margin-top:7px;" +
"color:#6e7984;" +
"font-size:14px;" +
"line-height:1.45;",
question.subtitle
)
);
var grid = append(
wrapper,
createElement(
"div",
"display:grid;" +
"grid-template-columns:repeat(auto-fit,minmax(220px,1fr));" +
"gap:11px;"
)
);
question.options.forEach(
function (option) {
var selected =
answers[question.id] === option.value;
var optionButton = append(
grid,
createElement(
"button",
"text-align:left;" +
"padding:16px;" +
"border-radius:9px;" +
"border:" +
(selected
? "2px solid #075eae;"
: "1px solid #dce3e9;") +
"background:" +
(selected
? "#eef5fc;"
: "#ffffff;") +
"cursor:pointer;" +
"min-height:92px;"
)
);
optionButton.type = "button";
append(
optionButton,
createElement(
"span",
"display:block;" +
"font-size:15px;" +
"font-weight:700;" +
"color:#252a30;" +
"margin-bottom:5px;",
option.title
)
);
append(
optionButton,
createElement(
"span",
"display:block;" +
"font-size:12.5px;" +
"line-height:1.4;" +
"font-weight:400;" +
"color:#73808b;",
option.text
)
);
optionButton.addEventListener(
"click",
function () {
answers[question.id] =
option.value;
track(
"gx_product_finder_answer",
{
question: question.id,
answer: option.value
}
);
if (
step <
questions.length - 1
) {
step =
step + 1;
renderQuestion();
} else {
renderResults();
}
}
);
}
);
if (step > 0) {
var backArea = append(
wrapper,
createElement(
"div",
"margin-top:22px;"
)
);
var backButton = append(
backArea,
createElement(
"button",
"background:#ffffff;" +
"border:1px solid #cfd7df;" +
"color:#46515b;" +
"border-radius:6px;" +
"padding:10px 18px;" +
"font-size:13px;" +
"font-weight:600;" +
"cursor:pointer;",
"← Zurück"
)
);
backButton.type = "button";
backButton.addEventListener(
"click",
function () {
step =
step - 1;
renderQuestion();
}
);
}
}
/* =========================================
SCORING
========================================= */
function arrayHas(list, value) {
return (
Array.isArray(list) &&
list.indexOf(value) !== -1
);
}
function getEffectiveRange(product) {
return (
product.maxRangeKm ||
product.rangeKm ||
0
);
}
function getWeightScore(weight, mode) {
if (!weight) {
return 0;
}
if (mode === "often") {
if (weight <= 16) {
return 75;
}
if (weight <= 18) {
return 60;
}
if (weight <= 20) {
return 40;
}
if (weight <= 22) {
return 18;
}
return -35;
}
if (mode === "sometimes") {
if (weight <= 18) {
return 40;
}
if (weight <= 20) {
return 32;
}
if (weight <= 22) {
return 22;
}
if (weight <= 24) {
return 10;
}
return 0;
}
return 8;
}
function getRangeScore(product, mode) {
var range =
product.rangeKm ||
0;
if (mode === "max") {
range =
getEffectiveRange(product);
}
if (mode === "short") {
if (range >= 50) {
return 35;
}
return -35;
}
if (mode === "medium") {
if (range >= 100) {
return 50;
}
if (range >= 80) {
return 35;
}
if (range >= 50) {
return 15;
}
return -40;
}
if (mode === "long") {
if (range >= 140) {
return 65;
}
if (range >= 120) {
return 55;
}
if (range >= 100) {
return 32;
}
return -50;
}
if (mode === "max") {
if (range >= 250) {
return 105;
}
if (range >= 200) {
return 90;
}
if (range >= 150) {
return 65;
}
if (range >= 130) {
return 45;
}
if (range >= 100) {
return 22;
}
return 0;
}
return 0;
}
function getShiftScore(product, mode) {
if (mode === "flexible") {
return 12;
}
if (
arrayHas(
product.shiftModes,
mode
)
) {
return 70;
}
if (
mode === "simple" &&
product.hubShift
) {
return 30;
}
if (
mode === "premium" &&
product.premiumScore >= 80
) {
return 55;
}
if (
mode === "automatic" ||
mode === "stepless"
) {
return -55;
}
return -18;
}
function getPriorityScore(product, mode) {
var range =
getEffectiveRange(product);
if (mode === "light") {
return getWeightScore(
product.weightKg,
"often"
);
}
if (mode === "compact") {
return (
product.compactScore ||
0
) * 0.8;
}
if (mode === "range") {
if (range >= 250) {
return 95;
}
if (range >= 200) {
return 80;
}
if (range >= 150) {
return 62;
}
if (range >= 130) {
return 48;
}
if (range >= 100) {
return 28;
}
return 10;
}
if (mode === "value") {
if (!product.price) {
return 0;
}
return Math.max(
0,
Math.min(
85,
(8000 - product.price) / 65
)
);
}
if (mode === "premium") {
return (
product.premiumScore ||
0
) * 0.82;
}
if (mode === "maintenance") {
var maintenance = 0;
if (product.beltDrive) {
maintenance += 52;
}
if (product.hubShift) {
maintenance += 28;
}
if (product.automatic) {
maintenance += 12;
}
if (product.stepless) {
maintenance += 8;
}
return maintenance;
}
return 0;
}
function getProductScore(product) {
var score = 0;
/* Einsatzzweck */
if (
arrayHas(
product.uses,
answers.usage
)
) {
score += 62;
} else {
score += 5;
}
if (
answers.usage === "hills"
) {
if (product.torqueNm >= 85) {
score += 42;
} else if (product.torqueNm >= 75) {
score += 30;
} else if (product.torqueNm >= 65) {
score += 16;
} else {
score -= 20;
}
}
if (
answers.usage === "longtour"
) {
score +=
getRangeScore(
product,
"long"
) * 0.45;
}
if (
answers.usage === "camper"
) {
score +=
(product.compactScore || 0) *
0.28;
score +=
getWeightScore(
product.weightKg,
"sometimes"
) * 0.35;
}
/* Tragen */
score +=
getWeightScore(
product.weightKg,
answers.carry
);
/* Reichweite */
score +=
getRangeScore(
product,
answers.range
);
/* Motor */
if (
answers.motor === "bosch"
) {
if (product.bosch) {
score += 95;
} else {
score -= 260;
}
}
if (
answers.motor === "mid"
) {
if (product.midMotor) {
score += 65;
} else {
score -= 85;
}
}
/* Schaltung */
score +=
getShiftScore(
product,
answers.shift
);
/* Hauptpriorität */
score +=
getPriorityScore(
product,
answers.priority
);
/* S-Pedelec klar priorisieren, aber trotzdem 3 Modelle liefern */
if (
answers.usage === "speed45"
) {
if (product.speed45) {
score += 650;
} else {
score -= 220;
}
} else if (product.speed45) {
score -= 120;
}
return score;
}
/* =========================================
PRODUKTSPEZIFISCHE EINORDNUNG
========================================= */
function getRecommendationText(product) {
var reasons = [];
if (
answers.usage === "speed45"
) {
if (product.speed45) {
reasons.push(
"unterstützt als S-Pedelec bis 45 km/h"
);
} else {
return (
"25-km/h-Alternative: Dieses Modell erfüllt den Wunsch nach " +
"45-km/h-Unterstützung nicht, passt aber bei den übrigen " +
"gewählten Kriterien besonders gut."
);
}
} else if (
arrayHas(
product.uses,
answers.usage
)
) {
reasons.push(
"passt gut zu Ihrem gewählten Einsatzzweck"
);
}
if (
answers.motor === "bosch" &&
product.bosch
) {
reasons.push(
"hat den gewünschten Bosch-Mittelmotor"
);
} else if (
answers.motor === "mid" &&
product.midMotor
) {
reasons.push(
"setzt auf einen kräftigen Mittelmotor"
);
}
if (
answers.shift !== "flexible" &&
arrayHas(
product.shiftModes,
answers.shift
)
) {
if (answers.shift === "automatic") {
reasons.push("bietet eine automatische Schaltung");
}
if (answers.shift === "stepless") {
reasons.push("bietet stufenloses Schalten");
}
if (answers.shift === "premium") {
reasons.push("bietet eine besonders hochwertige Schaltung");
}
if (answers.shift === "classic") {
reasons.push("lässt sich klassisch selbst schalten");
}
if (answers.shift === "simple") {
reasons.push("ist auf einfache Bedienung ausgelegt");
}
}
if (
answers.priority === "light" &&
product.weightKg <= 19.5
) {
reasons.push(
"ist im Vergleich besonders leicht"
);
}
if (
answers.priority === "compact" &&
product.compactScore >= 80
) {
reasons.push(
"lässt sich besonders kompakt verstauen"
);
}
if (
answers.priority === "range" &&
getEffectiveRange(product) >= 140
) {
reasons.push(
"bietet eine hohe Reichweitenreserve"
);
}
if (
answers.priority === "maintenance" &&
product.beltDrive
) {
reasons.push(
"nutzt einen wartungsarmen Riemenantrieb"
);
}
if (
answers.priority === "premium" &&
product.premiumScore >= 80
) {
reasons.push(
"setzt auf hochwertige Premium-Komponenten"
);
}
if (
answers.priority === "value"
) {
reasons.push(
"liegt im Vergleich in einem attraktiven Preis-/Ausstattungsbereich"
);
}
if (!reasons.length) {
reasons.push(
"erzielt über Ihre sechs Antworten insgesamt die höchste Übereinstimmung"
);
}
return (
"Passt besonders, weil das Modell " +
reasons.slice(0, 3).join(", ") +
"."
);
}
/* =========================================
ERGEBNIS
========================================= */
function renderResults() {
clear(content);
progressBar.style.width =
"100%";
progressText.textContent =
"Ihre Empfehlung";
var ranked =
products
.map(
function (product) {
return {
product: product,
score:
getProductScore(
product
)
};
}
)
.sort(
function (a, b) {
if (b.score !== a.score) {
return b.score - a.score;
}
return (
(a.product.price || 999999) -
(b.product.price || 999999)
);
}
);
/*
* HARTE FILTERREGEL FÜR FRAGE 5:
* Wenn "Vollautomatisch" gewählt wurde, dürfen ausschließlich
* Modelle mit tatsächlich hinterlegter Vollautomatik empfohlen werden.
* Dazu zählen Enviolo AutomatiQ sowie ausdrücklich als automatische
* Shimano-Di2-Varianten gepflegte Modelle.
*/
if (
answers.shift === "automatic"
) {
ranked =
ranked.filter(
function (entry) {
return (
entry.product.automatic === true &&
arrayHas(
entry.product.shiftModes,
"automatic"
)
);
}
);
}
var results =
ranked.slice(0, 3);
var wrapper = append(
content,
createElement(
"div",
"max-width:900px;margin:0 auto;"
)
);
var titleArea = append(
wrapper,
createElement(
"div",
"text-align:center;" +
"margin-bottom:24px;"
)
);
append(
titleArea,
createElement(
"div",
"color:#075eae;" +
"font-size:12px;" +
"font-weight:700;" +
"text-transform:uppercase;" +
"letter-spacing:.07em;" +
"margin-bottom:6px;",
"Ihre persönliche Auswahl"
)
);
append(
titleArea,
createElement(
"div",
"font-size:25px;" +
"font-weight:700;" +
"color:#252a30;" +
"line-height:1.25;",
"Diese E-Falträder passen zu Ihren Anforderungen"
)
);
results.forEach(
function (entry, index) {
renderProductCard(
wrapper,
entry.product,
index
);
}
);
renderAdviceBox(
wrapper,
results
);
var restartArea = append(
wrapper,
createElement(
"div",
"text-align:center;" +
"margin-top:18px;"
)
);
var restart = append(
restartArea,
createElement(
"button",
"background:none;" +
"border:0;" +
"color:#075eae;" +
"font-size:13px;" +
"font-weight:600;" +
"cursor:pointer;" +
"text-decoration:underline;",
"Finder neu starten"
)
);
restart.type =
"button";
restart.addEventListener(
"click",
function () {
answers = {};
step = -1;
renderStart();
root.scrollIntoView(
{
behavior: "smooth",
block: "start"
}
);
}
);
track(
"gx_product_finder_complete",
{
usage: answers.usage,
carry: answers.carry,
range: answers.range,
motor: answers.motor,
shift: answers.shift,
priority: answers.priority,
recommendation:
results.length
? results[0].product.id
: ""
}
);
root.scrollIntoView(
{
behavior: "smooth",
block: "start"
}
);
}
function renderProductCard(
parent,
product,
index
) {
var cardCss =
"margin-bottom:14px;" +
"padding:19px;" +
"border-radius:11px;" +
"background:" +
(index === 0
? "#f8fbfe;"
: "#ffffff;") +
"border:" +
(index === 0
? "2px solid #075eae;"
: "1px solid #dce3e9;");
var productCard = append(
parent,
createElement(
"div",
cardCss
)
);
var label =
"Weitere passende Option";
if (index === 0) {
label =
"Unsere Empfehlung";
}
if (index === 1) {
label =
"Sehr gute Alternative";
}
append(
productCard,
createElement(
"div",
"color:#075eae;" +
"font-size:11px;" +
"font-weight:700;" +
"text-transform:uppercase;" +
"letter-spacing:.06em;" +
"margin-bottom:5px;",
label
)
);
var imageBox = append(
productCard,
createElement(
"div",
"margin:10px 0 14px;" +
"height:230px;" +
"display:flex;" +
"align-items:center;" +
"justify-content:center;" +
"overflow:hidden;" +
"background:#ffffff;" +
"border:1px solid #edf0f3;" +
"border-radius:8px;"
)
);
var productImage = append(
imageBox,
createElement(
"img",
"display:block;" +
"width:100%;" +
"height:100%;" +
"object-fit:contain;" +
"object-position:center;"
)
);
productImage.alt = product.name;
productImage.loading = "lazy";
productImage.decoding = "async";
loadFirstProductImage(
product,
productImage,
imageBox
);
append(
productCard,
createElement(
"div",
"font-size:20px;" +
"font-weight:700;" +
"color:#252a30;",
product.name
)
);
append(
productCard,
createElement(
"span",
"display:inline-block;" +
"margin-top:6px;" +
"padding:5px 9px;" +
"background:#eaf3fb;" +
"border-radius:20px;" +
"color:#075eae;" +
"font-size:11px;" +
"font-weight:700;",
product.badge
)
);
append(
productCard,
createElement(
"div",
"margin-top:12px;" +
"color:#5f6a74;" +
"font-size:14px;" +
"line-height:1.5;",
product.description
)
);
var factsGrid = append(
productCard,
createElement(
"div",
"display:grid;" +
"grid-template-columns:repeat(auto-fit,minmax(170px,1fr));" +
"gap:7px;" +
"margin-top:14px;"
)
);
product.facts.forEach(
function (fact) {
var factLine = append(
factsGrid,
createElement(
"div",
"font-size:12.5px;" +
"line-height:1.4;" +
"color:#4f5a64;"
)
);
append(
factLine,
createElement(
"span",
"color:#075eae;" +
"font-weight:700;",
"✓ "
)
);
append(
factLine,
document.createTextNode(
fact
)
);
}
);
var recommendationBox =
append(
productCard,
createElement(
"div",
"margin-top:14px;" +
"padding:11px 13px;" +
"background:#f5f7f9;" +
"border-radius:7px;" +
"font-size:13px;" +
"line-height:1.45;" +
"color:#4e5963;"
)
);
append(
recommendationBox,
createElement(
"strong",
"color:#252a30;",
"Unsere Einordnung: "
)
);
append(
recommendationBox,
document.createTextNode(
getRecommendationText(
product
)
)
);
var link =
append(
productCard,
createElement(
"a",
"display:inline-block;" +
"margin-top:15px;" +
"padding:11px 18px;" +
"background:#075eae;" +
"border-radius:6px;" +
"color:#ffffff;" +
"font-size:13px;" +
"font-weight:700;" +
"text-decoration:none;",
"Produkt ansehen"
)
);
link.href =
product.url;
link.addEventListener(
"click",
function () {
track(
"gx_product_finder_result_click",
{
product:
product.id,
article_number:
product.articleNumber
}
);
}
);
}
function renderAdviceBox(
parent,
results
) {
var adviceBox = append(
parent,
createElement(
"div",
"margin-top:22px;" +
"padding:20px;" +
"background:#f4f7f9;" +
"border-radius:10px;" +
"text-align:center;"
)
);
append(
adviceBox,
createElement(
"div",
"font-size:18px;" +
"font-weight:700;" +
"color:#252a30;" +
"margin-bottom:5px;",
"Noch unsicher?"
)
);
append(
adviceBox,
createElement(
"div",
"font-size:13.5px;" +
"line-height:1.45;" +
"color:#64707b;" +
"margin-bottom:13px;",
"Unsere Beratung hilft Ihnen bei Motor, Schaltung, Reichweite und Modellwahl."
)
);
var adviceLink = append(
adviceBox,
createElement(
"a",
"display:inline-block;" +
"padding:12px 20px;" +
"background:#075eae;" +
"border-radius:6px;" +
"color:#ffffff;" +
"font-size:13px;" +
"font-weight:700;" +
"text-decoration:none;",
"Persönlich beraten lassen"
)
);
adviceLink.href =
"/service/online-beratung/";
adviceLink.addEventListener(
"click",
function () {
track(
"gx_product_finder_advice_click",
{
recommendation:
results.length
? results[0].product.id
: ""
}
);
}
);
}
renderStart();
})();