import { useContext, useState } from "react"; import { MyContext } from "../data/contextapi"; import InfoIcon from "./InfoIcon"; export default function Samenstling() { const { type, settype, setStep, width, setWidth, doorConfig, setDoorConfig, sidePannel, setSidePannel, sidePannelConfig, setSidePannelConfig, sidePannelSize, setSidePannelSize, stalenPart, setStalenPart, stalenType, setStalenType, open, inprogress, holeWidth, setHoleWidth, } = useContext(MyContext); const doorImages = { Taatsdeur: "door_type_1_staging.jpg", Schuifdeur: "door_type_2_staging.jpg", Scharnier: "door_type_3.jpg", "vast-stalen": "door_type_4.jpg", }; const handleStalenPart = (e) => { setStalenPart(e.target.value); }; const handleWidthChange = (e) => { if (doorConfig === "dubbele" || sidePannel != "geen") { setSidePannelSize(calculateSidePanelWidth(holeWidth, e.target.value)); setWidth(e.target.value); } else { setWidth(e.target.value); setSidePannelSize(e.target.value); } if (sidePannel == "geen") { setHoleWidth( doorConfig === "dubbele" ? 2 * e.target.value : e.target.value ); } }; const calculateSidePanelWidth = (totalWidth, doorWidth) => { if ( doorConfig != "dubbele" && (sidePannel === "links" || sidePannel === "rechts") ) { return totalWidth - Number(doorWidth); } if (doorConfig == "dubbele" && sidePannel == "geen") { return 0; } if (doorConfig != "dubbele" && sidePannel === "beide") { return (totalWidth - Number(doorWidth)) / 2; } if ( doorConfig == "dubbele" && (sidePannel == "links" || sidePannel == "rechts") ) { return totalWidth - Number(doorWidth) * 2; } if (doorConfig == "dubbele" && sidePannel == "beide") { return (totalWidth - Number(doorWidth) * 2) / 2; } return 0; }; return ( <>
{type != "vast-stalen" ? ( <>
Samenstelling deur {/*
{ setStep("door"); }} > € 1200,00
*/}
{ if (!inprogress) setDoorConfig("enkele"); }} >
Enkele deur
{ if (!inprogress) setDoorConfig("dubbele"); }} >
Dubbele deur
{/*
{ setStep("door"); }} > € 900,00
*/}
{ if (!inprogress) setSidePannel("links"); }} >
links
{ if (!inprogress) setSidePannel("rechts"); }} >
rechts
{ if (!inprogress) setSidePannel("beide"); }} >
beide
{ if (!inprogress) { setSidePannel("geen"); setSidePannelSize(width); } }} >
geen
) : ( <>
Situatie van het vaste paneel {/*
{ setStep("door"); }} > € 0,00
*/}
{ setStalenType("divider"); }} /> Roomdivider
{ setStalenType("tussen"); }} /> Tussen 2 wanden
Aantal panelen {/*
{ setStep("door"); }} > € 0,00
*/}
{stalenPart} panelen
)} {type !== "vast-stalen" && ( <>
{width} cm
)}
); }