{"categories":[{"id":"264","name":"Mengkraan afbouwdeel","required":true,"multiple":true,"expanded":true,"single_product":false,"products":[{"product_id":"158411","sku":"A82990421068507","name":"Grohe Grohtherm Opbouwdeel Thermostaat 15,8x15,8x1 cm Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24078000_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-grohtherm-opbouwdeel-thermostaat-15-8x15-8x1-cm-chroom-24078000.html","price_final":396.24,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"158411\" data-price-box=\"product-id-158411\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D158411']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D158411')\"                data-price-amount=\"698\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >698,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D158411']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D158411')\"                data-price-amount=\"396.24\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >396,24<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>43%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"selected":true,"price_old":698,"price_discount":301.76},{"product_id":"158417","sku":"A75680664251375","name":"Grohe Grohtherm Afbouwdeel Thermostaat Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24079000_P1_1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-grohtherm-afbouwdeel-thermostaat-chroom-24079000.html","price_final":441.69,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"158417\" data-price-box=\"product-id-158417\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D158417']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D158417')\"                data-price-amount=\"778\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >778,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D158417']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D158417')\"                data-price-amount=\"441.69\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >441,69<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>43%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":778,"price_discount":336.31},{"product_id":"158416","sku":"A07126553062762","name":"Grohe Grohtherm Afbouwdeel Thermostaat Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24076000_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-grohtherm-afbouwdeel-thermostaat-chroom-24076000.html","price_final":408.97,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"158416\" data-price-box=\"product-id-158416\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D158416']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D158416')\"                data-price-amount=\"778\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >778,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D158416']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D158416')\"                data-price-amount=\"408.97\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >408,97<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>47%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":778,"price_discount":369.03},{"product_id":"158421","sku":"A77028561896237","name":"Grohe Grohtherm Afbouwdeel Thermostaat Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24077000_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-grohtherm-afbouwdeel-thermostaat-chroom-24077000.html","price_final":441.69,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"158421\" data-price-box=\"product-id-158421\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D158421']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D158421')\"                data-price-amount=\"778\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >778,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D158421']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D158421')\"                data-price-amount=\"441.69\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >441,69<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>43%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":778,"price_discount":336.31},{"product_id":"162755","sku":"A92025147271747","name":"Grohe Lineare Afbouwdeel Inbouwkraan Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24064001_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-lineare-afbouwdeel-inbouwkraan-chroom-24064001.html","price_final":285.75,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162755\" data-price-box=\"product-id-162755\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162755']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162755')\"                data-price-amount=\"381\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >381,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162755']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162755')\"                data-price-amount=\"285.75\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >285,75<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>25%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":381,"price_discount":95.25},{"product_id":"162716","sku":"A69558242023456","name":"Grohe Essence Douchemengkraan Afbouwdeel Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24057001_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-essence-douchemengkraan-afbouwdeel-chroom-24057001.html","price_final":178.39,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162716\" data-price-box=\"product-id-162716\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162716']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162716')\"                data-price-amount=\"314\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >314,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162716']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162716')\"                data-price-amount=\"178.39\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >178,39<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>43%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":314,"price_discount":135.61},{"product_id":"162713","sku":"A61810386267051","name":"Grohe Essence Badmengkraan Afbouwdeel 2-Weg Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24058001_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-essence-badmengkraan-afbouwdeel-2-weg-chroom-24058001.html","price_final":196.24,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162713\" data-price-box=\"product-id-162713\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162713']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162713')\"                data-price-amount=\"346\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >346,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162713']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162713')\"                data-price-amount=\"196.24\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >196,24<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>43%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":346,"price_discount":149.76},{"product_id":"162697","sku":"A70653938218597","name":"Grohe Eurodisc Cosmopolitan Douchemengkraan Afbouwdeel Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24055002_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-eurodisc-cosmopolitan-douchemengkraan-afbouwdeel-chroom-24055002.html","price_final":217.5,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162697\" data-price-box=\"product-id-162697\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162697']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162697')\"                data-price-amount=\"290\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >290,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162697']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162697')\"                data-price-amount=\"217.5\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >217,50<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>25%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":290,"price_discount":72.5},{"product_id":"162694","sku":"A51160289263225","name":"Grohe Eurodisc Cosmopolitan Badmengkraan Afbouwdeel 2-Weg Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24056002_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-eurodisc-cosmopolitan-badmengkraan-afbouwdeel-2-weg-chroom-24056002.html","price_final":239.25,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162694\" data-price-box=\"product-id-162694\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162694']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162694')\"                data-price-amount=\"319\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >319,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162694']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162694')\"                data-price-amount=\"239.25\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >239,25<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>25%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":319,"price_discount":79.75},{"product_id":"162722","sku":"A91679442257333","name":"Grohe Eurostyle Douchemengkraan Afbouwdeel Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24048003_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-eurostyle-douchemengkraan-afbouwdeel-chroom-24048003.html","price_final":181.5,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162722\" data-price-box=\"product-id-162722\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162722']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162722')\"                data-price-amount=\"242\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >242,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162722']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162722')\"                data-price-amount=\"181.5\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >181,50<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>25%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":242,"price_discount":60.5},{"product_id":"162718","sku":"A12031766602581","name":"Grohe Eurostyle Badmengkraan Afbouwdeel 2-Weg Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24049003_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-eurostyle-badmengkraan-afbouwdeel-2-weg-chroom-24049003.html","price_final":199.5,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162718\" data-price-box=\"product-id-162718\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162718']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162718')\"                data-price-amount=\"266\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >266,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162718']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162718')\"                data-price-amount=\"199.5\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >199,50<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>25%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":266,"price_discount":66.5},{"product_id":"162714","sku":"A08149734295264","name":"Grohe Eurostyle Douchemengkraan Afbouwdeel Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24046003_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-eurostyle-douchemengkraan-afbouwdeel-chroom-24046003.html","price_final":179.25,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162714\" data-price-box=\"product-id-162714\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162714']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162714')\"                data-price-amount=\"239\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >239,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162714']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162714')\"                data-price-amount=\"179.25\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >179,25<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>25%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":239,"price_discount":59.75},{"product_id":"162715","sku":"A79980764348238","name":"Grohe Eurosmart Cosmopolitan Douchemengkraan Afbouwdeel Chroom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/4\/24044000_P1.jpg","url":"https:\/\/www.saniweb.nl\/grohe-eurosmart-cosmopolitan-douchemengkraan-afbouwdeel-chroom-24044000.html","price_final":165,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162715\" data-price-box=\"product-id-162715\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        Adviesprijs        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162715']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162715')\"                data-price-amount=\"220\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >220,00<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Prijs<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162715']\"    class=\"price-container font-extrabold&#x20;text-3xl&#x20;lg&#x3A;text-3.5xl&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('product\\u002Dprice\\u002D162715')\"                data-price-amount=\"165\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >165,00<\/span>\n        <\/span>\n<\/div>\n<div class=\"hidden discount-price-label-wrapper ml-auto\">\n            <div class=\"discount-price discount-price-basic relative flex items-center ml-3.5 font-bold leading-3 bg-brand-blue px-2.5 text-white text-xs lg:text-sm rounded-r\n             \"\n         >\n            <span class=\"uppercase\">Je bespaart&nbsp;<\/span>\n            <span>25%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":220,"price_discount":55}],"label":"noodzakelijk"}],"html":"\n<!-- Start Google Analytics 4 for Google Tag Manager by MagePal -->\n<script type=\"text\/javascript\">\n    (function () {\n        let globalDatalayer = window.dataLayer = window.dataLayer || [];\n\n        function init() {\n            const data = [{\"event\":\"view_item_list\",\"ecommerce\":{\"items\":[{\"item_name\":\"Grohe Grohtherm Opbouwdeel Thermostaat 15,8x15,8x1 cm Chroom\",\"item_id\":\"A82990421068507\",\"price\":396.24,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":1,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":158411,\"original_price\":698,\"item_category\":\"Mengkraan afbouwdeel\"}],\"currency\":\"EUR\",\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\"},\"_clear\":true}];\n\n            const processedProductElements = [];\n            const viewItemListEvents = data.filter(item => item?.event === 'view_item_list');\n            const throttle = (callback, threshold = 200) => {\n                let last;\n                let deferTimer;\n                return (...args) => {\n                    const now = new Date().valueOf();\n                    if (last && now < last + threshold) {\n                        clearTimeout(deferTimer);\n                        deferTimer = setTimeout(() => {\n                            last = now;\n                            callback(args);\n                        }, threshold);\n                    } else {\n                        last = now;\n                        callback(args);\n                    }\n                };\n            }\n            const isElementInViewport = (el) => {\n                const rect = el.getBoundingClientRect();\n                const center = {\n                    x: (rect.right + rect.left) \/ 2,\n                    y: (rect.bottom + rect.top) \/ 2,\n                }\n                return (\n                    center.x >= 0 &&\n                    center.y >= 0 &&\n                    center.x <= (window.innerWidth || document.documentElement.clientWidth) &&\n                    center.y <= (window.innerHeight || document.documentElement.clientHeight)\n                );\n            }\n            const pushProductElements = (productElements) => {\n                const events = [];\n                const skus = productElements.map(productElement => productElement.dataset.listProductSku);\n                viewItemListEvents.forEach(viewItemsListEvent => {\n                    const eventItems = viewItemsListEvent?.ecommerce?.items?.filter(item => {\n                        return skus.includes(item.item_id)\n                    });\n                    if (eventItems && eventItems.length > 0) {\n                        const event = JSON.parse(JSON.stringify(viewItemsListEvent));\n                        event.ecommerce.items = eventItems;\n                        events.push(event);\n                    }\n                });\n\n                if (events.length) {\n                    events.forEach(event => {\n                        globalDatalayer.push(event);\n                    });\n                }\n            }\n            const checkNewProductsInViewport = () => {\n                const newProductElementsInViewport = [];\n                document.querySelectorAll(['[data-list-product-sku]']).forEach(productElement => {\n                    if (!processedProductElements.includes(productElement) && isElementInViewport(productElement)) {\n                        newProductElementsInViewport.push(productElement);\n                    }\n                });\n\n                if (newProductElementsInViewport.length) {\n                    processedProductElements.push(...newProductElementsInViewport);\n                    pushProductElements(newProductElementsInViewport);\n                }\n            };\n            if (viewItemListEvents.length > 0) {\n                window.addEventListener('DOMContentLoaded', checkNewProductsInViewport);\n                window.addEventListener('scroll', throttle(checkNewProductsInViewport));\n                window.addEventListener('resize', throttle(checkNewProductsInViewport));\n            }\n\n            if (data) {\n                let storedData = null\n\n                data.forEach((item) => {\n                    \/\/ Set category data on product detail page\n                    if (item?.event === 'view_item') {\n                        if (storedData === null) {\n                            storedData = JSON.parse(window.localStorage.getItem(\"product-click-ga4\"));\n                        }\n\n                        item?.ecommerce?.items?.forEach((product) => {\n                            if (storedData?.index) {\n                                product.index = storedData.index\n                            }\n\n                            if (storedData?.item_list_name) {\n                                product.item_list_name = storedData.item_list_name;\n                                product.item_list_id = storedData.item_list_id;\n                            }\n                        })\n                    }\n\n                    if (item?.event !== 'view_item_list') {\n                        globalDatalayer.push(item);\n                    }\n                })\n            }\n        }\n\n        init();\n\n                \/\/ Track product clicks\n        const productsList = [{\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"class_name\":\"[data-upsell-tool-category] a.product-item-link\",\"container_class\":\"[data-list-product-sku]\"}]\n        document.body.addEventListener('click', (event) => {\n            productsList.forEach((list) => {\n                if (list?.class_name) {\n                    const clickTarget = event.target;\n                    const productLink = clickTarget.closest(list?.class_name);\n                    if (productLink) {\n                        productClick(productLink, list)\n                    }\n                }\n            });\n            return;\n        });\n\n        function productClick(element, list) {\n            const container = element.closest(list?.container_class)\n\n            \/\/ Find product url\n            let productUrl = null\n            if (container && container.querySelector('a.product-item-link')) {\n                productUrl = container.querySelector('a.product-item-link').href\n            } else if (container && container.querySelector('a.product-item-photo')) {\n                productUrl = container.querySelector('a.product-item-photo').href\n            } else {\n                productUrl = element.href\n            }\n\n            const priceBox = container.querySelector(\"[data-product-id]\")\n            if (priceBox) {\n                const productId = priceBox.dataset.productId\n\n                const productCollection = globalDatalayer.filter((layer) => layer?.ecommerce?.items).reduce((collection, layer) => collection.concat(...layer.ecommerce.items), [])\n                const product = productCollection.find((product) => product.p_id == productId)\n\n                const productClickData = {\n                    pid: productId,\n                    item_id: product.item_id,\n                    item_list_name: list.item_list_name,\n                    item_list_id: list.item_list_id,\n                    index: product.index\n                }\n                window.localStorage.setItem(\"product-click-ga4\", JSON.stringify(productClickData))\n\n                globalDatalayer.push({\n                    'event': 'select_item',\n                    'ecommerce': {\n                        'items': [product]\n                    },\n                    '_clear': true\n                });\n            }\n        }\n            })();\n<\/script>\n<!-- End Google Analytics 4 for Google Tag Manager by MagePal -->\n"}