The Up Rail 20kg cm ceiling-mounted...
- -30%
Are you unsure which molding, baseboard, or decorative profile to choose? ORAC Decor offers you the opportunity to order a free sample to discover the quality, texture, and finishes of its products before making your final decision.
Product customization
Don't forget to save your customization in order to add it to your cart.
Want to transform your walls and ceilings in style? Before you start, test the quality and design of ORAC Decor products for free!
With our free sample service, you can:
✨ See and touch the difference : appreciate the fine details and the quality of the material.
🎨 Choose with confidence : compare profiles, textures and finishes directly from your home.
🛠️ Easily test the cut or installation before ordering.
Ordering your sample is easy:
Go to the ORAC Decor product that interests you.
Click on "Order a free sample" .
Receive it quickly at home, with no obligation.
Let yourself be inspired and find the style that will enhance your interior — ORAC Decor, l at your l .
${renderItem(main, Math.ceil(m/7))} ${renderItem(DB.fx400, Math.ceil(m/80))} ${renderItem(DB.fl300, Math.ceil(m/30))} }); if (totalM === 0) { alert("Veuillez entrer un métrage valide."); return; } totContent.innerHTML = `
```; resContent.innerHTML = html; ```; document.getElementById("view-form").style.display = "none"; document.getElementById("view-result").style.display = "block"; document.getElementById("orac-wrapper-v13").scrollIntoView({behavior:"smooth"})``` function showForm(e) { } ``` { if(e) e.preventDefault(); document.getElementById("view-result").style.display = "none"; document.getElementById("view-form").style.display = "block"; } function renderItem(p, q) { return `
${p}
${q}
```js } // --- CART FUNCTIONS (STEALTH MODE) --- async function addCartTolerant(id, qty, btn, e, isBulk = false) ``` { // STOPPER LA PROPAGATION pour éviter l'erreur AlcaCookie if(e) { e.stopPropagation(); e.preventDefault(); } if (!isBulk) { btn.innerText = "..."; btn.disabled = true; } let token = ""; try { if (typeof prestashop !== 'undefined' && prestashop.static_token) token = prestashop.static_token; else token = document.querySelector('input[name="token"]').value; } This phrase is used in programming and it means to catch and handle any errors that may occur during the execution of code. { token = ""; } const url = `index.php?controller=cart&add=1&id_product=`${id}&qty=${qty}&token=${token}`try` { await fetch(url, { method: 'POST' }); } catch (err) { console.log("Ignore"); } btn.classList.add("add-ok"); btn.innerText = "✓ ADDED"; // Visual update attempt try { if(typeof prestashop !== 'undefined') prestashop.emit('updateCart', {reason: {idProduct:id, linkAction:'add-to-cart'}```javascript { try { await addTolerant(1, e); await addTolerant(2, e); await addTolerant(3, e); } catch(err) {} return true; } async function addAllTolerant(masterBtn, e) ``` { if(e) { e.stopPropagation(); e.preventDefault(); } masterBtn.innerText = "ADDING IN PROGRESS..."; masterBtn.disabled = true; masterBtn.style.backgroundColor = "#555"; const allBtns = document.querySelectorAll(".btn-orac-add"); for (let btn of allBtns) { if(!btn.classList.contains("ajoute-ok")) { await addCartTolerant(btn.getAttribute('data-id'), btn.getAttribute('data-qty'), btn, null, true); await new Promise(r => setTimeout(r, 1500)); } masterBtn.innerText = "✓ DONE!"; masterBtn.classList.add"add-ok" masterBtn.style.backgroundColor = "#2e7d32"; setTimeout(() => { location.reload(); }, This code snippet appears to be incomplete and does not provide enough context for an accurate translation. If you can provide more information or surrounding code, I would be happy to help translate it.
DISCOUNT200 : 10% off from 200€
DISCOUNT400 : Additional 10% off from 400€
DISCOUNT1000 : Additional 10% off from 1000€
💡 Promo codes are stackable and available directly in the cart.
10 other products in the same category:
Reviews (0)