{"categories":[{"id":"188","name":"Toilettenpapierhalter","required":false,"multiple":true,"expanded":false,"single_product":true,"products":[{"product_id":"137656","sku":"A62288119297848","name":"Grohe Essentials Toilettenpapierhalter Hard Graphite","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/4\/0\/40367A01_P1_1.jpg","url":"https:\/\/www.saniweb.de\/grohe-essentials-toilettenpapierhalter-hard-graphite-40367a01.html","price_final":55.32,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"137656\" data-price-box=\"product-id-137656\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        UVP        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D137656']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D137656')\"                data-price-amount=\"105\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >105,00\u00a0<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Preis<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D137656']\"    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\\u002D137656')\"                data-price-amount=\"55.32\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >55,32\u00a0<\/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\">Ihr rabatt&nbsp;<\/span>\n            <span>47%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"    <a class=\"rating-summary cursor-pointer flex items-center\"\n       href=\"#pdp-reviews\"\n        >\n                    <span class=\"hidden\" itemprop=\"ratingValue\">4.794445<\/span>\n            <span class=\"hidden\" itemprop=\"reviewCount\">24<\/span>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"3 0 20 20\" fill=\"currentColor\" class=\"w-6 h-6\">\n                    <defs>\n                        <linearGradient id=\"partialFill137656\">\n                            <stop offset=\"0%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"79.4445%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"79.4445%\" stop-color=\"#E6E6E6\"\/>\n                            <stop offset=\"100%\" stop-color=\"#E6E6E6\"\/>\n                        <\/linearGradient>\n                    <\/defs>\n                    <g fill=\"url(#partialFill137656)\">\n                        <path\n                            d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969\n                            0 1.371 1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                            1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1 1\n                            0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                    <\/g>\n                <\/svg>\n                                                \n        <span class=\"text-brand-blue ml-1 hidden sm:block\">\n                            24 Bewertungen                    <\/span>\n        <span class=\"text-brand-blue ml-1 sm:hidden\">\n            (24)        <\/span>\n    <\/a>\n","review_summary":"95.8889","review_count":"24","price_old":105,"price_discount":49.68}]},{"id":"935","name":"Handtuchhalter","required":false,"multiple":true,"expanded":false,"single_product":true,"products":[{"product_id":"137673","sku":"A67463680098653","name":"Grohe Essentials Handtuchhalter Hard Graphite","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/4\/0\/40371A01_P1_1.jpg","url":"https:\/\/www.saniweb.de\/grohe-essentials-handtuchhalter-hard-graphite-40371a01.html","price_final":74.39,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"137673\" data-price-box=\"product-id-137673\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        UVP        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D137673']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D137673')\"                data-price-amount=\"141\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >141,00\u00a0<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Preis<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D137673']\"    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\\u002D137673')\"                data-price-amount=\"74.39\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >74,39\u00a0<\/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\">Ihr rabatt&nbsp;<\/span>\n            <span>47%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"    <a class=\"rating-summary cursor-pointer flex items-center\"\n       href=\"#pdp-reviews\"\n        >\n                    <span class=\"hidden\" itemprop=\"ratingValue\">4.744445<\/span>\n            <span class=\"hidden\" itemprop=\"reviewCount\">50<\/span>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"3 0 20 20\" fill=\"currentColor\" class=\"w-6 h-6\">\n                    <defs>\n                        <linearGradient id=\"partialFill137673\">\n                            <stop offset=\"0%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"74.4445%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"74.4445%\" stop-color=\"#E6E6E6\"\/>\n                            <stop offset=\"100%\" stop-color=\"#E6E6E6\"\/>\n                        <\/linearGradient>\n                    <\/defs>\n                    <g fill=\"url(#partialFill137673)\">\n                        <path\n                            d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969\n                            0 1.371 1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                            1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1 1\n                            0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                    <\/g>\n                <\/svg>\n                                                \n        <span class=\"text-brand-blue ml-1 hidden sm:block\">\n                            50 Bewertungen                    <\/span>\n        <span class=\"text-brand-blue ml-1 sm:hidden\">\n            (50)        <\/span>\n    <\/a>\n","review_summary":"94.8889","review_count":"50","price_old":141,"price_discount":66.61}]},{"id":"295","name":"Seifenspender-Pumpen","required":false,"multiple":true,"expanded":false,"single_product":true,"products":[{"product_id":"137685","sku":"A69077543685734","name":"Grohe Essentials Seifenspender Hard Graphite","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/4\/0\/40394A01_P1_1.jpg","url":"https:\/\/www.saniweb.de\/grohe-essentials-seifenspender-hard-graphite-40394a01.html","price_final":52,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"137685\" data-price-box=\"product-id-137685\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        UVP        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D137685']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D137685')\"                data-price-amount=\"65\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >65,00\u00a0<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Preis<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D137685']\"    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\\u002D137685')\"                data-price-amount=\"52\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >52,00\u00a0<\/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\">Ihr rabatt&nbsp;<\/span>\n            <span>20%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"    <a class=\"rating-summary cursor-pointer flex items-center\"\n       href=\"#pdp-reviews\"\n        >\n                    <span class=\"hidden\" itemprop=\"ratingValue\">4.814285<\/span>\n            <span class=\"hidden\" itemprop=\"reviewCount\">26<\/span>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"3 0 20 20\" fill=\"currentColor\" class=\"w-6 h-6\">\n                    <defs>\n                        <linearGradient id=\"partialFill137685\">\n                            <stop offset=\"0%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"81.4285%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"81.4285%\" stop-color=\"#E6E6E6\"\/>\n                            <stop offset=\"100%\" stop-color=\"#E6E6E6\"\/>\n                        <\/linearGradient>\n                    <\/defs>\n                    <g fill=\"url(#partialFill137685)\">\n                        <path\n                            d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969\n                            0 1.371 1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                            1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1 1\n                            0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                    <\/g>\n                <\/svg>\n                                                \n        <span class=\"text-brand-blue ml-1 hidden sm:block\">\n                            26 Bewertungen                    <\/span>\n        <span class=\"text-brand-blue ml-1 sm:hidden\">\n            (26)        <\/span>\n    <\/a>\n","review_summary":"96.2857","review_count":"26","price_old":65,"price_discount":13}]},{"id":"460","name":"Eckventile","required":false,"multiple":true,"expanded":false,"single_product":true,"products":[{"product_id":"162736","sku":"A33789391342201","name":"Grohe Eckventil, 1\/2\" hard graphite","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/2\/22037A00_2024_P1.jpg","url":"https:\/\/www.saniweb.de\/grohe-eckventil-1-2-hard-graphite-22037a00.html","price_final":68.4,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"162736\" data-price-box=\"product-id-162736\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        UVP        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D162736']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D162736')\"                data-price-amount=\"76\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >76,00\u00a0<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Preis<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D162736']\"    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\\u002D162736')\"                data-price-amount=\"68.4\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >68,40\u00a0<\/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\">Ihr rabatt&nbsp;<\/span>\n            <span>10%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":76,"price_discount":7.6}]},{"id":"515","name":"Abflussstopfen","required":false,"multiple":true,"expanded":false,"single_product":true,"products":[{"product_id":"226703","sku":"A03825143441148","name":"Grohe Ablaufgarnitur mit Druckstopfen hard graphite","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/6\/5\/65807A00_P1.jpg","url":"https:\/\/www.saniweb.de\/grohe-ablaufgarnitur-mit-druckstopfen-hard-graphite-65807a00.html","price_final":113.4,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"226703\" data-price-box=\"product-id-226703\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        UVP        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D226703']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D226703')\"                data-price-amount=\"126\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >126,00\u00a0<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Preis<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D226703']\"    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\\u002D226703')\"                data-price-amount=\"113.4\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >113,40\u00a0<\/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\">Ihr rabatt&nbsp;<\/span>\n            <span>10%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"","review_summary":null,"review_count":null,"price_old":126,"price_discount":12.6}]},{"id":"114","name":"Waschtischarmaturen","required":false,"multiple":true,"expanded":false,"single_product":false,"products":[{"product_id":"163663","sku":"A54583094804067","name":"Grohe BauFlow Waschtischmischer L-Size mit Ablaufgarnitur Chrom","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/2\/3\/23753000_P1.jpg","url":"https:\/\/www.saniweb.de\/grohe-bauflow-waschtischmischer-l-size-mit-ablaufgarnitur-chrom-23753000.html","price_final":73.81,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"163663\" data-price-box=\"product-id-163663\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        UVP        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D163663']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D163663')\"                data-price-amount=\"175\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >175,00\u00a0<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Preis<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D163663']\"    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\\u002D163663')\"                data-price-amount=\"73.81\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >73,81\u00a0<\/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\">Ihr rabatt&nbsp;<\/span>\n            <span>58%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"    <a class=\"rating-summary cursor-pointer flex items-center\"\n       href=\"#pdp-reviews\"\n        >\n                    <span class=\"hidden\" itemprop=\"ratingValue\">4.75<\/span>\n            <span class=\"hidden\" itemprop=\"reviewCount\">114<\/span>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"3 0 20 20\" fill=\"currentColor\" class=\"w-6 h-6\">\n                    <defs>\n                        <linearGradient id=\"partialFill163663\">\n                            <stop offset=\"0%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"75%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"75%\" stop-color=\"#E6E6E6\"\/>\n                            <stop offset=\"100%\" stop-color=\"#E6E6E6\"\/>\n                        <\/linearGradient>\n                    <\/defs>\n                    <g fill=\"url(#partialFill163663)\">\n                        <path\n                            d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969\n                            0 1.371 1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                            1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1 1\n                            0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                    <\/g>\n                <\/svg>\n                                                \n        <span class=\"text-brand-blue ml-1 hidden sm:block\">\n                            114 Bewertungen                    <\/span>\n        <span class=\"text-brand-blue ml-1 sm:hidden\">\n            (114)        <\/span>\n    <\/a>\n","review_summary":"95","review_count":"114","price_old":175,"price_discount":101.19}],"filter_id":542},{"id":"483","name":"Armaturenreiniger","required":false,"multiple":true,"expanded":false,"single_product":false,"products":[{"product_id":"93799","sku":"A00000000149078","name":"Grohe Grohclean\nArmaturen und Badreiniger","image":"https:\/\/media.saniweb.nl\/cdn-cgi\/image\/fit=pad,format=auto,width=240,height=240\/media\/catalog\/product\/4\/8\/48166000_P1.jpg","url":"https:\/\/www.saniweb.de\/grohe-grohclean-armaturen-und-badreiniger-48166000.html","price_final":24.8,"price_html":"<div class=\"price-box price-final_price\" data-role=\"priceBox\" data-product-id=\"93799\" data-price-box=\"product-id-93799\">    <span class=\"w-full advice-price block shrink-0 text-xs text-brand-gray-dark -mb-2 \">\n        UVP        <span\n    x-data x-id=\"['old\\u002Dprice\\u002D93799']\"    class=\"price-container line-through&#x20;currency-sign&#x20;tax&#x20;weee\"\n        >\n        <span  :id=\"$id('old\\u002Dprice\\u002D93799')\"                data-price-amount=\"31\"\n        data-price-type=\"originalPrice\"\n        class=\"price-wrapper \"\n    >31,00\u00a0<\/span>\n        <\/span>\n    <\/span>\n<div class=\"current-price final flex relative\">\n    <span class=\"price-label sr-only\">Preis<\/span>\n    <span\n    x-data x-id=\"['product\\u002Dprice\\u002D93799']\"    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\\u002D93799')\"                data-price-amount=\"24.8\"\n        data-price-type=\"finalPrice\"\n        class=\"price-wrapper \"\n    >24,80\u00a0<\/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\">Ihr rabatt&nbsp;<\/span>\n            <span>20%<\/span>\n        <\/div>\n    <\/div>\n<\/div>","review_html":"    <a class=\"rating-summary cursor-pointer flex items-center\"\n       href=\"#pdp-reviews\"\n        >\n                    <span class=\"hidden\" itemprop=\"ratingValue\">4.833335<\/span>\n            <span class=\"hidden\" itemprop=\"reviewCount\">17<\/span>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"fill-current w-6 h-6\" viewBox=\"3 0 20 20\"\n                     style=\"color: #FFCB01\"\n                     fill=\"currentColor\">\n                    <path\n                        d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969 0 1.371\n                        1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                        1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1\n                        1 0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                <\/svg>\n                                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"3 0 20 20\" fill=\"currentColor\" class=\"w-6 h-6\">\n                    <defs>\n                        <linearGradient id=\"partialFill93799\">\n                            <stop offset=\"0%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"83.3335%\" stop-color=\"#FFCB01\"\/>\n                            <stop offset=\"83.3335%\" stop-color=\"#E6E6E6\"\/>\n                            <stop offset=\"100%\" stop-color=\"#E6E6E6\"\/>\n                        <\/linearGradient>\n                    <\/defs>\n                    <g fill=\"url(#partialFill93799)\">\n                        <path\n                            d=\"M9.049 2.927c.3-.921 1.603-.921 1.902 0l1.07 3.292a1 1 0 00.95.69h3.462c.969\n                            0 1.371 1.24.588 1.81l-2.8 2.034a1 1 0 00-.364 1.118l1.07 3.292c.3.921-.755 1.688-1.54\n                            1.118l-2.8-2.034a1 1 0 00-1.175 0l-2.8 2.034c-.784.57-1.838-.197-1.539-1.118l1.07-3.292a1 1\n                            0 00-.364-1.118L2.98 8.72c-.783-.57-.38-1.81.588-1.81h3.461a1 1 0 00.951-.69l1.07-3.292z\"\/>\n                    <\/g>\n                <\/svg>\n                                                \n        <span class=\"text-brand-blue ml-1 hidden sm:block\">\n                            17 Bewertungen                    <\/span>\n        <span class=\"text-brand-blue ml-1 sm:hidden\">\n            (17)        <\/span>\n    <\/a>\n","review_summary":"96.6667","review_count":"17","price_old":31,"price_discount":6.2}],"filter_id":543}],"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 Essentials Toilettenpapierhalter Hard Graphite\",\"item_id\":\"A62288119297848\",\"price\":55.32,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":1,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":137656,\"original_price\":105,\"item_category\":\"Toilettenpapierhalter\"},{\"item_name\":\"Grohe Essentials Handtuchhalter Hard Graphite\",\"item_id\":\"A67463680098653\",\"price\":74.39,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":2,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":137673,\"original_price\":141,\"item_category\":\"Handtuchhalter\"},{\"item_name\":\"Grohe Essentials Seifenspender Hard Graphite\",\"item_id\":\"A69077543685734\",\"price\":52,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":3,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":137685,\"original_price\":65,\"item_category\":\"Seifenspender-Pumpen\"},{\"item_name\":\"Grohe Eckventil, 1\\\/2\\\" hard graphite\",\"item_id\":\"A33789391342201\",\"price\":68.4,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":4,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":162736,\"original_price\":76,\"item_category\":\"Eckventile\"},{\"item_name\":\"Grohe Ablaufgarnitur mit Druckstopfen hard graphite\",\"item_id\":\"A03825143441148\",\"price\":113.4,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":5,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":226703,\"original_price\":126,\"item_category\":\"Abflussstopfen\"},{\"item_name\":\"Grohe BauFlow Waschtischmischer L-Size mit Ablaufgarnitur Chrom\",\"item_id\":\"A54583094804067\",\"price\":73.81,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":6,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":163663,\"original_price\":175,\"item_category\":\"Waschtischarmaturen\"},{\"item_name\":\"Grohe Grohclean\\nArmaturen und Badreiniger\",\"item_id\":\"A00000000149078\",\"price\":24.8,\"item_list_name\":\"Advanced Crosssells\",\"item_list_id\":\"advanced_crosssells\",\"index\":7,\"currency\":\"EUR\",\"quantity\":1,\"p_id\":93799,\"original_price\":31,\"item_category\":\"Armaturenreiniger\"}],\"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"}