Hier der vollständige Code. Geändert ist nur resolveItemUrl(), dazu kommt die neue Hilfsfunktion languagePrefix(). Die Sprache wird aus dem URL-Präfix der Druckseite übernommen, z. B. /es/. html
(function () { function textOf(el) { return (el && el.textContent || "").replace(/\s+/g, " ").trim(); } // Sprachpräfix der aktuellen Seite ermitteln, z. B. "/es" bei /es/druckseite?item=123 // Standardsprache (ohne Präfix) liefert "". function languagePrefix() { var m = window.location.pathname.match(/^\/([a-z]{2})(?=\/|$)/i); return m ? "/" + m[1].toLowerCase() : ""; } function resolveItemUrl() { var match = window.location.search.match(/[?&]item=(\d+)/); if (!match) { return null; } return window.location.origin + languagePrefix() + "/a-" + match[1] + "/"; } function loadAccordion() { var url = resolveItemUrl(); if (!url) { return Promise.resolve(null); } return new Promise(function (resolve, reject) { var xhr = new XMLHttpRequest(); xhr.open("GET", url, true); xhr.onload = function () { if (xhr.status < 200 || xhr.status >= 400) { reject(new Error("item page " + xhr.status)); return; } var doc = new DOMParser().parseFromString(xhr.responseText, "text/html"); resolve(doc.querySelector(".phywe-item-accordion")); }; xhr.onerror = function () { reject(new Error("item page network error")); }; xhr.send(); }); } function parseItemBlocks(scope, withQuantity) { if (!scope) { return []; } var rows = scope.querySelectorAll(".itemslist .row.itemblocks"); var items = []; for (var i = 0; i < rows.length; i++) { var cols = rows[i].children; if (!cols.length) { continue; } var nameLink = cols[0].querySelector("a"); var numberLink = cols[1] ? cols[1].querySelector("a") : null; var item = { name: textOf(nameLink || cols[0]), mappedTo: textOf(numberLink) }; if (withQuantity && cols[2]) { var qty = parseInt(textOf(cols[2]).replace(/[^\d]/g, ""), 10); item.quantity = isNaN(qty) ? textOf(cols[2]) : String(qty); } if (item.name) { items.push(item); } } return items; } function fillTable(tableId, items, withQuantity) { var table = document.getElementById(tableId); if (!table || !items.length) { return; } var tbody = table.querySelector("tbody"); for (var i = 0; i < items.length; i++) { var tr = document.createElement("tr"); var nameTd = document.createElement("td"); nameTd.style.width = "80%"; nameTd.textContent = items[i].name; tr.appendChild(nameTd); var numberTd = document.createElement("td"); numberTd.textContent = items[i].mappedTo; tr.appendChild(numberTd); if (withQuantity) { var qtyTd = document.createElement("td"); qtyTd.textContent = items[i].quantity || ""; tr.appendChild(qtyTd); } tbody.appendChild(tr); } var wrapper = table.parentElement; while (wrapper && wrapper.className.indexOf("printtablediv") === -1) { wrapper = wrapper.parentElement; } if (wrapper) { wrapper.style.display = ""; } } function stepTitle(stepEl) { if (!stepEl) { return ""; } var titleEl = stepEl.querySelector(".card-header button div") || stepEl.querySelector(".card-header button"); return textOf(titleEl); } function setHeadline(tableId, title) { var headline = document.querySelector("#" + tableId + " .printtableheadline"); if (headline && title) { headline.textContent = title; } } function parseMedia(scope) { if (!scope) { return []; } var rows = scope.querySelectorAll(".itemslist .row.itemblocks"); var items = []; for (var i = 0; i < rows.length; i++) { var cols = rows[i].children; if (!cols.length) { continue; } var nameLink = cols[0].querySelector("a"); var fileLink = cols[1] ? cols[1].querySelector("a") : null; var item = { name: textOf(nameLink || cols[0]), mappedTo: textOf(fileLink || cols[1]), quantity: cols[2] ? textOf(cols[2]) : "" }; if (item.name) { items.push(item); } } return items; } function fillFromAccordion(accordion) { if (!accordion) { return; } var versucheStep = accordion.querySelector('[data-step="versuche"]'); var versuche = parseItemBlocks(versucheStep, false); setHeadline("print-versuche", stepTitle(versucheStep)); fillTable("print-versuche", versuche, false); var lieferumfangStep = accordion.querySelector('[data-step="lieferumfang"]'); var lieferumfang = parseItemBlocks(lieferumfangStep, true); fillTable("print-lieferumfang", lieferumfang, true); var zubehoer = accordion.querySelector('[data-step="zubehoer"]'); var sections = zubehoer ? zubehoer.querySelectorAll(".card-body") : []; var notwendig = []; var empfohlen = []; for (var i = 0; i < sections.length; i++) { var items = parseItemBlocks(sections[i], false); if (sections[i].querySelector(".text-red, .icon-warning-black")) { notwendig = items; } else if (sections[i].querySelector(".text-green, .icon-Mehrwert_black")) { empfohlen = items; } } fillTable("print-zubehoer-notwendig", notwendig, false); fillTable("print-zubehoer-empfohlen", empfohlen, false); var mediaStep = accordion.querySelector('[data-step="media"]'); var media = parseMedia(mediaStep); setHeadline("print-media", stepTitle(mediaStep)); fillTable("print-media", media, true); } function start() { var itemUrl = resolveItemUrl(); if (!itemUrl) { setTimeout(function () { window.print(); }, 2000); return; } loadAccordion() .then(function (accordion) { fillFromAccordion(accordion); }) .catch(function (err) { if (window.console && console.warn) { console.warn("Accordion konnte nicht geladen werden:", itemUrl, err); } }) .then(function () { setTimeout(function () { window.print(); }, 500); }); } if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", start); } else { start(); } })();
 

Données techniques


leXsolar-BioFuel Large

Article n° : LEX-1702

Fonction et Applications

L'ensemble du processus de production de biocarburants peut être démontré avec leXsolar-BioFuel Large. Il commence par l'étape biologique de la fermentation alcoolique. Ensuite, le moût produit sera distillé à l'aide du condenseur leXsolar-condenser, qui a été développé spécialement pour cette expérience. La dernière étape consiste à convertir le biocarburant produit en énergie utilisable, telle que l'énergie électrique, à l'aide de la pile à combustible d'éthanol fournie. leXsolar-BioFuel Large ne couvre pas seulement le sujet de la production de bioéthanol, mais aussi la production de biodiesel par transestérification de graisses.

Caractéristiques Techniques

Les expériences suivantes peuvent être réalisées :

Partie 1 : Production de biodiesel

  • Transestérification de la graisse en biodiesel (FAME)
  • Détermination des paramètres des graisses
  • Extraction des graisses des aliments et des plantes oléagineuses

Partie 2 : Fermentation alcoolique

  • Production d'un moût/fermentation alcoolique
  • Fermentation de différents types de sucre (y compris le fractionnement catalytique de l'amidon)
  • Preuve des gaz de fermentation

Partie 3 : Distillation et production de bioéthanol

  • Distillation du moût
  • Caractéristiques de l'éthanol produit

Partie 4 : Les carburants à base d'éthanol

  • Introduction à la pile à combustible à l'éthanol
  • Courbe I-V des piles à combustible à l'éthanol
  • Dépendance des piles à éthanol à la concentration et à la température
  • Bilan énergétique de l'ensemble du processus

Liste des composants :

  • 1 x 1100-23 Module de potentiomètre
  • 1 x 1100-27 Module moteur sans engrenage
  • 1 x 1700-01 Module de pile à combustible éthanol leXsolar
  • 1 x 1702-01 Bouchon avec tuyau
  • 1 x 1702-02 Levure
  • 1 x 1702-03 Boîte 1702
  • 4 x L2-02-016 Bumpon transparent 5,0 mm de hauteur X 11,1mm de diamètre
  • 1 x L2-02-017 Hélice jaune
  • 1 x L2-06-016 Thermomètre de laboratoire
  • 1 x L2-06-070 Tête de distillation, 2 noyaux 75°, NS 19/26
  • 1 x L2-06-071 Condenseur
  • 1 x L2-06-072 Alcoomètre
  • 1 x L2-06-075 Fiole Erlenmeyer 1000 ml
  • 1 x L2-06-076 Sas
  • 1 x L2-06-077 Bouchon en caoutchouc
  • 1 x L2-06-079 Aréomètre
  • 1 x L2-06-082 Bécher 250 ml
  • 3 x L2-06-083 Tubes à essai
  • 1 x L2-06-084 Bouchon de préhension
  • 3 x L2-06-085 Pipette Pasteuer
  • 1 x L2-06-086 Éprouvette de mesure 100ml
  • 1 x L2-06-087 Seringue 2ml
  • 1 x L2-06-110 Anneau en silicone
  • 1 x L3-01-013 Couvercle pour plateau
  • 1 x L3-01-078 Rembourrage "BioFuel-Large" (en anglais)
  • 1 x L3-03-016 leXsolar-CD
  • 1 x L3-03-142 Einräumplan 1702 BioFuel-Large

Articles nécessaires : LEX-1704 Supplément BioFuel


PHYWE Systeme GmbH & Co. KG
Robert-Bosch-Breite 10 – 37079 Göttingen – Deutschland
www.phywe.com
Contact