{"id":2,"date":"2025-06-11T17:23:05","date_gmt":"2025-06-11T17:23:05","guid":{"rendered":"http:\/\/selena.eu\/?page_id=2"},"modified":"2025-06-17T12:38:05","modified_gmt":"2025-06-17T10:38:05","slug":"sample-page","status":"publish","type":"page","link":"https:\/\/selena.eu\/en\/sample-page\/","title":{"rendered":"Sample Page"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"2\" class=\"elementor elementor-2\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-35be49f6 e-flex e-con-boxed e-con e-parent\" data-id=\"35be49f6\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-38a679fd elementor-widget elementor-widget-text-editor\" data-id=\"38a679fd\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t\n<p class=\"wp-block-paragraph\">This is an example page. It&#8217;s different from a blog post because it will stay in one place and will show up in your site navigation (in most themes). Most people start with an About page that introduces them to potential site visitors. It might say something like this:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Hi there! I&#8217;m a bike messenger by day, aspiring actor by night, and this is my website. I live in Los Angeles, have a great dog named Jack, and I like pi&#241;a coladas. (And gettin&#8217; caught in the rain.)<\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">&#8230;or something like this:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>The XYZ Doohickey Company was founded in 1971, and has been providing quality doohickeys to the public ever since. Located in Gotham City, XYZ employs over 2,000 people and does all kinds of awesome things for the Gotham community.<\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">As a new WordPress user, you should go to <a href=\"https:\/\/selena.eu\/wp-admin\/\">your dashboard<\/a> to delete this page and create new pages for your content. Have fun!<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e1e0e8f e-flex e-con-boxed e-con e-parent\" data-id=\"e1e0e8f\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4dbf53e elementor-widget elementor-widget-html\" data-id=\"4dbf53e\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"generator-container\">\r\n  <label>Wybierz rodzin\u0119 oprawy:\r\n    <select id=\"familySelect\"><\/select>\r\n  <\/label>\r\n\r\n  <form id=\"configForm\" style=\"display:none;\" action=\"\"><input type=\"hidden\" name=\"trp-form-language\" value=\"en\"\/><\/form>\r\n\r\n  <button id=\"addToList\" style=\"display:none;\">Dodaj do listy<\/button>\r\n\r\n  <h3>Lista wybranych opraw:<\/h3>\r\n  <ul id=\"productList\"><\/ul>\r\n\r\n  <button id=\"downloadPdf\" style=\"display:none;\">Pobierz PDF<\/button>\r\n<\/div>\r\n\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jspdf\/2.5.1\/jspdf.umd.min.js\"><\/script>\r\n<script>\r\n  const dataUrl = '\/wp-content\/uploads\/oprawy.json'; \/\/ <-- Zmie\u0144 na w\u0142asn\u0105 \u015bcie\u017ck\u0119!\r\n\r\n  let productData = {};\r\n  let selectedFamily = '';\r\n  let selectedCode = '';\r\n  let productList = [];\r\n\r\n  async function loadData() {\r\n    const response = await fetch(dataUrl);\r\n    const json = await response.json();\r\n    productData = json.families;\r\n\r\n    const familySelect = document.getElementById(\"familySelect\");\r\n    familySelect.innerHTML = '<option value=\"\">-- wybierz --<\/option>';\r\n\r\n    for (const key in productData) {\r\n      const family = productData[key];\r\n      const opt = document.createElement(\"option\");\r\n      opt.value = key;\r\n      opt.textContent = family.name;\r\n      familySelect.appendChild(opt);\r\n    }\r\n\r\n    familySelect.addEventListener(\"change\", handleFamilyChange);\r\n  }\r\n\r\n  function handleFamilyChange(e) {\r\n    selectedFamily = e.target.value;\r\n    if (!selectedFamily) return;\r\n\r\n    const configForm = document.getElementById(\"configForm\");\r\n    configForm.innerHTML = '';\r\n    configForm.style.display = \"block\";\r\n\r\n    const options = productData[selectedFamily].options;\r\n    for (const category in options) {\r\n      const label = document.createElement(\"label\");\r\n      label.textContent = category.charAt(0).toUpperCase() + category.slice(1) + ': ';\r\n      const select = document.createElement(\"select\");\r\n      select.name = category;\r\n\r\n      for (const opt of options[category]) {\r\n        const o = document.createElement(\"option\");\r\n        o.value = opt;\r\n        o.textContent = opt;\r\n        select.appendChild(o);\r\n      }\r\n\r\n      configForm.appendChild(label);\r\n      configForm.appendChild(select);\r\n      configForm.appendChild(document.createElement(\"br\"));\r\n    }\r\n\r\n    document.getElementById(\"addToList\").style.display = \"inline-block\";\r\n  }\r\n\r\n  document.getElementById(\"addToList\").addEventListener(\"click\", () => {\r\n    const form = document.getElementById(\"configForm\");\r\n    const prefix = productData[selectedFamily].prefix;\r\n    const selections = Array.from(form.elements).map(el => el.value);\r\n    const code = [prefix, ...selections].join('-');\r\n    productList.push(code);\r\n\r\n    const ul = document.getElementById(\"productList\");\r\n    const li = document.createElement(\"li\");\r\n    li.textContent = code;\r\n    ul.appendChild(li);\r\n\r\n    document.getElementById(\"downloadPdf\").style.display = \"inline-block\";\r\n  });\r\n\r\n  document.getElementById(\"downloadPdf\").addEventListener(\"click\", () => {\r\n    const { jsPDF } = window.jspdf;\r\n    const doc = new jsPDF();\r\n    doc.setFontSize(14);\r\n    doc.text(\"Lista opraw\", 10, 10);\r\n    productList.forEach((code, idx) => {\r\n      doc.text(`${idx + 1}. ${code}`, 10, 20 + idx * 10);\r\n    });\r\n    doc.save(\"lista-opraw.pdf\");\r\n  });\r\n\r\n  loadData();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>This is an example page. It&#8217;s different from a blog post because it will stay in one place and will show up in your site navigation (in most themes). Most people start with an About page that introduces them to potential site visitors. It might say something like this: Hi there! I&#8217;m a bike messenger [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-2","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/selena.eu\/en\/wp-json\/wp\/v2\/pages\/2","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/selena.eu\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/selena.eu\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/selena.eu\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/selena.eu\/en\/wp-json\/wp\/v2\/comments?post=2"}],"version-history":[{"count":0,"href":"https:\/\/selena.eu\/en\/wp-json\/wp\/v2\/pages\/2\/revisions"}],"wp:attachment":[{"href":"https:\/\/selena.eu\/en\/wp-json\/wp\/v2\/media?parent=2"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}