{"id":2046,"date":"2026-03-05T01:06:58","date_gmt":"2026-03-05T01:06:58","guid":{"rendered":"https:\/\/easarte.com\/?page_id=2046"},"modified":"2026-03-05T01:27:13","modified_gmt":"2026-03-05T01:27:13","slug":"lista-precios-corregida","status":"publish","type":"page","link":"https:\/\/easarte.com\/en\/lista-precios-corregida\/","title":{"rendered":"Lista de precios 2"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2046\" class=\"elementor elementor-2046\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4302d74 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4302d74\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a146fcf\" data-id=\"a146fcf\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-14cbab9 elementor-widget elementor-widget-html\" data-id=\"14cbab9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"es\">\r\n\r\n<head>\r\n\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n\r\n<title>Lista de Precios | UMBRA|ES<\/title>\r\n\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:300;400;500;700;800&display=swap\" rel=\"stylesheet\">\r\n\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/html2canvas\/1.4.1\/html2canvas.min.js\"><\/script>\r\n\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jspdf\/2.5.1\/jspdf.umd.min.js\"><\/script>\r\n\r\n<style>\r\n\r\nbody{\r\nmargin:0;\r\nfont-family:'DM Sans',sans-serif;\r\nbackground:#ffffff;\r\n}\r\n\r\n.header{\r\npadding:120px 20px;\r\ntext-align:center;\r\nborder-bottom:1px solid #000;\r\n}\r\n\r\nh1{\r\nfont-size:4rem;\r\nletter-spacing:3px;\r\nmargin:0 0 40px 0;\r\n}\r\n\r\n.btn{\r\nbackground:#000;\r\ncolor:#fff;\r\npadding:20px 50px;\r\nborder:none;\r\ncursor:pointer;\r\nfont-size:14px;\r\nletter-spacing:2px;\r\n}\r\n\r\n.grid{\r\ndisplay:grid;\r\ngrid-template-columns:repeat(auto-fill,minmax(350px,1fr));\r\n}\r\n\r\n.card{\r\npadding:40px;\r\nborder-bottom:1px solid #eee;\r\nborder-right:1px solid #eee;\r\n}\r\n\r\n.img{\r\naspect-ratio:1\/1;\r\ndisplay:flex;\r\nalign-items:center;\r\njustify-content:center;\r\nmargin-bottom:25px;\r\n}\r\n\r\n.img img{\r\nmax-width:100%;\r\nmax-height:100%;\r\nobject-fit:contain;\r\n}\r\n\r\n.price{\r\nfont-size:28px;\r\nfont-weight:bold;\r\n}\r\n\r\n<\/style>\r\n\r\n<\/head>\r\n\r\n<body>\r\n\r\n<div class=\"header\">\r\n\r\n<h1>LISTA DE PRECIOS<\/h1>\r\n\r\n<button id=\"btnPDF\" onclick=\"generarPDF()\" class=\"btn\">\r\nDESCARGAR CAT\u00c1LOGO PDF\r\n<\/button>\r\n\r\n<\/div>\r\n\r\n<div id=\"grid\" class=\"grid\"><\/div>\r\n\r\n<script>\r\n\r\nlet data=[]\r\nlet filtered=[]\r\n\r\nfunction fixImage(url){\r\n\r\nif(!url) return \"\"\r\n\r\nif(url.includes(\"drive.google.com\")){\r\n\r\nlet m=url.match(\/\\\/d\\\/([^\/]+)\/) || url.match(\/id=([^&]+)\/)\r\n\r\nif(m) return \"https:\/\/lh3.googleusercontent.com\/d\/\"+m[1]\r\n\r\n}\r\n\r\nreturn url\r\n\r\n}\r\n\r\nasync function init(){\r\n\r\nlet url=\"https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vTJwx_xoNFNjz_7Y7c0SwuxjeAV9sIjYkEXE4ZB47mLjJ0xvkMIHPSA3gWcpj3SKw\/pub?output=csv\"\r\n\r\nlet res=await fetch(url+\"&t=\"+Date.now())\r\nlet csv=await res.text()\r\n\r\nlet rows=csv.split(\"\\n\").slice(6)\r\n\r\ndata=rows.map(r=>{\r\n\r\nlet c=r.split(\/,(?=(?:(?:[^\"]*\"){2})*[^\"]*$)\/)\r\n\r\nif(c.length<11 || !c[2]) return null\r\n\r\nreturn{\r\n\r\ntitulo:c[2].replace(\/\"\/g,\"\"),\r\nautor:c[3],\r\ntecnica:c[4],\r\nmedidas:c[5],\r\na\u00f1o:c[6],\r\nvalor:c[7],\r\nmoneda:c[8],\r\nimg:fixImage(c[10])\r\n\r\n}\r\n\r\n}).filter(x=>x)\r\n\r\nfiltered=data\r\n\r\nrender(filtered)\r\n\r\n}\r\n\r\nfunction render(items){\r\n\r\nlet grid=document.getElementById(\"grid\")\r\n\r\ngrid.innerHTML=items.map(o=>`\r\n\r\n<div class=\"card\">\r\n\r\n<div class=\"img\">\r\n<img decoding=\"async\" src=\"${o.img}\" crossorigin=\"anonymous\">\r\n<\/div>\r\n\r\n<h3>${o.titulo}<\/h3>\r\n\r\n<p>${o.tecnica}<\/p>\r\n<p>${o.medidas}<\/p>\r\n\r\n<p class=\"price\">${o.valor} ${o.moneda}<\/p>\r\n\r\n<\/div>\r\n\r\n`).join(\"\")\r\n\r\n}\r\n\r\nasync function generarPDF(){\r\n\r\nconst btn=document.getElementById(\"btnPDF\")\r\n\r\nbtn.disabled=true\r\nbtn.innerText=\"GENERANDO PDF...\"\r\n\r\nconst {jsPDF}=window.jspdf\r\n\r\nlet pdf=new jsPDF({\r\n\r\norientation:\"portrait\",\r\nunit:\"px\",\r\nformat:[1080,1920]\r\n\r\n})\r\n\r\nlet container=document.createElement(\"div\")\r\n\r\ncontainer.style.position=\"fixed\"\r\ncontainer.style.left=\"-9999px\"\r\ncontainer.style.top=\"0\"\r\ncontainer.style.width=\"1080px\"\r\n\r\ndocument.body.appendChild(container)\r\n\r\nfor(let i=0;i<filtered.length;i++){\r\n\r\nlet o=filtered[i]\r\n\r\nbtn.innerText=`PROCESANDO ${i+1}\/${filtered.length}`\r\n\r\ncontainer.innerHTML=`\r\n\r\n<div style=\"\r\nwidth:1080px;\r\nheight:1920px;\r\nbackground:#f2f2f2;\r\ndisplay:flex;\r\nflex-direction:column;\r\nfont-family:'DM Sans',sans-serif;\r\n\">\r\n\r\n<div style=\"\r\nheight:1150px;\r\nbackground:#ffffff;\r\ndisplay:flex;\r\nalign-items:center;\r\njustify-content:center;\r\n\">\r\n\r\n<img id=\"imgpdf\"\r\nsrc=\"${o.img}\"\r\ncrossorigin=\"anonymous\"\r\nstyle=\"max-width:92%;max-height:92%;object-fit:contain\">\r\n\r\n<\/div>\r\n\r\n<div style=\"\r\npadding:70px 120px;\r\ntext-align:center;\r\n\">\r\n\r\n<h1 style=\"\r\nfont-size:86px;\r\nfont-weight:800;\r\nletter-spacing:2px;\r\nline-height:1.1;\r\nmargin:0 0 25px 0;\r\ncolor:#111;\r\n\">\r\n\r\n${o.titulo}\r\n\r\n<\/h1>\r\n\r\n<p style=\"\r\nfont-size:38px;\r\nmargin:0;\r\nfont-weight:500;\r\ncolor:#333;\r\n\">\r\n\r\n${o.autor || \"\"}\r\n\r\n<\/p>\r\n\r\n<div style=\"\r\nwidth:160px;\r\nheight:4px;\r\nbackground:#000;\r\nmargin:30px auto 60px auto;\r\n\"><\/div>\r\n\r\n<p style=\"font-size:40px;margin:18px 0\">\r\n<strong>T\u00c9CNICA:<\/strong> ${o.tecnica}\r\n<\/p>\r\n\r\n<p style=\"font-size:40px;margin:18px 0\">\r\n<strong>MEDIDAS:<\/strong> ${o.medidas}\r\n<\/p>\r\n\r\n<p style=\"font-size:40px;margin:18px 0\">\r\n<strong>A\u00d1O:<\/strong> ${o.a\u00f1o}\r\n<\/p>\r\n\r\n<p style=\"\r\nfont-size:70px;\r\nfont-weight:800;\r\nmargin-top:70px;\r\nletter-spacing:2px;\r\n\">\r\n\r\n${o.valor} ${o.moneda}\r\n\r\n<\/p>\r\n\r\n<\/div>\r\n\r\n<div style=\"\r\ntext-align:center;\r\nfont-size:26px;\r\ncolor:#777;\r\nmargin-top:auto;\r\npadding-bottom:50px;\r\nletter-spacing:2px;\r\n\">\r\n\r\nUMBRA|ES\r\n\r\n<\/div>\r\n\r\n<\/div>\r\n`\r\n\r\nlet img=container.querySelector(\"#imgpdf\")\r\n\r\nawait new Promise(r=>{\r\n\r\nif(img.complete) r()\r\nelse{\r\nimg.onload=r\r\nimg.onerror=r\r\n}\r\n\r\n})\r\n\r\nawait new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r)))\r\n\r\nlet canvas=await html2canvas(container,{\r\nscale:2,\r\nuseCORS:true,\r\nbackgroundColor:\"#fff\"\r\n})\r\n\r\nlet imgData=canvas.toDataURL(\"image\/jpeg\",0.95)\r\n\r\nif(i>0) pdf.addPage()\r\n\r\npdf.addImage(imgData,\"JPEG\",0,0,1080,1920)\r\n\r\ncanvas.width=0\r\ncanvas.height=0\r\n\r\n}\r\n\r\npdf.save(\"catalogo_umbra.pdf\")\r\n\r\ndocument.body.removeChild(container)\r\n\r\nbtn.disabled=false\r\nbtn.innerText=\"DESCARGAR CAT\u00c1LOGO PDF\"\r\n\r\n}\r\n\r\ninit()\r\n\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Lista de Precios | UMBRA|ES LISTA DE PRECIOS DESCARGAR CAT\u00c1LOGO PDF<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-2046","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/pages\/2046","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/comments?post=2046"}],"version-history":[{"count":10,"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/pages\/2046\/revisions"}],"predecessor-version":[{"id":2057,"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/pages\/2046\/revisions\/2057"}],"wp:attachment":[{"href":"https:\/\/easarte.com\/en\/wp-json\/wp\/v2\/media?parent=2046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}