www.vvs-eksperten.dk
Open in
urlscan Pro
172.67.73.31
Public Scan
Submitted URL: http://www.vvs-eksperten.dk/
Effective URL: https://www.vvs-eksperten.dk/
Submission: On June 28 via api from US — Scanned from DK
Effective URL: https://www.vvs-eksperten.dk/
Submission: On June 28 via api from US — Scanned from DK
Form analysis
330 forms found in the DOMGET https://www.vvs-eksperten.dk/relewise/index/index/
<form class="form minisearch relative" id="search_mini_form" x-ref="form" @submit.prevent="search()" action="https://www.vvs-eksperten.dk/relewise/index/index/" method="get">
<label class="hidden" for="search" data-role="minisearch-label">
<span>Search</span>
</label>
<span @input="$dispatch('notify')">
<input id="search" x-ref="searchInput" type="search" autocomplete="off" name="q" placeholder="Søg i produkter, kategorier og andet" maxlength="128"
class="md:relative absolute top-0 highlighInput w-full p-2 text-lg leading-normal transition appearance-none text-grey-800 focus:outline-none focus:border-transparent lg:text-xl rounded-sm md:mt-0 mt-14"
:class="searchResultProducts.length > 0 ? 'newposition' : ''" @input.debounce.250ms="suggest()" @keydown.arrow-down.prevent="focusElement($el.querySelector('[tabindex]'))" @keydown.enter="clickAction()">
</span>
<template x-if="searchResultProducts.length > 0">
<div class="bg-white fixed md:top-auto top-28 md:mt-6 mt-1 left-0 right-3 md:right-0 sogesteFixed md:mt-5 w-full">
<div class="sogeste md:px-12 px-2 sm:mt-4 py-6 md:flex">
<div class="md:w-1/4">
<div style="margin-bottom: 20px">
<h1 class="md:text-lg text-base">Søgeresultater</h1>
<div id="dynamic-search-results"></div>
</div>
<div class="hidden md:block">
<template x-if="searchResultCategories.length > 0">
<div style="line-height: 28px">
<h1 class="md:text-lg text-base mb-2">Kategorier</h1>
<ul>
<template x-for="category in displayCategories">
<li>
<p class="hover-underline-animation font-medium text-lg">
<a :href="category.data.Url.value" x-html="getDecodedCategoryName(category.displayName)"></a>
</p>
</li>
</template>
</ul>
</div>
</template>
</div>
</div>
<div class="md:w-3/4">
<h1 class="md:text-lg text-base md:font-normal font-semibold md:border-t-0 border-t md:mt-0 mt-2 md:pt-0 pt-2"> Produkter </h1>
<div class="w-full leading-normal transition appearance-none text-grey-800 mt-1 md:grid md:grid-cols-2 md:gap-2 ">
<template x-for="product in displayProducts">
<a :href="product.data.Url.value">
<div class="flex p-2 mb-1 cursor-pointer border-b md:mx-5" tabindex="0" @keydown.arrow-up.prevent=" focusElement($event.target.previousElementSibling) || $refs.searchInput.focus() " @keydown.arrow-down.prevent="focusElement($event.target.nextElementSibling)">
<div class="flex">
<img :src="product.data.ImageUrl?.value" :alt="product.displayName" class="md:h-28 md:w-28 h-20 w-20 md:mt-0 mt-1.5 object-contain">
<div class="ml-3">
<div x-text="product.displayName" class="text-md"></div>
<div class="text-sm font-semibold mt-1"> Varenummer: <span x-text="product.productId"></span></div>
<div class="mt-2 text-sm" style="color:lightgrey;">
<span>Pris i butik </span>
<span x-html="getFormattedPrice(product.listPrice, 'listPrice')"></span>
</div>
<div class="mt-1 mb-4 text-2xl font-bold" style="color:#68A83B;">
<span x-html="getFormattedPrice(product.salesPrice, 'salesPrice')"></span>
</div>
</div>
</div>
</div>
</a>
</template>
</div>
<div class="hover-underline-animation md:text-2xl text-lg md:font-normal font-semibold md:border-t-0 md:mt-0 mt-2 md:pt-0 pt-2">
<button x-on:click="clickAction()" class="text-xl font-medium cursor-pointer flex items-center">Se alle resultater (<span x-text="searchResultProducts.length"></span>) <svg xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-10 h-10 ml-1 relative top-0.5">
<path stroke-linecap="round" stroke-linejoin="round" d="M17.25 8.25L21 12m0 0l-3.75 3.75M21 12H3"></path>
</svg>
</button>
</div>
</div>
<div class="md:w-3/4 block md:hidden mt-10">
<div class="">
<template x-if="searchResultCategories.length > 0">
<div style="line-height: 28px">
<h1 class="md:text-lg text-base mb-2">Kategorier</h1>
<template x-for="category in displayCategories">
<p class="hover-underline-animation font-medium text-lg">
<a :href="category.data.Url.value" x-html="getDecodedCategoryName(category.displayName)"></a>
</p>
</template>
</div>
</template>
</div>
</div>
</div>
</div>
</template>
<template x-if="searchResultProducts.length > 0">
<div class="search-backdrop"></div>
</template>
<div @notify.window="fixedBody()"></div>
<button type="submit" title="Search" class="action search sr-only" aria-label="Search"> Search </button>
</form>
GET https://www.vvs-eksperten.dk/relewise/index/index/
<form class="form minisearch relative" id="search_mini_form" x-ref="form" @submit.prevent="search()" action="https://www.vvs-eksperten.dk/relewise/index/index/" method="get">
<label class="hidden" for="search" data-role="minisearch-label">
<span>Search</span>
</label>
<span @input="$dispatch('notify')">
<input id="search" x-ref="searchInput" type="search" autocomplete="off" name="q" placeholder="Søg i produkter, kategorier og andet" maxlength="128"
class="md:relative absolute top-0 highlighInput w-full p-2 text-lg leading-normal transition appearance-none text-grey-800 focus:outline-none focus:border-transparent lg:text-xl rounded-sm md:mt-0 mt-14"
:class="searchResultProducts.length > 0 ? 'newposition' : ''" @input.debounce.250ms="suggest()" @keydown.arrow-down.prevent="focusElement($el.querySelector('[tabindex]'))" @keydown.enter="clickAction()">
</span>
<template x-if="searchResultProducts.length > 0">
<div class="bg-white fixed md:top-auto top-28 md:mt-6 mt-1 left-0 right-3 md:right-0 sogesteFixed md:mt-5 w-full">
<div class="sogeste md:px-12 px-2 sm:mt-4 py-6 md:flex">
<div class="md:w-1/4">
<div style="margin-bottom: 20px">
<h1 class="md:text-lg text-base">Søgeresultater</h1>
<div id="dynamic-search-results"></div>
</div>
<div class="hidden md:block">
<template x-if="searchResultCategories.length > 0">
<div style="line-height: 28px">
<h1 class="md:text-lg text-base mb-2">Kategorier</h1>
<ul>
<template x-for="category in displayCategories">
<li>
<p class="hover-underline-animation font-medium text-lg">
<a :href="category.data.Url.value" x-html="getDecodedCategoryName(category.displayName)"></a>
</p>
</li>
</template>
</ul>
</div>
</template>
</div>
</div>
<div class="md:w-3/4">
<h1 class="md:text-lg text-base md:font-normal font-semibold md:border-t-0 border-t md:mt-0 mt-2 md:pt-0 pt-2"> Produkter </h1>
<div class="w-full leading-normal transition appearance-none text-grey-800 mt-1 md:grid md:grid-cols-2 md:gap-2 ">
<template x-for="product in displayProducts">
<a :href="product.data.Url.value">
<div class="flex p-2 mb-1 cursor-pointer border-b md:mx-5" tabindex="0" @keydown.arrow-up.prevent=" focusElement($event.target.previousElementSibling) || $refs.searchInput.focus() " @keydown.arrow-down.prevent="focusElement($event.target.nextElementSibling)">
<div class="flex">
<img :src="product.data.ImageUrl?.value" :alt="product.displayName" class="md:h-28 md:w-28 h-20 w-20 md:mt-0 mt-1.5 object-contain">
<div class="ml-3">
<div x-text="product.displayName" class="text-md"></div>
<div class="text-sm font-semibold mt-1"> Varenummer: <span x-text="product.productId"></span></div>
<div class="mt-2 text-sm" style="color:lightgrey;">
<span>Pris i butik </span>
<span x-html="getFormattedPrice(product.listPrice, 'listPrice')"></span>
</div>
<div class="mt-1 mb-4 text-2xl font-bold" style="color:#68A83B;">
<span x-html="getFormattedPrice(product.salesPrice, 'salesPrice')"></span>
</div>
</div>
</div>
</div>
</a>
</template>
</div>
<div class="hover-underline-animation md:text-2xl text-lg md:font-normal font-semibold md:border-t-0 md:mt-0 mt-2 md:pt-0 pt-2">
<button x-on:click="clickAction()" class="text-xl font-medium cursor-pointer flex items-center">Se alle resultater (<span x-text="searchResultProducts.length"></span>) <svg xmlns="http://www.w3.org/2000/svg" fill="none"
viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-10 h-10 ml-1 relative top-0.5">
<path stroke-linecap="round" stroke-linejoin="round" d="M17.25 8.25L21 12m0 0l-3.75 3.75M21 12H3"></path>
</svg>
</button>
</div>
</div>
<div class="md:w-3/4 block md:hidden mt-10">
<div class="">
<template x-if="searchResultCategories.length > 0">
<div style="line-height: 28px">
<h1 class="md:text-lg text-base mb-2">Kategorier</h1>
<template x-for="category in displayCategories">
<p class="hover-underline-animation font-medium text-lg">
<a :href="category.data.Url.value" x-html="getDecodedCategoryName(category.displayName)"></a>
</p>
</template>
</div>
</template>
</div>
</div>
</div>
</div>
</template>
<template x-if="searchResultProducts.length > 0">
<div class="search-backdrop"></div>
</template>
<div @notify.window="fixedBody()"></div>
<button type="submit" title="Search" class="action search sr-only" aria-label="Search"> Search </button>
</form>
POST https://www.vvs-eksperten.dk/customer/account/loginPost/
<form class="form form-login" action="https://www.vvs-eksperten.dk/customer/account/loginPost/" method="post" x-data="initCustomerLoginForm()" @submit.prevent="submitForm()" id="modal-customer-login-form">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <button type="button" class="absolute right-0 top-0 mt-2 mr-2 z-21 text-gray-400 text-xl" @click="closeModal()">
<span class="sr-only">Luk</span>
<svg class="h-5 w-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path>
</svg>
</button>
<fieldset class="fieldset login">
<legend class="mb-3">
<h2 class="text-xl font-medium title-font text-primary"> Log ind på VVS-Eksperten webshop </h2>
</legend>
<div class="text-secondary-darker mb-8"> Hvis du har allerede har en konto, login med din email adresse. </div>
<div class="field email required">
<label class="label" for="email"><span>E-mail</span></label>
<div class="control w-full">
<input name="login[username]" class="form-input w-full" value="" autocomplete="off" id="email" type="email" title="E-mail">
</div>
</div>
<div class="field password required">
<label for="pass" class="label"><span>Adgangskode</span></label>
<div class="control w-full">
<input name="login[password]" class="form-input w-full" type="password" autocomplete="off" id="pass" title="Adgangskode">
</div>
</div>
<div class="actions-toolbar flex justify-between pt-6 pb-2 items-center">
<button type="submit" class="btn btn-primary" name="send">
<span>Log ind</span></button>
<a class="underline text-secondary" href="https://www.vvs-eksperten.dk/customer/account/forgotpassword/"><span>Glemt din adgangskode?</span>
</a>
</div>
<div>
<template x-if="displayErrorMessage">
<p class="text-red flex items-center">
<span class="inline-block w-8 h-8 mr-3">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
</svg>
</span>
<template x-for="errorMessage in errorMessages">
<span x-html="errorMessage"></span>
</template>
</p>
</template>
</div>
</fieldset>
</form>
GET https://www.vvs-eksperten.dk/relewise/index/index
<form class="form minisearch relative" id="search_mini_form" x-ref="form" @submit.prevent="search()" action="https://www.vvs-eksperten.dk/relewise/index/index" method="get">
<label class="hidden" for="search" data-role="minisearch-label">
<span>Søg</span>
</label>
<span @notify.window="$refs.searchInput.value.focusable">
<input id="search" x-ref="searchInput" type="search" autocomplete="off" name="q" value="" placeholder="Søg i produkter, kategorier og andet" maxlength="128"
class="w-full p-2 text-lg leading-normal transition appearance-none text-grey-800 focus:outline-none focus:border-transparent rounded searchBox-padding" @focus.once="suggest" @input.debounce.300="suggest"
@keydown.arrow-down.prevent="focusElement($el.querySelector('[tabindex]'))">
</span>
<template x-if="suggestions.length > 0">
<div class="w-full leading-normal transition appearance-none text-grey-800 flex flex-col mt-1">
<template x-for="suggestion in suggestions">
<div class="flex justify-between p-2 rounded bg-container-lighter even:bg-container mb-1 cursor-pointer
border border-container hover:bg-container-darker" tabindex="0" @click="search(suggestion.title)" @keydown.enter="search(suggestion.title)" @keydown.arrow-up.prevent="
focusElement($event.target.previousElementSibling) || $refs.searchInput.focus()
" @keydown.arrow-down.prevent="focusElement($event.target.nextElementSibling)">
<span x-text="suggestion.title"></span>
<span x-text="suggestion.num_results"></span>
</div>
</template>
</div>
</template>
<button type="submit" title="Søg" class="action search sr-only" aria-label="Search"> Søg </button>
</form>
POST
<form class="form form-login" method="post" @submit.prevent="submitForm();" id="login-form">
<div class="fieldset login">
<div class="field email required">
<label class="label" for="form-login-username" form="login-form">
<span>Email</span>
</label>
<div class="control">
<input name="username" id="form-login-username" x-ref="customer-email" @change="errors = 0" type="email" required="" class="form-input input-text">
</div>
</div>
<div class="field password required">
<label for="form-login-password" class="label" form="login-form">
<span>Adgangskode</span>
</label>
<div class="control">
<input name="password" id="form-login-password" type="password" class="form-input input-text" required="" x-ref="customer-password" @change="errors = 0">
</div>
</div>
<input name="context" type="hidden" value="checkout">
<div class="actions-toolbar flex justify-between pt-6 pb-2 items-center">
<button type="submit" class="inline-flex btn btn-primary disabled:opacity-75"> Log ind </button>
<a href="https://www.vvs-eksperten.dk/customer/account/forgotpassword/">
Glemt din adgangskode? </a>
</div>
</div>
</form>
GET https://www.vvs-eksperten.dk/relewise/index/index
<form class="form minisearch relative" id="search_mini_form" x-ref="form" @submit.prevent="search()" action="https://www.vvs-eksperten.dk/relewise/index/index" method="get">
<label class="hidden" for="search" data-role="minisearch-label">
<span>Søg</span>
</label>
<span @notify.window="$refs.searchInput.value.focusable">
<input id="search" x-ref="searchInput" type="search" autocomplete="off" name="q" value="" placeholder="Søg i produkter, kategorier og andet" maxlength="128"
class="w-full p-2 text-lg leading-normal transition appearance-none text-grey-800 focus:outline-none focus:border-transparent rounded searchBox-padding" @focus.once="suggest" @input.debounce.300="suggest"
@keydown.arrow-down.prevent="focusElement($el.querySelector('[tabindex]'))">
</span>
<template x-if="suggestions.length > 0">
<div class="w-full leading-normal transition appearance-none text-grey-800 flex flex-col mt-1">
<template x-for="suggestion in suggestions">
<div class="flex justify-between p-2 rounded bg-container-lighter even:bg-container mb-1 cursor-pointer
border border-container hover:bg-container-darker" tabindex="0" @click="search(suggestion.title)" @keydown.enter="search(suggestion.title)" @keydown.arrow-up.prevent="
focusElement($event.target.previousElementSibling) || $refs.searchInput.focus()
" @keydown.arrow-down.prevent="focusElement($event.target.nextElementSibling)">
<span x-text="suggestion.title"></span>
<span x-text="suggestion.num_results"></span>
</div>
</template>
</div>
</template>
<button type="submit" title="Søg" class="action search sr-only" aria-label="Search"> Søg </button>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/47/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/47/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="47">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-47.window="$el.src = $event.detail" alt="Outfit terrassevarmer med hjul - Sort" title="Outfit terrassevarmer med hjul - Sort" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/a/ba5abac16a91d952a5f80f453ef3f39c4937ac3c36e1405e83e226135d6571e2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520">
Outfit terrassevarmer </a>
<p class="text-xs"> 317210520 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Stor reflektorskærm</li>
<li>Elektronisk tænding</li>
<li>Med hjul</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb444d7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb444d7()" @update-prices-47.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="47" data-price-box="product-id-47"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-47" data-price-amount="1948" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.948,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-47" data-price-amount="2298.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">2.298,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(47)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11819/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11819/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="11819">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-tilbehor-til-luftluft-varmepumpe-copmax-montagesaet-t-35-kw-346761400" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-11819.window="$el.src = $event.detail" alt="Copmax montagesæt t/ 3,5 kW" title="Copmax varmepumpe 3,5kw montagepakke-346761400" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/4/346761400.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-tilbehor-til-luftluft-varmepumpe-copmax-montagesaet-t-35-kw-346761400">
Copmax montagesæt t/ 3,5 kW </a>
<p class="text-xs"> 346761400 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Varmepumpe montagepakke:</p>
<ul>
<li>Copmax rørsæt 5 meter</li>
<li>Jordstativ regulerbart lav model</li>
<li>Kondensslange 5 meter</li>
<li>Kabelkanal vægtilslutning</li>
<li>Kabelkanal 2 meter</li>
<li>Vibrationsdæmpersæt</li>
<li>Murgennemføring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb4f4f1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb4f4f1()" @update-prices-11819.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="11819" data-price-box="product-id-11819"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-11819" data-price-amount="1249" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.249,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-11819" data-price-amount="1470.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.470,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-tilbehor-til-luftluft-varmepumpe-copmax-montagesaet-t-35-kw-346761400" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(11819)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12637/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12637/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12637">
<a href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-cirkulationspumpe-til-brugsvand-nmt-sani-25-40n-130mm-cirkulationspumpe-380634002" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12637.window="$el.src = $event.detail" alt="Nmt Sani 25-40N-130mm cirkulationspumpe" title="Nmt sani pumpe 25-40-130mm til brugsvands cirkulation a-mærket" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/3/53f81c6f036dbabb7417575e2fc6bb0ee35511c4b8d07378de6dbbceaa6867e8.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-cirkulationspumpe-til-brugsvand-nmt-sani-25-40n-130mm-cirkulationspumpe-380634002">
Nmt Sani 25-40N-130mm cirkulationspumpe </a>
<p class="text-xs"> 380634002 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Kort byggelængde 130mm</li>
<li>Messing pumpehus</li>
<li>Til brugsvand</li>
<li>5 års garanti</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb57a6d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb57a6d()" @update-prices-12637.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12637" data-price-box="product-id-12637"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-12637" data-price-amount="1347" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.347,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-12637" data-price-amount="1585.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.585,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-cirkulationspumpe-til-brugsvand-nmt-sani-25-40n-130mm-cirkulationspumpe-380634002" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12637)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13350/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13350/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13350">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13350.window="$el.src = $event.detail" alt="Copmax Lomo varmepumpe luft/luft 3,5 kW" title="Copmax Lomo varmepumpe luft/luft 3,5 kW" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/2/a2fa1fb182c6f39690e5161319db17f3aabb9e66bf1944e55992dd579c5b5620.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10">
Copmax Lomo varmepumpe luft/luft 3,5 kW </a>
<p class="text-xs"> 346760A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>SCOP 4,10</li>
<li>R32 Kølemiddel</li>
<li>Inkl. fjernbetjening</li>
<li>Indbygget WiFi</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb5f608() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb5f608()" @update-prices-13350.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13350" data-price-box="product-id-13350"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-13350" data-price-amount="3795" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.795,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-13350" data-price-amount="4495.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">4.495,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/4/346760A10_Energimærke.png'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//T/e/TekniskDatabladLOMOLuftvarmepumper_2022_0.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13350)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay9pbmRleC5waHA_cm91dGU9cHJvZHVjdC9wcm9kdWN0L2dldFByb2R1Y3RBdHRhY2htZW50RmlsZSZhdHRhY2htZW50X2lkPTE3NDIzJmdhZF9zb3VyY2U9MQ~~/product/24462/
<form method="post"
action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay9pbmRleC5waHA_cm91dGU9cHJvZHVjdC9wcm9kdWN0L2dldFByb2R1Y3RBdHRhY2htZW50RmlsZSZhdHRhY2htZW50X2lkPTE3NDIzJmdhZF9zb3VyY2U9MQ~~/product/24462/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="24462">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmtvandsbeholder-el-vandvarmer-345119960-345119970-345119950" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-24462.window="$el.src = $event.detail" alt="Pannex ECO El vandvarmer" title="Pannex aqua varmtvandsbeholder" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/b/0b45579772c97118c8dc94ad880ebcbc2d8af403cee2ab22c2b24f79fd9260a6.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmtvandsbeholder-el-vandvarmer-pannex-eco-el-vandvarmer-80-l-345119950">
Pannex ECO El vandvarmer </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Til både 230V samt 400V</p>
<ul>
<li>80 Liter</li>
<li>100 Liter</li>
<li>140 Liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_24462() {
const configurableOptionsComponent = initConfigurableOptions('24462', {
"attributes": {
"163": {
"id": "163",
"code": "volume",
"label": "Volume",
"options": [{
"id": "9994",
"label": "100 L",
"products": ["24460"]
}, {
"id": "10012",
"label": "140 L",
"products": ["24461"]
}, {
"id": "10164",
"label": "80 L",
"products": ["24459"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"24459": {
"baseOldPrice": {
"amount": 2764.8
},
"oldPrice": {
"amount": 3456.000001
},
"basePrice": {
"amount": 2349.6
},
"finalPrice": {
"amount": 2937.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"24460": {
"baseOldPrice": {
"amount": 3036
},
"oldPrice": {
"amount": 3795.000001
},
"basePrice": {
"amount": 2944.8
},
"finalPrice": {
"amount": 3681.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"24461": {
"baseOldPrice": {
"amount": 3676
},
"oldPrice": {
"amount": 4595.000001
},
"basePrice": {
"amount": 3565.6
},
"finalPrice": {
"amount": 4457.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 2764.8
},
"oldPrice": {
"amount": 3456.000001
},
"basePrice": {
"amount": 2349.6
},
"finalPrice": {
"amount": 2937.000001
}
},
"productId": "24462",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"24459": {
"163": "10164"
},
"24460": {
"163": "9994"
},
"24461": {
"163": "10012"
}
},
"salable": {
"163": {
"10164": ["24459"],
"9994": ["24460"],
"10012": ["24461"]
}
},
"canDisplayShowOutOfStockStatus": true,
"preSelectedGallery": [],
"channel": "website",
"salesChannelCode": "base",
"sku": {
"24459": "345119950",
"24460": "345119960",
"24461": "345119970"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-24462", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_24462()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec9f70fe60() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec9f70fe60()" @update-prices-24462.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="24462" data-price-box="product-id-24462">
<span class="catalog-price-rule configurable-final-price">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-24462" data-price-amount="2937" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.937,-</span> </span>
</span>
</span>
<span class="old-price configurable-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-24462" data-price-amount="3456.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">3.456,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--yellow w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/4/345119950_OPUS_EL_80.pdf" target="_blank">
<span>C</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//P/a/Pannex_EL_Datablad.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmtvandsbeholder-el-vandvarmer-pannex-eco-el-vandvarmer-80-l-345119950" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(24462)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12028/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12028/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 16% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12028">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-whisky-regnvandstonde-240-liter-med-aftapshane-273044055" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12028.window="$el.src = $event.detail" alt="Whisky Regnvandstønde 240 Liter med aftapshane" title="Whisky Regnvandstønde 240 Liter med aftapshane" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/e/1/e15d7d48b262646587fe01090ab5f12dd73314f331b934acc86ef97b5831ceb4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-whisky-regnvandstonde-240-liter-med-aftapshane-273044055">
Whisky Regnvandstønde </a>
<p class="text-xs"> 273044055 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Inkl. aftapshane og låg</li>
<li>240 Liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb6d485() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb6d485()" @update-prices-12028.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12028" data-price-box="product-id-12028"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-12028" data-price-amount="1149" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.149,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-12028" data-price-amount="1372.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.372,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-whisky-regnvandstonde-240-liter-med-aftapshane-273044055" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12028)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6387/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6387/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 24% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6387">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6387.window="$el.src = $event.detail" alt="Garden Solbruser m/20 liter beholder ude bruser" title="Garden Solbruser m/20 liter beholder ude bruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/4/d4d5615c6e41cf2df1f94b3de249f9d2b2c1c73c581355006af0307a542f23b4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189">
Garden Solbruser </a>
<p class="text-xs"> 273042189 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vandbeholder 20 liter</li>
<li>Med blandingsbatteri</li>
<li>Højde 227 cm</li>
<li>Udendørsbruser</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd374afb7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd374afb7()" @update-prices-6387.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6387" data-price-box="product-id-6387"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6387" data-price-amount="995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-6387" data-price-amount="1315.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.315,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6387)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="74">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-74.window="$el.src = $event.detail" alt="Cool Well Øl køler" title="Cool Well Øl køler" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/0/1031ab5dbb5f41431488c5e55af493c1ded6d8e3483ff11dfe8148eb3b47c04a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000">
Cool Well Øl køler </a>
<p class="text-xs"> 273046000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til 24 dåser og 1 flaske vin</li>
<li>Hurtig vej til kolde drikke </li>
<li>Udnytte jordens køling</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb75210() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb75210()" @update-prices-74.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="74" data-price-box="product-id-74"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-74" data-price-amount="389" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">389,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-74" data-price-amount="459.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">459,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(74)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60011/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60011/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60011">
<a href="https://www.vvs-eksperten.dk/669994660" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60011.window="$el.src = $event.detail" alt="Swim & Fun basic pool fritstående familiepool" title="Swim & Fun basic pool fritstående familiepool" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994660_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/669994660">
Swim & Fun komplet poolpakke </a>
<p class="text-xs"> 669994660 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>17450 Liter</li>
<li>Diameter 4,6 m</li>
<li>Komplet poolpakke</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb7d881() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb7d881()" @update-prices-60011.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60011" data-price-box="product-id-60011"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60011" data-price-amount="3495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60011" data-price-amount="4999.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">4.999,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/669994660" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60011)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60010/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60010/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 36% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60010">
<a href="https://www.vvs-eksperten.dk/669994650" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60010.window="$el.src = $event.detail" alt="Bestway familiepool 450 liter oppustelig" title="Bestway familiepool 450 liter oppustelig" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994650_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/669994650">
Bestway familiepool </a>
<p class="text-xs"> 669994650 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Oppustelig</li>
<li>450 Liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb8509f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb8509f()" @update-prices-60010.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60010" data-price-box="product-id-60010"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60010" data-price-amount="159" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">159,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60010" data-price-amount="249.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">249,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/669994650" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60010)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5193/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5193/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 34% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5193">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5193.window="$el.src = $event.detail" alt="Mobil Aircondition 7000 BTU 780W" title="Mobil Aircondition 7000 BTU 780W" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/i/aircon7000_denne.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000">
Mobil Aircondition, affugter op til 19m² </a>
<p class="text-xs"> AIRCON7000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ventilation</li>
<li>24 timers-timer</li>
<li>Køling 10-15m²</li>
<li>Affugter op til 19m²</li>
<li>Energiklasse A</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb8d217() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb8d217()" @update-prices-5193.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5193" data-price-box="product-id-5193"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5193" data-price-amount="1449" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.449,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-5193" data-price-amount="2217.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">2.217,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--yellow w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/A/I/AIRCON7000_energimærke.jpg'})">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//m/a/manual_aircon7000.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5193)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59397/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59397/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 21% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59397">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722255a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59397.window="$el.src = $event.detail" alt="Atlanta udendørsbruser med kartud rustfrit stål" title="Atlanta udendørsbruser med kartud rustfrit stål" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722255a10_2.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722255a10">
Atlanta udendørsbruser med hovedbruser & kartud </a>
<p class="text-xs"> 722255A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø200mm Hovedbruser</li>
<li>ø100mm Håndbruser</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb94788() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb94788()" @update-prices-59397.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59397" data-price-box="product-id-59397"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59397" data-price-amount="695" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">695,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-59397" data-price-amount="888.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">888,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722255a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59397)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60168/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60168/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 20% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60168">
<a href="https://www.vvs-eksperten.dk/swim-fun-solvarmer-xp2-669994700" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60168.window="$el.src = $event.detail" alt="Swim & Fun Solar Heater XP2 til Pool" title="Swim & Fun Solar Heater XP2 til Pool" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994700_3.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-solvarmer-xp2-669994700">
Swim & Fun Solvarme XP2 til Pool </a>
<p class="text-xs"> 669994700 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Gratis miljøvenlig varme</li>
<li>Hæver temperaturen 3-5°</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb9bf37() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb9bf37()" @update-prices-60168.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60168" data-price-box="product-id-60168"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60168" data-price-amount="395" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">395,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60168" data-price-amount="499.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">499,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-solvarmer-xp2-669994700" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60168)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5320/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5320/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5320">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-9000-med-vindueskit-aircon9000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5320.window="$el.src = $event.detail" alt="Mobil Aircondition 9000 med vindueskit" title="Mobil Aircondition 9000 med vindueskit" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/i/aircon9000_4_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-9000-med-vindueskit-aircon9000">
Mobil Aircondition 9000 </a>
<p class="text-xs"> AIRCON9000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ventilation</li>
<li>24 timers-timer</li>
<li>Køling 10-15m²</li>
<li>Affugte op til 19m²</li>
<li>Energiklasse A</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fba60fa() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fba60fa()" @update-prices-5320.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5320" data-price-box="product-id-5320"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5320" data-price-amount="2151.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.151,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5320" data-price-amount="2217.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">2.217,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--yellow w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/A/I/AIRCON9000_Energimærke.png'})">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//A/I/AIRCON9000_Datablad.png" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-9000-med-vindueskit-aircon9000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5320)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10339/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10339/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10339">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-bordventilator-med-3-hastigheder-og-rotations-mulighed-80000014010" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10339.window="$el.src = $event.detail" alt="Bordventilator med 3 hastigheder og rotations mulighed" title="Bordventilator ø30 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/b/8b54faffa22f4d627421f86d60450f15761ed276787cb18f222e0eab0350604c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-bordventilator-med-3-hastigheder-og-rotations-mulighed-80000014010">
Bordventilator </a>
<p class="text-xs"> 80000014010 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Nedkøling på en varm sommerdag</p>
<ul>
<li>3 Hastigheder</li>
<li>Med rotations mulighed</li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbac559() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbac559()" @update-prices-10339.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10339" data-price-box="product-id-10339"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10339" data-price-amount="151.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">151,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10339" data-price-amount="159.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">159,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-bordventilator-med-3-hastigheder-og-rotations-mulighed-80000014010" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10339)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5194/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5194/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5194">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-ventilator-tarn-45w-hojde-790-mm-80000014025" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5194.window="$el.src = $event.detail" alt="Ventilator tårn 45w - Højde 790 mm" title="Ventilator tårn air condition-80000014025" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/1/c1e20482c5d80a3ea242b77211250213571365e581034b5c77dd5d49acf675bb.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-ventilator-tarn-45w-hojde-790-mm-80000014025">
Ventilator tårn 45w - Højde 790 mm </a>
<p class="text-xs"> 80000014025 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Roterer 90º</li>
<li>Dækker op til 8 m</li>
<li>3 hastigheder</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbb32ba() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbb32ba()" @update-prices-5194.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5194" data-price-box="product-id-5194"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5194" data-price-amount="296.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">296,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5194" data-price-amount="312.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">312,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-ventilator-tarn-45w-hojde-790-mm-80000014025" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5194)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10872/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10872/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10872">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-hi-line-plus-loftsventilator-1400mm-15000-m3h-354329980" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10872.window="$el.src = $event.detail" alt="Hi-Line Plus loftsventilator 1400mm - 15000 m³/h" title="Nwan56 loftsventilator - 12470 m3/h" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/90023544f6ee838db515bfa5316d72c6080ebf5236e06ce52694fe0a9e859b7d.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-hi-line-plus-loftsventilator-1400mm-15000-m3h-354329980">
Hi-Line Plus loftsventilator 1400mm - 15000 m³/h </a>
<p class="text-xs"> 354329980 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vingediameter 1400 mm</li>
<li>Excl. styring </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbb9113() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbb9113()" @update-prices-10872.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10872" data-price-box="product-id-10872"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10872" data-price-amount="1217.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.217,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10872" data-price-amount="1269.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">1.269,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-hi-line-plus-loftsventilator-1400mm-15000-m3h-354329980" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10872)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25516/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25516/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25516">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-pumpeshunt-046558430" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25516.window="$el.src = $event.detail" alt="DVI Mini gulvvarmeshunt 1 kreds til fjernvarme og centralvarme" title="DVI Mini gulvvarmeshunt 1 kreds til fjernvarme og centralvarme" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/8/28b52aab52e95c86a5669437e8f9ab8a6a0f36dee473bb8e76706b5ab41ef8f9.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-pumpeshunt-046558430">
DVI Mini gulvvarmshunt til fjernvarme og centralvarme </a>
<p class="text-xs"> 046558430 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Manuel styring</li>
<li>Til centralvarme (2bar)</li>
<li>Til fjernvarme (10bar)</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbcd45e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbcd45e()" @update-prices-25516.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25516" data-price-box="product-id-25516"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25516" data-price-amount="3137.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.137,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-25516" data-price-amount="3235.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">3.235,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-pumpeshunt-046558430" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25516)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13350/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13350/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13350">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13350.window="$el.src = $event.detail" alt="Copmax Lomo varmepumpe luft/luft 3,5 kW" title="Copmax Lomo varmepumpe luft/luft 3,5 kW" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/2/a2fa1fb182c6f39690e5161319db17f3aabb9e66bf1944e55992dd579c5b5620.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10">
Copmax Lomo varmepumpe luft/luft 3,5 kW </a>
<p class="text-xs"> 346760A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>SCOP 4,10</li>
<li>R32 Kølemiddel</li>
<li>Inkl. fjernbetjening</li>
<li>Indbygget WiFi</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb5f608() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb5f608()" @update-prices-13350.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13350" data-price-box="product-id-13350"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-13350" data-price-amount="3795" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.795,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-13350" data-price-amount="4495.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">4.495,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/4/346760A10_Energimærke.png'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//T/e/TekniskDatabladLOMOLuftvarmepumper_2022_0.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13350)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5400/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5400/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5400">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-elsa-pilleovn-8-kw-sort-305502a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5400.window="$el.src = $event.detail" alt="Elsa pilleovn 8 kW med 14 kg stor pillemagasin" title="Elsa pilleovn 8 kW med 14 kg stor pillemagasin" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/c/ac3745b0492c8c6be734d02ef364d4a6290638bdb136bb9446fc3d7da948f3dd.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-elsa-pilleovn-8-kw-sort-305502a10">
Elsa pilleovn m/14 kg pillemagasin </a>
<p class="text-xs"> 305502A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Effekt 2,5 - 8,0 kW</li>
<li>Vandret aftræk</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbd46cd() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbd46cd()" @update-prices-5400.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5400" data-price-box="product-id-5400"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-5400" data-price-amount="8245.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">8.245,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/305502A10_energimærke.pdf" target="_blank">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//E/L/ELSATekniskdata_305502A10.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-elsa-pilleovn-8-kw-sort-305502a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5400)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25931/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25931/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25931">
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25931.window="$el.src = $event.detail" alt="Sargas 3 Brændeovn med sideglas" title="Sargas 3 Brændeovn med sideglas" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/0/306019a20_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20">
Sargas 3 Brændeovn </a>
<p class="text-xs"> 306019A20 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Op til 81% virkningsgrad</li>
<li>Flere tilslutningsmuligheder</li>
<li>Med side glas</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbdb5e1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbdb5e1()" @update-prices-25931.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25931" data-price-box="product-id-25931"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-25931" data-price-amount="16553.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">16.553,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/0/306019a20_energim_rke.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/306019a20_datablad.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25931)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59401/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59401/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59401">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-braendeovn-306021a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59401.window="$el.src = $event.detail" alt="Blæser til brændeovn" title="Blæser til brændeovn" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/0/306021a10_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-braendeovn-306021a10">
Blæser til brændeovn </a>
<p class="text-xs"> 306021A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Virker ved ca. 60 °C</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbe3e1f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbe3e1f()" @update-prices-59401.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59401" data-price-box="product-id-59401"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59401" data-price-amount="255.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">255,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-59401" data-price-amount="269.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">269,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-braendeovn-306021a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59401)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12184/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12184/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12184">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-skorsten-stalskorsten-vento-pellet-stalskorsten-o150250-mm-vento-pellet-skorstenspakke-udvendig-3-meter-o150mm-317332e10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12184.window="$el.src = $event.detail" alt="Vento Pellet skorstenspakke udvendig - 3 meter ø150mm" title="Vento Pellet skorstenspakke udvendig - 3 meter ø150mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/9/b9af1915e37b75b90a0c35c75cf3b7bc869aadcdb0a178782b22ef052fdee165.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-skorsten-stalskorsten-vento-pellet-stalskorsten-o150250-mm-vento-pellet-skorstenspakke-udvendig-3-meter-o150mm-317332e10">
Vento Pellet skorstenspakke udvendig - 3 meter ø150mm </a>
<p class="text-xs"> 317332E10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Udvendig gennem væg</li>
<li>Isoleret skorsten</li>
<li>ø150/250mm</li>
<li>Total 3 meter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbec1b0() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbec1b0()" @update-prices-12184.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12184" data-price-box="product-id-12184"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-12184" data-price-amount="11425.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">11.425,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-skorsten-stalskorsten-vento-pellet-stalskorsten-o150250-mm-vento-pellet-skorstenspakke-udvendig-3-meter-o150mm-317332e10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12184)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3647/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3647/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="3647">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-gulvplade-til-pilleovn-glas-gulvplade-til-braendeovn-fladbue-306020000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-3647.window="$el.src = $event.detail" alt="Glas gulvplade til brændeovn fladbue" title="Glas gulvplade til brændeovn fladbue" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/b/1bc1f9f5b23bea71cf937109b3b348a3feab39a777615493ba4fb881c40fdd2e.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-gulvplade-til-pilleovn-glas-gulvplade-til-braendeovn-fladbue-306020000">
Glas gulvplade til brændeovn fladbue </a>
<p class="text-xs"> 306020000 </p>
<div class="mb-5 mt-4 product-card-short-desc"> M/ poleret kant </div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc00029() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc00029()" @update-prices-3647.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="3647" data-price-box="product-id-3647"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-3647" data-price-amount="950.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">950,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-3647" data-price-amount="1004.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">1.004,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-gulvplade-til-pilleovn-glas-gulvplade-til-braendeovn-fladbue-306020000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(3647)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15887/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15887/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="15887">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-radiator-el-radiator-adax-vps-varmepanel-ip24-400w-opvarmer-ca-4m2-80000670004" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-15887.window="$el.src = $event.detail" alt="ADAX VPS Varmepanel IP24" title="ADAX VPS Varmepanel-80000670004" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/5/855a442bf34347362d829881d90aaf421e5a088d098607dd84312f0e3b81a608.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-el-radiator-80000670004-80000670006-80000670008-80000670010">
ADAX VPS Varmepanel IP24 </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vælg mellem 400W til 1000W</li>
<li>m/ledning og vægbeslag</li>
<li>Digital termostat</li>
<li>Højde 325 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_15887() {
const configurableOptionsComponent = initConfigurableOptions('15887', {
"attributes": {
"167": {
"id": "167",
"code": "effect",
"label": "Effekt",
"options": [{
"id": "10237",
"label": "1000 W",
"products": ["15886"]
}, {
"id": "10500",
"label": "400 W",
"products": ["15883"]
}, {
"id": "10569",
"label": "600 W",
"products": ["15884"]
}],
"position": "0"
},
"146": {
"id": "146",
"code": "length",
"label": "L\u00e6ngde",
"options": [{
"id": "3456",
"label": "388 mm",
"products": ["15883"]
}, {
"id": "3511",
"label": "542 mm",
"products": ["15884"]
}, {
"id": "3549",
"label": "696 mm",
"products": ["15885"]
}, {
"id": "3583",
"label": "848 mm",
"products": ["15886"]
}],
"position": "1"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"15886": {
"baseOldPrice": {
"amount": 1375.2
},
"oldPrice": {
"amount": 1719.000001
},
"basePrice": {
"amount": 1320
},
"finalPrice": {
"amount": 1650.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15883": {
"baseOldPrice": {
"amount": 756
},
"oldPrice": {
"amount": 945.000001
},
"basePrice": {
"amount": 719.2
},
"finalPrice": {
"amount": 899.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15884": {
"baseOldPrice": {
"amount": 844
},
"oldPrice": {
"amount": 1055.000001
},
"basePrice": {
"amount": 799.2
},
"finalPrice": {
"amount": 999.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15885": {
"baseOldPrice": {
"amount": 937.6
},
"oldPrice": {
"amount": 1172.000001
},
"basePrice": {
"amount": 900
},
"finalPrice": {
"amount": 1125.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 756
},
"oldPrice": {
"amount": 945.000001
},
"basePrice": {
"amount": 719.2
},
"finalPrice": {
"amount": 899.000001
}
},
"productId": "15887",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"15886": {
"167": "10237",
"146": "3583"
},
"15883": {
"167": "10500",
"146": "3456"
},
"15884": {
"167": "10569",
"146": "3511"
},
"15885": {
"167": null,
"146": "3549"
}
},
"salable": {
"167": {
"10237": ["15886"],
"10500": ["15883"],
"10569": ["15884"],
"": ["15885"]
},
"146": {
"3583": ["15886"],
"3456": ["15883"],
"3511": ["15884"],
"3549": ["15885"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"15886": "80000670010",
"15883": "80000670004",
"15884": "80000670006",
"15885": "80000670008"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-15887", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_15887()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fc072e4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc072e4()" @update-prices-15887.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="15887" data-price-box="product-id-15887"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-15887" data-price-amount="899.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">899,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-el-radiator-80000670004-80000670006-80000670008-80000670010" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(15887)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11436/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11436/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="11436">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-vf2rum" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-11436.window="$el.src = $event.detail" alt="Varmeflytningssæt 2 rum m/Kanalventilator 240 m³/h" title="Varmeflytningssæt 2 rum m/Kanalventilator 240 m³/h" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/8/981b0d265029cf01c7dd622a9787a8b03f96cec66438480a97a6b84789b98c8e.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-vf2rum">
Varmeflytningssæt 2 rum m/Kanalventilator 240 m³/h </a>
<p class="text-xs"> VF2RUM </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Flytter overskudsvarmen</li>
<li>Kanalventilator 240 m³/h</li>
<li>3 stk. loftventiler</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc21aed() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc21aed()" @update-prices-11436.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="11436" data-price-box="product-id-11436"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-11436" data-price-amount="2280.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.280,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-11436" data-price-amount="2351.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">2.351,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-vf2rum" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(11436)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5193/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5193/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 34% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5193">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5193.window="$el.src = $event.detail" alt="Mobil Aircondition 7000 BTU 780W" title="Mobil Aircondition 7000 BTU 780W" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/i/aircon7000_denne.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000">
Mobil Aircondition, affugter op til 19m² </a>
<p class="text-xs"> AIRCON7000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ventilation</li>
<li>24 timers-timer</li>
<li>Køling 10-15m²</li>
<li>Affugter op til 19m²</li>
<li>Energiklasse A</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb8d217() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb8d217()" @update-prices-5193.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5193" data-price-box="product-id-5193"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5193" data-price-amount="1449" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.449,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-5193" data-price-amount="2217.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">2.217,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--yellow w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/A/I/AIRCON7000_energimærke.jpg'})">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//m/a/manual_aircon7000.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5193)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10161/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10161/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10161">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-1-rums-varmegenvinding-353425100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10161.window="$el.src = $event.detail" alt="1-rums varme genvinding" title="1-rums varme genvinding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/f/1ff9b1229b2ef341119d72221df3dd4822b5b59b35aef1a5f6c3481ad5d3562a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-1-rums-varmegenvinding-353425100">
1-rums varmegenvinding </a>
<p class="text-xs"> 353425100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Boligventilation</p>
<ul>
<li>Støjniveau 10-29dB</li>
<li>Forbrug 1,2-2,6W</li>
<li>Varmegenvinding 25m³/h</li>
<li>Frisk luft - lavt varmetab</li>
<li>Skiftevis ind- og udsugning</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc2873c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc2873c()" @update-prices-10161.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10161" data-price-box="product-id-10161"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10161" data-price-amount="2046.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.046,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10161" data-price-amount="2109.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">2.109,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-1-rums-varmegenvinding-353425100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10161)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5278/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5278/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5278">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-genpak6" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5278.window="$el.src = $event.detail" alt="Dantherm RCV 320 kompakt ventilationsaggregat pakke 100 m²" title="Dantherm RCV 320 kompakt ventilationsaggregat pakke 100 m²" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/g/e/genpak6_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-genpak6">
Dantherm RCV 320 ventilationspakke 100 m² </a>
<p class="text-xs"> GENPAK6 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet til 100 m²</li>
<li>Dantherm RCV 320</li>
<li>Med faste spirorør</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc2e61d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc2e61d()" @update-prices-5278.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5278" data-price-box="product-id-5278"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-5278" data-price-amount="19995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">19.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-genpak6" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5278)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/1639/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/1639/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="1639">
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-pandelampe-led-90-lumen-med-hvid-og-rod-led-245010120" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-1639.window="$el.src = $event.detail" alt="Pandelampe LED med hvid og rød LED" title="Pandelampe LED med hvid og rød LED" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/4/245010120_11.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-led-projektor-pandelampe-led-90-lumen-med-hvid-og-rod-led-245010120">
Pandelampe LED </a>
<p class="text-xs"> 245010120 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Med 4 indstillinger</li>
<li>Excl. 3 stk. AAA batteri</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec2dfe23ef() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2dfe23ef()" @update-prices-1639.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="1639" data-price-box="product-id-1639"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-1639" data-price-amount="39.5" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">39,50</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-1639" data-price-amount="79.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">79,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-pandelampe-led-90-lumen-med-hvid-og-rod-led-245010120" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(1639)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2288/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2288/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2288">
<a href="https://www.vvs-eksperten.dk/el-artikler-batterier-maxell-batteri-aa-pakke-med-32-stk-80000019107" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2288.window="$el.src = $event.detail" alt="Maxell Batteri Aa - 32 Stk" title="Maxell AA-batteri 32stk-80000019107" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/d/cdf26079f4b305b55caa4500148a4e8ee53bb31872aa7163902094acf4dfbdb9.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-batterier-maxell-batteri-aa-pakke-med-32-stk-80000019107">
Maxell Batteri Aa - 32 Stk </a>
<p class="text-xs"> 80000019107 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Super Alkaline</p>
<p>LR6</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc4473c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc4473c()" @update-prices-2288.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2288" data-price-box="product-id-2288"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2288" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2288" data-price-amount="105.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">105,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-batterier-maxell-batteri-aa-pakke-med-32-stk-80000019107" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2288)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/25866/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/25866/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Skarp pris! </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25866">
<a href="https://www.vvs-eksperten.dk/solar-panel-swp50w-902015050" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25866.window="$el.src = $event.detail" alt="Solar Panel Swp50w" title="Solar Panel Swp50w" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902015050_1_50w.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/solar-panel-swp50w-902015050">
Solar Panel Swp50w </a>
<p class="text-xs"> 902015050 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ideel til båddæk og autocamper</li>
<li>50 Watt solpanel</li>
<li>Excl. batteri</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec66b2560d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec66b2560d()" @update-prices-25866.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25866" data-price-box="product-id-25866"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25866" data-price-amount="399.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">399,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-25866" data-price-amount="420.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">420,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/solar-panel-swp50w-902015050" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25866)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13322/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13322/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13322">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmtvandsbeholder-gennemstromsvandvarmer-til-gas-pannex-gasvandvarmer-10-liter-udebruser-tilsluttes-flaskegas-345010a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13322.window="$el.src = $event.detail" alt="Pannex Gasvandvarmer incl. håndbruser og bruserslange" title="Pannex Gasvandvarmer incl. håndbruser og bruserslange" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/d/2d4c9e38921f527cdc42917a79a230ced6d09c1f4e9b299be95ce568c991db0a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmtvandsbeholder-gennemstromsvandvarmer-til-gas-pannex-gasvandvarmer-10-liter-udebruser-tilsluttes-flaskegas-345010a10">
Pannex Gasvandvarmer & udebruser </a>
<p class="text-xs"> 345010A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Kun til udendørs brug</li>
<li>Tilsluttes flaskegas</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc497d9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc497d9()" @update-prices-13322.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13322" data-price-box="product-id-13322"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-13322" data-price-amount="1519.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.519,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-13322" data-price-amount="1582.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">1.582,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmtvandsbeholder-gennemstromsvandvarmer-til-gas-pannex-gasvandvarmer-10-liter-udebruser-tilsluttes-flaskegas-345010a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13322)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="74">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-74.window="$el.src = $event.detail" alt="Cool Well Øl køler" title="Cool Well Øl køler" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/0/1031ab5dbb5f41431488c5e55af493c1ded6d8e3483ff11dfe8148eb3b47c04a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000">
Cool Well Øl køler </a>
<p class="text-xs"> 273046000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til 24 dåser og 1 flaske vin</li>
<li>Hurtig vej til kolde drikke </li>
<li>Udnytte jordens køling</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb75210() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb75210()" @update-prices-74.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="74" data-price-box="product-id-74"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-74" data-price-amount="389" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">389,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-74" data-price-amount="459.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">459,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(74)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10135/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10135/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 22% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10135">
<a href="https://www.vvs-eksperten.dk/badevaerelse-rengoring-til-badevaerelse-513000000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10135.window="$el.src = $event.detail" alt="Håndsprit med glycerin 85% 250 ml" title="Håndsprit med glycerin 85% 250 ml" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/2/62c9fb9dcc5b27b6b7312c03db3eae393d538ee0c825ce97f1ea2c2aa3c92629.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-rengoring-til-badevaerelse-513000000">
Håndsprit med glycerin 85% 250 ml </a>
<p class="text-xs"> 513000000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>God håndhygiejne vigtigt</p>
<p>Med glycerin</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc4ed23() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc4ed23()" @update-prices-10135.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10135" data-price-box="product-id-10135"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10135" data-price-amount="34.95" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">34,95</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-10135" data-price-amount="45.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">45,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-rengoring-til-badevaerelse-513000000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10135)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/43/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/43/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="43">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-til-gas-317210500" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-43.window="$el.src = $event.detail" alt="Outfit terrassevarmer til gas" title="317210500" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/2/42a857fd1554fb197cddfaada6445b22e5fec0fadb7e94b7478460c0982abbbf.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-til-gas-317210500">
Outfit terrassevarmer til gas </a>
<p class="text-xs"> 317210500 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Stor reflektorskærm</li>
<li>Trinløs varmeregulering</li>
<li>Elektronisk tænding</li>
<li>Sort</li>
<li>13 kW</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc545cf() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc545cf()" @update-prices-43.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="43" data-price-box="product-id-43"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-43" data-price-amount="1399.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.399,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-43" data-price-amount="1458.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">1.458,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-til-gas-317210500" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(43)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59806/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59806/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59806">
<a href="https://www.vvs-eksperten.dk/engangshandsker-252414175" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59806.window="$el.src = $event.detail" alt="Engangshandsker, pakning med 100 stk." title="Engangshandsker, pakning med 100 stk." src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/5/252414175_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/engangshandsker-252414175">
Engangshandsker </a>
<p class="text-xs"> 252414175 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Pakning med 100 stk.</li>
<li>Universal</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc59449() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc59449()" @update-prices-59806.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59806" data-price-box="product-id-59806"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-59806" data-price-amount="19.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">19,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/engangshandsker-252414175" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59806)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59907/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59907/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59907">
<a href="https://www.vvs-eksperten.dk/245011112" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59907.window="$el.src = $event.detail" alt="Lille brandslukker med holder til væggen - Sikkerhed ved havegrill og brændeovn" title="Lille brandslukker med holder til væggen - Sikkerhed ved havegrill og brændeovn" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/4/245011112.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/245011112">
112 Brandslukker 400ml </a>
<p class="text-xs"> 245011112 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Sikkerhed ved havegrill og brændeovn</li>
<li>Nem at bruge</li>
<li>Meget effektiv</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd378d603() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd378d603()" @update-prices-59907.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59907" data-price-box="product-id-59907"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-59907" data-price-amount="219.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">219,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/245011112" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59907)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1734/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1734/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="1734">
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-rogalarm-rogalarm-300-value-med-9v-batteri-80277100000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-1734.window="$el.src = $event.detail" alt="Røgalarm 300 Value med 9v batteri" title="Røgalarm 300 value 9v" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/f/9f8880920f9696aa72f89f1aa644718e4d761ec04822e72a0747bc29bbe9a73c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-rogalarm-rogalarm-300-value-med-9v-batteri-80277100000">
Røgalarm 300 Value med 9v batteri </a>
<p class="text-xs"> 80277100000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Incl. 9V batteri</li>
<li>Optisk røgalarm</li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc5e35c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc5e35c()" @update-prices-1734.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="1734" data-price-box="product-id-1734"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-1734" data-price-amount="47.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">47,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-1734" data-price-amount="50.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">50,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-rogalarm-rogalarm-300-value-med-9v-batteri-80277100000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(1734)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59401/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59401/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59401">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-braendeovn-306021a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59401.window="$el.src = $event.detail" alt="Blæser til brændeovn" title="Blæser til brændeovn" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/0/306021a10_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-braendeovn-306021a10">
Blæser til brændeovn </a>
<p class="text-xs"> 306021A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Virker ved ca. 60 °C</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbe3e1f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbe3e1f()" @update-prices-59401.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59401" data-price-box="product-id-59401"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59401" data-price-amount="255.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">255,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-59401" data-price-amount="269.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">269,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-braendeovn-306021a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59401)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25930/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25930/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25930">
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-1-306019a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25930.window="$el.src = $event.detail" alt="Sargas 1 Brændeovn" title="Sargas 1 Brændeovn" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/0/306019a10_1.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/braendeovn-sargas-1-306019a10">
Sargas 1 Brændeovn </a>
<p class="text-xs"> 306019A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Op til 81% virkningsgrad</li>
<li>Flere tilslutningsmuligheder</li>
<li>Moderne design</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc6393d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc6393d()" @update-prices-25930.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25930" data-price-box="product-id-25930"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-25930" data-price-amount="15788.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">15.788,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/0/306019a10_energim_rke.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/306019a10_datablad.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-1-306019a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25930)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59564/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59564/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59564">
<a href="https://www.vvs-eksperten.dk/000000030" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59564.window="$el.src = $event.detail" alt="Fejebakkesæt med gummilæbe" title="Fejebakkesæt med gummilæbe" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/0/000000030_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/000000030">
Fejebakkesæt </a>
<p class="text-xs"> 000000030 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Til rengøring</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec2619d279() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2619d279()" @update-prices-59564.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59564" data-price-box="product-id-59564"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-59564" data-price-amount="24.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">24,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/000000030" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59564)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6125/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6125/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6125">
<a href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-vand-sikring-vandalarm-incl-9v-batteri-340150325" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6125.window="$el.src = $event.detail" alt="Vandalarm Inkl. 9v Batteri" title="Vandalarm Inkl. 9v Batteri" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/e/2e228ac23d4e264faf6c2bf9c1282fb0c4d1cd0b3a1b63f2698189c6a2b24d8c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-vand-sikring-vandalarm-incl-9v-batteri-340150325">
Vandalarm Inkl. 9v Batteri </a>
<p class="text-xs"> 340150325 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Responstid >7 sek.</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc69720() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc69720()" @update-prices-6125.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6125" data-price-box="product-id-6125"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6125" data-price-amount="68" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">68,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-6125" data-price-amount="80.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">80,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-vand-sikring-vandalarm-incl-9v-batteri-340150325" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6125)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6103/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6103/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6103">
<a href="https://www.vvs-eksperten.dk/hus-og-have-rengoring-og-pleje-tec7-powerwipes-renseservietter-med-glycerin-50-stk-271449008" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6103.window="$el.src = $event.detail" alt="Tec7 Powerwipes renseservietter med glycerin - 50 stk." title="Tec7 powerwips-271449008" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/9/c99fadc85fc086d385213e2ce89cf9524906d3fa48ee8d1b54536890bb3cd104.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-rengoring-og-pleje-tec7-powerwipes-renseservietter-med-glycerin-50-stk-271449008">
Tec7 Powerwipes renseservietter med glycerin - 50 stk. </a>
<p class="text-xs"> 271449008 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ekstremt kraftige</li>
<li>Renseservietter</li>
<li>Med glycerin</li>
<li>50 stk.</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc6e678() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc6e678()" @update-prices-6103.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6103" data-price-box="product-id-6103"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6103" data-price-amount="160.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">160,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-6103" data-price-amount="169.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">169,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-rengoring-og-pleje-tec7-powerwipes-renseservietter-med-glycerin-50-stk-271449008" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6103)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59344/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59344/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59344">
<a href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-arbejdslamper-led-belysning-80000075020" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59344.window="$el.src = $event.detail" alt="ZMARTGEAR 3-in-1 Worklight Kit Lommelygte arbejdslampe" title="ZMARTGEAR 3-in-1 Worklight Kit Lommelygte arbejdslampe" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/0/80000075020_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-arbejdslamper-led-belysning-80000075020">
Smart Lommelygte Kit 3-in-1 </a>
<p class="text-xs"> 80000075020 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Smart lommelygte kit</li>
<li>Zoom lygtehoved</li>
<li>Slim LED stav</li>
<li>Fleksibel LED</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc737dd() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc737dd()" @update-prices-59344.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59344" data-price-box="product-id-59344"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-59344" data-price-amount="460.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">460,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-arbejdslamper-led-belysning-80000075020" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59344)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2287/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2287/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2287">
<a href="https://www.vvs-eksperten.dk/el-artikler-batterier-maxell-lr03-batteri-aaa-pakke-med-32-stk-80000019103" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2287.window="$el.src = $event.detail" alt="Maxell LR03 Batteri AAA - Pakke med 32 stk." title="Maxell AAA batteri-80000019103" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9d72a075f204ed0d95bb850d9110f4c60f08c59b31e43ff9c85e2f27a996349c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-batterier-maxell-lr03-batteri-aaa-pakke-med-32-stk-80000019103">
Maxell LR03 Batteri AAA - Pakke med 32 stk. </a>
<p class="text-xs"> 80000019103 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Super Alkaline</p>
<p>LR03</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc78773() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc78773()" @update-prices-2287.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2287" data-price-box="product-id-2287"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2287" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2287" data-price-amount="105.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">105,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-batterier-maxell-lr03-batteri-aaa-pakke-med-32-stk-80000019103" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2287)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2290/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2290/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2290">
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-foldbar-2x5w-80000075000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2290.window="$el.src = $event.detail" alt="Arbejdslampe Led Foldbar" title="LED foldbar arbejdslampe-80000075000" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/f/2f2acace95b5a55345128fa270113f00a1ff6c0517680352e7db6fb3ae3a8afa.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-foldbar-2x5w-80000075000">
Arbejdslampe Led Foldbar </a>
<p class="text-xs"> 80000075000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Excl. batteri 4x AA</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc7d84e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc7d84e()" @update-prices-2290.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2290" data-price-box="product-id-2290"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2290" data-price-amount="94.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">94,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2290" data-price-amount="99.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-foldbar-2x5w-80000075000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2290)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/253/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/253/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="253">
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-med-krog-245010045" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-253.window="$el.src = $event.detail" alt="LED Arbejdslampe med krog" title="LED arbejdslampe-245010045" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/4/245010045_2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-med-krog-245010045">
LED Arbejdslampe med krog </a>
<p class="text-xs"> 245010045 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Magnet og krog på bagsiden</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc823c6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc823c6()" @update-prices-253.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="253" data-price-box="product-id-253"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-253" data-price-amount="20.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">20,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-med-krog-245010045" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(253)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1085/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1085/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 37% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="1085">
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-lommelygte-led-140-lumen-245010130" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-1085.window="$el.src = $event.detail" alt="Lommelygte led 140 lumen" title="Lommelygte led 140 lumen" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/19594c1b30bc7577e3d404e4ab9900ea71f5637b7ba757720b3f33c0b6490046.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-led-projektor-lommelygte-led-140-lumen-245010130">
Lommelygte led 140 lumen </a>
<p class="text-xs"> 245010130 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Excl. 3 stk. aaa batteri</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc8832f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc8832f()" @update-prices-1085.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="1085" data-price-box="product-id-1085"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-1085" data-price-amount="14.95" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">14,95</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-1085" data-price-amount="24.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">24,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-lommelygte-led-140-lumen-245010130" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(1085)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1086/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1086/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="1086">
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-lommelygte-led-300-lumen-245010140" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-1086.window="$el.src = $event.detail" alt="Lommelygte led 300 lumen" title="Lommelygte led 300 lumen" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/2/52e0bba9437de2ae3910d6ca95f7942e826558d3736c2f79419fff68235b270d.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-led-projektor-lommelygte-led-300-lumen-245010140">
Lommelygte led 300 lumen </a>
<p class="text-xs"> 245010140 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Excl. 4 stk. aaa batteri</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc8e9eb() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc8e9eb()" @update-prices-1086.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="1086" data-price-box="product-id-1086"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-1086" data-price-amount="79.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">79,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-1086" data-price-amount="85.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">85,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-lommelygte-led-300-lumen-245010140" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(1086)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25931/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25931/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25931">
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25931.window="$el.src = $event.detail" alt="Sargas 3 Brændeovn med sideglas" title="Sargas 3 Brændeovn med sideglas" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/0/306019a20_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20">
Sargas 3 Brændeovn </a>
<p class="text-xs"> 306019A20 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Op til 81% virkningsgrad</li>
<li>Flere tilslutningsmuligheder</li>
<li>Med side glas</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbdb5e1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbdb5e1()" @update-prices-25931.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25931" data-price-box="product-id-25931"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-25931" data-price-amount="16553.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">16.553,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/0/306019a20_energim_rke.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/306019a20_datablad.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25931)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/47/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/47/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="47">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-47.window="$el.src = $event.detail" alt="Outfit terrassevarmer med hjul - Sort" title="Outfit terrassevarmer med hjul - Sort" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/a/ba5abac16a91d952a5f80f453ef3f39c4937ac3c36e1405e83e226135d6571e2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520">
Outfit terrassevarmer </a>
<p class="text-xs"> 317210520 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Stor reflektorskærm</li>
<li>Elektronisk tænding</li>
<li>Med hjul</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb444d7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb444d7()" @update-prices-47.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="47" data-price-box="product-id-47"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-47" data-price-amount="1948" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.948,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-47" data-price-amount="2298.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">2.298,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(47)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25867/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25867/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Skarp pris! </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25867">
<a href="https://www.vvs-eksperten.dk/solar-panel-swp100w-902015100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25867.window="$el.src = $event.detail" alt="Solar panel SWP100W solcellepanel" title="Solar panel SWP100W solcellepanel" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902015100_1_100w.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/solar-panel-swp100w-902015100">
Solar panel SWP100W solcellepanel </a>
<p class="text-xs"> 902015100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ideel til båddæk og autocamper</li>
<li>100 Watt solpanel</li>
<li>Excl. batteri</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd379814a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd379814a()" @update-prices-25867.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25867" data-price-box="product-id-25867"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25867" data-price-amount="792.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">792,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-25867" data-price-amount="825.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">825,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/solar-panel-swp100w-902015100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25867)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25869/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25869/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Skarp pris! </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25869">
<a href="https://www.vvs-eksperten.dk/solar-panel-styring-mppt-30a-902015330" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25869.window="$el.src = $event.detail" alt="Solar panelstyring MPPT 30A/USB-A Laderegulator til solcelle" title="Solar panelstyring MPPT 30A/USB-A Laderegulator til solcelle" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902015330_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/solar-panel-styring-mppt-30a-902015330">
Solar panelstyring MPPT 30A </a>
<p class="text-xs"> 902015330 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Laderegulator til solcelle</li>
<li>Incl. 2 stk. USB-A oplader</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd379f88e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd379f88e()" @update-prices-25869.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25869" data-price-box="product-id-25869"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25869" data-price-amount="599.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">599,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-25869" data-price-amount="625.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">625,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/solar-panel-styring-mppt-30a-902015330" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25869)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25868/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25868/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Skarp pris! </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25868">
<a href="https://www.vvs-eksperten.dk/solar-panel-styring-pwm-10a-902015310" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25868.window="$el.src = $event.detail" alt="Solar panelstyring 10A PWM/USB-A Laderegulator til solcelle" title="Solar panelstyring 10A PWM/USB-A Laderegulator til solcelle" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902015310_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/solar-panel-styring-pwm-10a-902015310">
Solar panelstyring 10A PWM </a>
<p class="text-xs"> 902015310 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Laderegulator til solcelle</li>
<li>Incl. 2 stk. USB-A oplader</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc959e4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc959e4()" @update-prices-25868.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25868" data-price-box="product-id-25868"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25868" data-price-amount="270.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">270,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-25868" data-price-amount="285.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">285,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/solar-panel-styring-pwm-10a-902015310" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25868)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/16240/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/16240/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="16240">
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-rogalarm-ildslukker-med-abc-pulver-1-kg-245010111" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-16240.window="$el.src = $event.detail" alt="Pulverslukker Ildslukker" title="Pulverslukker Ildslukker" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/3/93b6297b6e85060c1ac353c1b48f0edbde3faec78c41c885910233b752afabe9.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-rogalarm-91fa0d64-4ff8-4444-bc22-dd8f1918eb4e">
Pulverslukker Ildslukker </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem</p>
<ul>
<li>1 Kg</li>
<li>2 Kg</li>
<li>6 Kg</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_16240() {
const configurableOptionsComponent = initConfigurableOptions('16240', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "3881",
"label": "1 Kg",
"products": ["16237"]
}, {
"id": "3959",
"label": "2 Kg",
"products": ["16238"]
}, {
"id": "4086",
"label": "6 Kg",
"products": ["16239"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"16237": {
"baseOldPrice": {
"amount": 95.2
},
"oldPrice": {
"amount": 119.000001
},
"basePrice": {
"amount": 90.4
},
"finalPrice": {
"amount": 113.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"16238": {
"baseOldPrice": {
"amount": 151.2
},
"oldPrice": {
"amount": 189.000001
},
"basePrice": {
"amount": 143.2
},
"finalPrice": {
"amount": 179.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"16239": {
"baseOldPrice": {
"amount": 279.2
},
"oldPrice": {
"amount": 349.000001
},
"basePrice": {
"amount": 268
},
"finalPrice": {
"amount": 335.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 95.2
},
"oldPrice": {
"amount": 119.000001
},
"basePrice": {
"amount": 90.4
},
"finalPrice": {
"amount": 113.000001
}
},
"productId": "16240",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"16237": {
"150": "3881"
},
"16238": {
"150": "3959"
},
"16239": {
"150": "4086"
}
},
"salable": {
"150": {
"3881": ["16237"],
"3959": ["16238"],
"4086": ["16239"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"16237": "245010111",
"16238": "245010113",
"16239": "245010114"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-16240", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_16240()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fc9a31a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc9a31a()" @update-prices-16240.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="16240" data-price-box="product-id-16240"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-16240" data-price-amount="113.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">113,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-rogalarm-91fa0d64-4ff8-4444-bc22-dd8f1918eb4e" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(16240)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6452/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6452/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6452">
<a href="https://www.vvs-eksperten.dk/hus-og-have-rengoring-og-pleje-tec7-powerwipes-renseservietter-med-glycerin-70-stk-271447470" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6452.window="$el.src = $event.detail" alt="Tec7 Powerwipes renseservietter med glycerin - 70 stk." title="TEC7 Powerwipes-271447470" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/8/a8ab45cf8511d9c19a68616f7158ffe0a699e2a2db11fdd8c59e6ed0c3ae49f6.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-rengoring-og-pleje-tec7-powerwipes-renseservietter-med-glycerin-70-stk-271447470">
Tec7 Powerwipes renseservietter med glycerin - 70 stk. </a>
<p class="text-xs"> 271447470 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ekstremt kraftige</li>
<li>Renseservietter</li>
<li>Med glycerin</li>
<li>70 stk.</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fca95dd() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fca95dd()" @update-prices-6452.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6452" data-price-box="product-id-6452"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6452" data-price-amount="222.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">222,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-6452" data-price-amount="234.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">234,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-rengoring-og-pleje-tec7-powerwipes-renseservietter-med-glycerin-70-stk-271447470" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6452)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15836/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15836/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="15836">
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-gruppe-og-malertavler-el-max-gruppetavle-staenktaet-5-modul-ip65-80000011010" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-15836.window="$el.src = $event.detail" alt="El-Max Gruppetavle Stænktæt" title="Gruppetavle-80000011010" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/f/2f0095f5f510e40ae088cc9334a40940aafa4f895cc2c4604bfd28ccee068d84.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-tilbehor-til-havelamper-56a66348-b452-4604-8fb9-d42af9ea5098">
El-Max Gruppetavle Stænktæt </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Stænktæt IP65</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_15836() {
const configurableOptionsComponent = initConfigurableOptions('15836', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "3953",
"label": "1x5 Modul",
"products": ["15831"]
}, {
"id": "3957",
"label": "1x8 Modul",
"products": ["15832"]
}, {
"id": "3946",
"label": "1x12 Modul",
"products": ["15833"]
}, {
"id": "3948",
"label": "1x18 Modul",
"products": ["15834"]
}, {
"id": "3996",
"label": "2x12 Modul",
"products": ["15835"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"15831": {
"baseOldPrice": {
"amount": 39.2
},
"oldPrice": {
"amount": 49.000001
},
"basePrice": {
"amount": 36.8
},
"finalPrice": {
"amount": 46.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15832": {
"baseOldPrice": {
"amount": 68
},
"oldPrice": {
"amount": 85.000001
},
"basePrice": {
"amount": 63.2
},
"finalPrice": {
"amount": 79.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15833": {
"baseOldPrice": {
"amount": 108
},
"oldPrice": {
"amount": 135.000001
},
"basePrice": {
"amount": 102.4
},
"finalPrice": {
"amount": 128.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15834": {
"baseOldPrice": {
"amount": 128
},
"oldPrice": {
"amount": 160.000001
},
"basePrice": {
"amount": 121.6
},
"finalPrice": {
"amount": 152.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15835": {
"baseOldPrice": {
"amount": 170.4
},
"oldPrice": {
"amount": 213.000001
},
"basePrice": {
"amount": 159.2
},
"finalPrice": {
"amount": 199.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 39.2
},
"oldPrice": {
"amount": 49.000001
},
"basePrice": {
"amount": 36.8
},
"finalPrice": {
"amount": 46.000001
}
},
"productId": "15836",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"15831": {
"150": "3953"
},
"15832": {
"150": "3957"
},
"15833": {
"150": "3946"
},
"15834": {
"150": "3948"
},
"15835": {
"150": "3996"
}
},
"salable": {
"150": {
"3953": ["15831"],
"3957": ["15832"],
"3946": ["15833"],
"3948": ["15834"],
"3996": ["15835"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"15831": "80000011010",
"15832": "80000011015",
"15833": "80000011020",
"15834": "80000011025",
"15835": "80000011030"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-15836", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_15836()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fcee438() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fcee438()" @update-prices-15836.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="15836" data-price-box="product-id-15836"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-15836" data-price-amount="46.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">46,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-tilbehor-til-havelamper-56a66348-b452-4604-8fb9-d42af9ea5098" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(15836)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/264/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/264/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="264">
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-tavlemateriel-automatsikring-1pn-13ac-85322428099" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-264.window="$el.src = $event.detail" alt="Automatsikring 1p+n 13a/c" title="Automatsikring 1p+n 10a/c-85322428099" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/5/85322428099_1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installation-tavlemateriel-automatsikring-1pn-13ac-85322428099">
Automatsikring 1p+n 13a/c </a>
<p class="text-xs"> 85322428099 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Type C</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd07048() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd07048()" @update-prices-264.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="264" data-price-box="product-id-264"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-264" data-price-amount="24.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">24,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-264" data-price-amount="26.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">26,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-tavlemateriel-automatsikring-1pn-13ac-85322428099" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(264)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2442/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2442/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 10% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2442">
<a href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-installationskabel-3g15-mm2-50-meter-89833586998" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2442.window="$el.src = $event.detail" alt="Installationskabel 3G1,5 mm² - 50 meter" title="Installationskabel 3G1,5 mm² - 50 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/e/1ed66f33953cd2c66f14e1cd0ea188601a63e7f0e7e5451fccc1c1badbf834d4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-installationskabel-3g15-mm2-50-meter-89833586998">
Installationskabel 3G1,5 mm² </a>
<p class="text-xs"> 89833586998 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>50 meter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd0c82a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd0c82a()" @update-prices-2442.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2442" data-price-box="product-id-2442"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2442" data-price-amount="289" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">289,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2442" data-price-amount="324.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">324,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-installationskabel-3g15-mm2-50-meter-89833586998" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2442)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2269/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2269/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2269">
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-samledaser-og-pg-forskruninger-forgreningsdase-o65mm-80000040005" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2269.window="$el.src = $event.detail" alt="Forgreningsdåse ø65mm" title="Forgreningsdåse 65mm-80000040005" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/3/23966c470eb8f819035b71537b20a8fac60b831d53971c1e635b09c7001065e4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installation-samledaser-og-pg-forskruninger-forgreningsdase-o65mm-80000040005">
Forgreningsdåse ø65mm </a>
<p class="text-xs"> 80000040005 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>IP65</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd11b1c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd11b1c()" @update-prices-2269.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2269" data-price-box="product-id-2269"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2269" data-price-amount="8.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">8,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2269" data-price-amount="9.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">9,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-samledaser-og-pg-forskruninger-forgreningsdase-o65mm-80000040005" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2269)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/14691/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/14691/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="14691">
<a href="https://www.vvs-eksperten.dk/el-artikler-foringsveje-elektrikerror-kabelror-4032-mm-peh-ror-metermal-81430307585" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-14691.window="$el.src = $event.detail" alt="Kabelrør PEH rør - Metermål" title="Kabelrør PEH rør - Metermål" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/c/dc7eae1992e1b8b904f6e0ed4d060061d282d878f82d274c3137f3e9e1e1e47e.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-tilbehor-til-havelamper-53f56aba-fbb9-4163-8ff7-6e696ed83c33">
Kabelrør PEH rør - Metermål </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vælg mellem flere størrelser</li>
<li>Metermål, ingen returret</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_14691() {
const configurableOptionsComponent = initConfigurableOptions('14691', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1444",
"label": "110\/94 mm",
"products": ["14685"]
}, {
"id": "2035",
"label": "40\/32 mm",
"products": ["14689"]
}, {
"id": "2099",
"label": "50\/42 mm",
"products": ["14686"]
}, {
"id": "2175",
"label": "63\/51 mm",
"products": ["14690"]
}, {
"id": "2215",
"label": "75\/63 mm",
"products": ["14687"]
}, {
"id": "2268",
"label": "90\/75 mm",
"products": ["14688"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"14685": {
"baseOldPrice": {
"amount": 36.8
},
"oldPrice": {
"amount": 46.000001
},
"basePrice": {
"amount": 34.4
},
"finalPrice": {
"amount": 43.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14686": {
"baseOldPrice": {
"amount": 20
},
"oldPrice": {
"amount": 25.000001
},
"basePrice": {
"amount": 17.6
},
"finalPrice": {
"amount": 22.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14687": {
"baseOldPrice": {
"amount": 25.6
},
"oldPrice": {
"amount": 32.000001
},
"basePrice": {
"amount": 24
},
"finalPrice": {
"amount": 30.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14688": {
"baseOldPrice": {
"amount": 29.6
},
"oldPrice": {
"amount": 37.000001
},
"basePrice": {
"amount": 27.2
},
"finalPrice": {
"amount": 34.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14689": {
"baseOldPrice": {
"amount": 15.2
},
"oldPrice": {
"amount": 19.000001
},
"basePrice": {
"amount": 13.6
},
"finalPrice": {
"amount": 17.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14690": {
"baseOldPrice": {
"amount": 20
},
"oldPrice": {
"amount": 25.000001
},
"basePrice": {
"amount": 17.6
},
"finalPrice": {
"amount": 22.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 15.2
},
"oldPrice": {
"amount": 19.000001
},
"basePrice": {
"amount": 13.6
},
"finalPrice": {
"amount": 17.000001
}
},
"productId": "14691",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"14685": {
"141": "1444"
},
"14686": {
"141": "2099"
},
"14687": {
"141": "2215"
},
"14688": {
"141": "2268"
},
"14689": {
"141": "2035"
},
"14690": {
"141": "2175"
}
},
"salable": {
"141": {
"1444": ["14685"],
"2099": ["14686"],
"2215": ["14687"],
"2268": ["14688"],
"2035": ["14689"],
"2175": ["14690"]
}
},
"canDisplayShowOutOfStockStatus": true,
"preSelectedGallery": [],
"channel": "website",
"salesChannelCode": "base",
"sku": {
"14685": "81430262693",
"14686": "81430299989",
"14687": "81430299996",
"14688": "81430304355",
"14689": "81430307585",
"14690": "81430307592"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-14691", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_14691()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec66b99580() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec66b99580()" @update-prices-14691.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="14691" data-price-box="product-id-14691"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-14691" data-price-amount="17.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">17,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-tilbehor-til-havelamper-53f56aba-fbb9-4163-8ff7-6e696ed83c33" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(14691)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2596/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2596/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2596">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-fuga-loftdase-loftdase-pl-pladeloft-5516-mm-81020007516" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2596.window="$el.src = $event.detail" alt="Loftdåse Pl F/pladeloft 55mm" title="Loftdåse pl for pladeloft 55mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/3/43e6568405423bd792a68d462b8ef5ddb98fc58f668060797945c2b6e958fa02.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-fuga-loftdase-loftdase-pl-pladeloft-5516-mm-81020007516">
Loftdåse Pl F/pladeloft 55mm </a>
<p class="text-xs"> 81020007516 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Velegnet til</p>
<ul>
<li>Lampeudtag</li>
<li>Lampestikkontakt</li>
<li>På- eller indbygning af armatur</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd17244() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd17244()" @update-prices-2596.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2596" data-price-box="product-id-2596"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2596" data-price-amount="67.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">67,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2596" data-price-amount="72.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">72,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-fuga-loftdase-loftdase-pl-pladeloft-5516-mm-81020007516" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2596)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/14236/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/14236/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="14236">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-fuga-air-forfradase-1-modul-bla-81017059373" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-14236.window="$el.src = $event.detail" alt="Fuga AIR forfradåse til Teknisk monteringsramme" title="Fuga AIR forfradåse til Teknisk monteringsramme" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/7/478516162fc69677d3e364a3043742204a2f52ad24d252e4d646b279b014529b.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-0fa48682-0b41-4a00-b378-7cfe704e6488">
Fuga AIR forfradåse til Teknisk monteringsramme </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til Teknisk monteringsramme</li>
<li>Passer på Fuga rammer</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_14236() {
const configurableOptionsComponent = initConfigurableOptions('14236', {
"attributes": {
"235": {
"id": "235",
"code": "module",
"label": "Modul",
"options": [{
"id": "13746",
"label": "1 1\/2 modul",
"products": ["14233"]
}, {
"id": "13748",
"label": "1 modul",
"products": ["14232"]
}, {
"id": "13751",
"label": "2 1\/2 modul",
"products": ["14235"]
}, {
"id": "13752",
"label": "2 modul",
"products": ["14234"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"14233": {
"baseOldPrice": {
"amount": 29.6
},
"oldPrice": {
"amount": 37.000001
},
"basePrice": {
"amount": 27.2
},
"finalPrice": {
"amount": 34.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14234": {
"baseOldPrice": {
"amount": 37.6
},
"oldPrice": {
"amount": 47.000001
},
"basePrice": {
"amount": 35.2
},
"finalPrice": {
"amount": 44.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14232": {
"baseOldPrice": {
"amount": 24
},
"oldPrice": {
"amount": 30.000001
},
"basePrice": {
"amount": 22.4
},
"finalPrice": {
"amount": 28.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14235": {
"baseOldPrice": {
"amount": 58.4
},
"oldPrice": {
"amount": 73.000001
},
"basePrice": {
"amount": 54.4
},
"finalPrice": {
"amount": 68.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 24
},
"oldPrice": {
"amount": 30.000001
},
"basePrice": {
"amount": 22.4
},
"finalPrice": {
"amount": 28.000001
}
},
"productId": "14236",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"14233": {
"235": "13746"
},
"14234": {
"235": "13752"
},
"14232": {
"235": "13748"
},
"14235": {
"235": "13751"
}
},
"salable": {
"235": {
"13746": ["14233"],
"13752": ["14234"],
"13748": ["14232"],
"13751": ["14235"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"14233": "81017059386",
"14234": "81017059399",
"14232": "81017059373",
"14235": "81017059409"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-14236", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_14236()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd1a986() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd1a986()" @update-prices-14236.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="14236" data-price-box="product-id-14236"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-14236" data-price-amount="28.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">28,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-0fa48682-0b41-4a00-b378-7cfe704e6488" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(14236)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/14218/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/14218/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="14218">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-fuga-air-indmuringsdase-1-modul-gron-81017059072" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-14218.window="$el.src = $event.detail" alt="Fuga AIR indmuringsdåse til Teknisk monteringsramme" title="Fuga AIR indmuringsdåse til Teknisk monteringsramme" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/3/3378682e49aff52b7a204c70bc3bf13b54b7ad97d83ad8515a9133fad20075ab.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-ed39805a-58e8-447f-8975-f4b730c2316c">
Fuga AIR indmuringsdåse til Teknisk monteringsramme </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til Teknisk monteringsramme</li>
<li>Passer på Fuga rammer</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_14218() {
const configurableOptionsComponent = initConfigurableOptions('14218', {
"attributes": {
"235": {
"id": "235",
"code": "module",
"label": "Modul",
"options": [{
"id": "13746",
"label": "1 1\/2 modul",
"products": ["14215"]
}, {
"id": "13748",
"label": "1 modul",
"products": ["14214"]
}, {
"id": "13751",
"label": "2 1\/2 modul",
"products": ["14217"]
}, {
"id": "13752",
"label": "2 modul",
"products": ["14216"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"14214": {
"baseOldPrice": {
"amount": 12.8
},
"oldPrice": {
"amount": 16.000001
},
"basePrice": {
"amount": 12
},
"finalPrice": {
"amount": 15.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14215": {
"baseOldPrice": {
"amount": 16
},
"oldPrice": {
"amount": 20.000001
},
"basePrice": {
"amount": 14.4
},
"finalPrice": {
"amount": 18.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14216": {
"baseOldPrice": {
"amount": 19.2
},
"oldPrice": {
"amount": 24.000001
},
"basePrice": {
"amount": 17.6
},
"finalPrice": {
"amount": 22.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14217": {
"baseOldPrice": {
"amount": 22.4
},
"oldPrice": {
"amount": 28.000001
},
"basePrice": {
"amount": 20.8
},
"finalPrice": {
"amount": 26.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 12.8
},
"oldPrice": {
"amount": 16.000001
},
"basePrice": {
"amount": 12
},
"finalPrice": {
"amount": 15.000001
}
},
"productId": "14218",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"14214": {
"235": "13748"
},
"14215": {
"235": "13746"
},
"14216": {
"235": "13752"
},
"14217": {
"235": "13751"
}
},
"salable": {
"235": {
"13748": ["14214"],
"13746": ["14215"],
"13752": ["14216"],
"13751": ["14217"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"14214": "81017059072",
"14215": "81017059085",
"14216": "81017059098",
"14217": "81017059108"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-14218", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_14218()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd2778a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd2778a()" @update-prices-14218.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="14218" data-price-box="product-id-14218"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-14218" data-price-amount="15.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">15,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-ed39805a-58e8-447f-8975-f4b730c2316c" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(14218)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13658/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13658/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13658">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-fuga-indmuringsdase-gron-1-modul-81017009695" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13658.window="$el.src = $event.detail" alt="LK Fuga indmuringsdåse til Baseline, Softline og Hardline Dybde 37,5 mm" title="LK Fuga indmuringsdåse til Baseline, Softline og Hardline Dybde 37,5 mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/b/0b829b36097f05b6d89493c8bb4968066f779f71b4eb11e493dd78fd19897023.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-ab6fcd14-636d-4790-9dd7-e9e7b98197fb">
LK Fuga indmuringsdåse Dybde 37,5 mm </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til Teknisk monteringsramme</li>
<li>Passer på Fuga rammer</li>
<li>Dybde 37,5 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_13658() {
const configurableOptionsComponent = initConfigurableOptions('13658', {
"attributes": {
"235": {
"id": "235",
"code": "module",
"label": "Modul",
"options": [{
"id": "13746",
"label": "1 1\/2 modul",
"products": ["13655"]
}, {
"id": "13748",
"label": "1 modul",
"products": ["13654"]
}, {
"id": "13751",
"label": "2 1\/2 modul",
"products": ["13657"]
}, {
"id": "13752",
"label": "2 modul",
"products": ["13656"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"13655": {
"baseOldPrice": {
"amount": 14.4
},
"oldPrice": {
"amount": 18.000001
},
"basePrice": {
"amount": 12.8
},
"finalPrice": {
"amount": 16.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13657": {
"baseOldPrice": {
"amount": 20.8
},
"oldPrice": {
"amount": 26.000001
},
"basePrice": {
"amount": 19.2
},
"finalPrice": {
"amount": 24.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13654": {
"baseOldPrice": {
"amount": 14.4
},
"oldPrice": {
"amount": 18.000001
},
"basePrice": {
"amount": 12.8
},
"finalPrice": {
"amount": 16.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13656": {
"baseOldPrice": {
"amount": 20
},
"oldPrice": {
"amount": 25.000001
},
"basePrice": {
"amount": 18.4
},
"finalPrice": {
"amount": 23.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 14.4
},
"oldPrice": {
"amount": 18.000001
},
"basePrice": {
"amount": 12.8
},
"finalPrice": {
"amount": 16.000001
}
},
"productId": "13658",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"13655": {
"235": "13746"
},
"13657": {
"235": "13751"
},
"13654": {
"235": "13748"
},
"13656": {
"235": "13752"
}
},
"salable": {
"235": {
"13746": ["13655"],
"13751": ["13657"],
"13748": ["13654"],
"13752": ["13656"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"13655": "81017009705",
"13657": "81017009721",
"13654": "81017009695",
"13656": "81017009718"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-13658", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_13658()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd324f7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd324f7()" @update-prices-13658.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13658" data-price-box="product-id-13658"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-13658" data-price-amount="16.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">16,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-daser-ab6fcd14-636d-4790-9dd7-e9e7b98197fb" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13658)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1859/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1859/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="1859">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-stikkontakt-fuga-stikkontakt-med-hvid-afdaekning-fuga-indsats-stikkontakt-2-pol-med-jord-1-modul-hvid-81017041679" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-1859.window="$el.src = $event.detail" alt="Stikk Fuga 1m 2p+j Hvid Tp1" title="Stikkontakt lk fuga 1 modul 2p+j hvid tp1" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/7/b7f3a63e292dcf46dadc11e0b4a50f1ab80f839a339f5db980ed0e17317b615f.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-stikkontakt-fuga-stikkontakt-med-hvid-afdaekning-fuga-indsats-stikkontakt-2-pol-med-jord-1-modul-hvid-81017041679">
Stikk Fuga 1m 2p+j Hvid Tp1 </a>
<p class="text-xs"> 81017041679 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Hvid</li>
<li>1 modul</li>
<li>Indsats og front</li>
<li>2-pol med jord</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd415f0() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd415f0()" @update-prices-1859.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="1859" data-price-box="product-id-1859"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-1859" data-price-amount="98.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">98,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-1859" data-price-amount="104.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">104,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-stikkontakt-fuga-stikkontakt-med-hvid-afdaekning-fuga-indsats-stikkontakt-2-pol-med-jord-1-modul-hvid-81017041679" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(1859)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/14021/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/14021/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="14021">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-afbryder-fuga-afbryder-16-1-pol-lysegra-81017054448" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-14021.window="$el.src = $event.detail" alt="LK FUGA indsats 16 A afbryder 1-pol" title="Fuga afbryder 1pol 16ax hvid" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/c/9c86d07b4f03deb5240943f71e5d25e50689edb617ea6ba0693492320f171e0e.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-afbryder-466b4034-a2b9-4ca3-9e0c-bb92c37c62c6">
LK FUGA indsats 16 A afbryder 1-pol </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Indsats og front<br>Vælg mellem</p>
<ul>
<li>Hvid</li>
<li>Koksgrå</li>
<li>Lysegrå</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_14021() {
const configurableOptionsComponent = initConfigurableOptions('14021', {
"attributes": {
"93": {
"id": "93",
"code": "color",
"label": "Farve",
"options": [{
"id": "728",
"label": "Hvid",
"products": ["14018"]
}, {
"id": "772",
"label": "Koksgr\u00e5",
"products": ["14020"]
}, {
"id": "796",
"label": "Lysegr\u00e5",
"products": ["14019"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"14018": {
"baseOldPrice": {
"amount": 58.4
},
"oldPrice": {
"amount": 73.000001
},
"basePrice": {
"amount": 54.4
},
"finalPrice": {
"amount": 68.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14020": {
"baseOldPrice": {
"amount": 63.2
},
"oldPrice": {
"amount": 79.000001
},
"basePrice": {
"amount": 59.2
},
"finalPrice": {
"amount": 74.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"14019": {
"baseOldPrice": {
"amount": 52
},
"oldPrice": {
"amount": 65.000001
},
"basePrice": {
"amount": 48.8
},
"finalPrice": {
"amount": 61.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 52
},
"oldPrice": {
"amount": 65.000001
},
"basePrice": {
"amount": 48.8
},
"finalPrice": {
"amount": 61.000001
}
},
"productId": "14021",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"14018": {
"93": "728"
},
"14020": {
"93": "772"
},
"14019": {
"93": "796"
}
},
"salable": {
"93": {
"728": ["14018"],
"772": ["14020"],
"796": ["14019"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"14018": "81017054433",
"14020": "81017054461",
"14019": "81017054448"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-14021", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_14021()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd458a9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd458a9()" @update-prices-14021.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="14021" data-price-box="product-id-14021"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-14021" data-price-amount="61.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">61,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-afbryder-466b4034-a2b9-4ca3-9e0c-bb92c37c62c6" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(14021)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/16038/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/16038/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="16038">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-lysdaemper-og-fuga-pir-sensor-fuga-indsats-lysdaemper-led-s-120-va-korrespondance-lysegra-81067004844" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-16038.window="$el.src = $event.detail" alt="Fuga lysdæmper LED-S 120 VA korrespondance" title="Fuga led-s dæmper korrespondance hvid" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/a/8ad6b4d2bb792ea9cbdbf7db5eebbd1055520a6b8adf19f8027069bace1b8e16.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-lysdaemper-og-fuga-pir-sensor-b9c4610a-705a-4454-8d47-7ef866fd95f7">
Fuga lysdæmper LED-S 120 VA korrespondance </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem</p>
<ul>
<li>Hvid</li>
<li>Lysegrå</li>
<li>Koksgrå</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_16038() {
const configurableOptionsComponent = initConfigurableOptions('16038', {
"attributes": {
"93": {
"id": "93",
"code": "color",
"label": "Farve",
"options": [{
"id": "728",
"label": "Hvid",
"products": ["16035"]
}, {
"id": "772",
"label": "Koksgr\u00e5",
"products": ["16037"]
}, {
"id": "796",
"label": "Lysegr\u00e5",
"products": ["16036"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"16035": {
"baseOldPrice": {
"amount": 548.8
},
"oldPrice": {
"amount": 686.000001
},
"basePrice": {
"amount": 526.4
},
"finalPrice": {
"amount": 658.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"16037": {
"baseOldPrice": {
"amount": 560.8
},
"oldPrice": {
"amount": 701.000001
},
"basePrice": {
"amount": 537.6
},
"finalPrice": {
"amount": 672.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"16036": {
"baseOldPrice": {
"amount": 548.8
},
"oldPrice": {
"amount": 686.000001
},
"basePrice": {
"amount": 526.4
},
"finalPrice": {
"amount": 658.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 548.8
},
"oldPrice": {
"amount": 686.000001
},
"basePrice": {
"amount": 526.4
},
"finalPrice": {
"amount": 658.000001
}
},
"productId": "16038",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"16035": {
"93": "728"
},
"16037": {
"93": "772"
},
"16036": {
"93": "796"
}
},
"salable": {
"93": {
"728": ["16035"],
"772": ["16037"],
"796": ["16036"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"16035": "81067004831",
"16037": "81067004857",
"16036": "81067004844"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-16038", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_16038()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd549d5() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd549d5()" @update-prices-16038.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="16038" data-price-box="product-id-16038"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-16038" data-price-amount="658.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">658,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-lysdaemper-og-fuga-pir-sensor-b9c4610a-705a-4454-8d47-7ef866fd95f7" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(16038)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15617/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15617/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="15617">
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-rammer-fuga-design-ramme-soft-63-lk-fuga-design-ramme-soft-63-1-modul-hvid-81017056363" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-15617.window="$el.src = $event.detail" alt="LK Fuga SOFT 63 designramme 1 modul" title="Fuga design ramme SOFT-81017056363" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/3/43d19ad442e5303d23297c9e67f84e53e7329c83d14451a93394a5b214f20e78.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-rammer-fuga-design-ramme-soft-63-67ca558f-743f-4126-b2b0-a42fd684e812">
LK Fuga SOFT 63 designramme 1 modul </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem</p>
<ul>
<li>Hvid</li>
<li>Lysegrå</li>
<li>Koksgrå</li>
<li>Stålmetallic</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_15617() {
const configurableOptionsComponent = initConfigurableOptions('15617', {
"attributes": {
"93": {
"id": "93",
"code": "color",
"label": "Farve",
"options": [{
"id": "728",
"label": "Hvid",
"products": ["15613"]
}, {
"id": "772",
"label": "Koksgr\u00e5",
"products": ["15616"]
}, {
"id": "796",
"label": "Lysegr\u00e5",
"products": ["15614"]
}, {
"id": "912",
"label": "St\u00e5lmetallic",
"products": ["15615"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"15613": {
"baseOldPrice": {
"amount": 10.4
},
"oldPrice": {
"amount": 13.000001
},
"basePrice": {
"amount": 9.6
},
"finalPrice": {
"amount": 12.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15616": {
"baseOldPrice": {
"amount": 18.4
},
"oldPrice": {
"amount": 23.000001
},
"basePrice": {
"amount": 16.8
},
"finalPrice": {
"amount": 21.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15614": {
"baseOldPrice": {
"amount": 11.2
},
"oldPrice": {
"amount": 14.000001
},
"basePrice": {
"amount": 10.4
},
"finalPrice": {
"amount": 13.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15615": {
"baseOldPrice": {
"amount": 24.8
},
"oldPrice": {
"amount": 31.000001
},
"basePrice": {
"amount": 23.2
},
"finalPrice": {
"amount": 29.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 10.4
},
"oldPrice": {
"amount": 13.000001
},
"basePrice": {
"amount": 9.6
},
"finalPrice": {
"amount": 12.000001
}
},
"productId": "15617",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"15613": {
"93": "728"
},
"15616": {
"93": "772"
},
"15614": {
"93": "796"
},
"15615": {
"93": "912"
}
},
"salable": {
"93": {
"728": ["15613"],
"772": ["15616"],
"796": ["15614"],
"912": ["15615"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"15613": "81017056363",
"15616": "81017056392",
"15614": "81017056376",
"15615": "81017056389"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-15617", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_15617()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd60553() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd60553()" @update-prices-15617.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="15617" data-price-box="product-id-15617"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-15617" data-price-amount="12.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">12,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-lauritz-knudsen-lk-fuga-fuga-rammer-fuga-design-ramme-soft-63-67ca558f-743f-4126-b2b0-a42fd684e812" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(15617)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15830/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15830/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="15830">
<a href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-installationskabel-5g25-mm2-metermal-80000014414" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-15830.window="$el.src = $event.detail" alt="5G2,5mm² Installationskabel halogenfri" title="5G2,5mm² Installationskabel halogenfri" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/0/d0ee5167f711428356da9a91da8b772e9ec2334375de167605d9f6a41e122090.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-3fcff77d-3e0b-4106-9175-6121cb904517">
5G2,5mm² Installationskabel halogenfri </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem</p>
<ul>
<li>Metermål, ingen returret</li>
<li>100 meter rulle</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_15830() {
const configurableOptionsComponent = initConfigurableOptions('15830', {
"attributes": {
"146": {
"id": "146",
"code": "length",
"label": "L\u00e6ngde",
"options": [{
"id": "3244",
"label": "100 m",
"products": ["15828"]
}, {
"id": "3497",
"label": "50 m",
"products": []
}, {
"id": "3609",
"label": "Meterm\u00e5l",
"products": ["15827"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"15828": {
"baseOldPrice": {
"amount": 1387.2
},
"oldPrice": {
"amount": 1734.000001
},
"basePrice": {
"amount": 1331.2
},
"finalPrice": {
"amount": 1664.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15827": {
"baseOldPrice": {
"amount": 20
},
"oldPrice": {
"amount": 25.000001
},
"basePrice": {
"amount": 18.4
},
"finalPrice": {
"amount": 23.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 20
},
"oldPrice": {
"amount": 25.000001
},
"basePrice": {
"amount": 18.4
},
"finalPrice": {
"amount": 23.000001
}
},
"productId": "15830",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"15828": {
"146": "3244"
},
"15827": {
"146": "3609"
}
},
"salable": {
"146": {
"3244": ["15828"],
"3609": ["15827"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"15828": "89833214383",
"15827": "80000014414"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-15830", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_15830()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd6a1e3() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd6a1e3()" @update-prices-15830.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="15830" data-price-box="product-id-15830"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-15830" data-price-amount="23.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">23,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-3fcff77d-3e0b-4106-9175-6121cb904517" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(15830)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15899/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/15899/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="15899">
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-samledaser-og-pg-forskruninger-kabelforskruning-forskruninger-m20-incl-motrik-89813199512" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-15899.window="$el.src = $event.detail" alt="Kabelforskruning - Forskruninger" title="Forskruning m16" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/e/fe91ea36a7f1fa4765bdb5a342d1b766e3ab83e5c9dec1ef04b4f32a4621efe4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installation-samledaser-og-pg-forskruninger-7b9d1dbf-1c45-4bc4-ab3f-26519e331d49">
Kabelforskruning - Forskruninger </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Størrelser fra M16 til M25</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_15899() {
const configurableOptionsComponent = initConfigurableOptions('15899', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "2318",
"label": "M16",
"products": ["15896"]
}, {
"id": "2319",
"label": "M20",
"products": ["15897"]
}, {
"id": "2321",
"label": "M25",
"products": ["15898"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"15896": {
"baseOldPrice": {
"amount": 8
},
"oldPrice": {
"amount": 10.000001
},
"basePrice": {
"amount": 7.2
},
"finalPrice": {
"amount": 9.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15897": {
"baseOldPrice": {
"amount": 6.4
},
"oldPrice": {
"amount": 8.000001
},
"basePrice": {
"amount": 5.6
},
"finalPrice": {
"amount": 7.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"15898": {
"baseOldPrice": {
"amount": 8.8
},
"oldPrice": {
"amount": 11.000001
},
"basePrice": {
"amount": 8
},
"finalPrice": {
"amount": 10.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 6.4
},
"oldPrice": {
"amount": 8.000001
},
"basePrice": {
"amount": 5.6
},
"finalPrice": {
"amount": 7.000001
}
},
"productId": "15899",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"15896": {
"141": "2318"
},
"15897": {
"141": "2319"
},
"15898": {
"141": "2321"
}
},
"salable": {
"141": {
"2318": ["15896"],
"2319": ["15897"],
"2321": ["15898"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"15896": "89813199505",
"15897": "89813199512",
"15898": "89813199529"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-15899", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_15899()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fd79408() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd79408()" @update-prices-15899.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="15899" data-price-box="product-id-15899"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-15899" data-price-amount="7.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">7,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-samledaser-og-pg-forskruninger-7b9d1dbf-1c45-4bc4-ab3f-26519e331d49" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(15899)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2712/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2712/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2712">
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-380400v-afbrydermateriel-sikkerhedsafbryder-20a-ip54-4-polet-afbryder-jord-80003166271" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2712.window="$el.src = $event.detail" alt="Sikkerhedsafbryder 20A IP54 4 polet afbryder + jord" title="Sikkerhedsafbryder 20A-80003166271" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/5/c5c73ab67ce2445591e9e383741f967878c2a9d9da9d6df8ffd1ba6604f2e1c7.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installation-380400v-afbrydermateriel-sikkerhedsafbryder-20a-ip54-4-polet-afbryder-jord-80003166271">
Sikkerhedsafbryder 20A IP54 4 polet afbryder + jord </a>
<p class="text-xs"> 80003166271 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>IP54</li>
<li>4 polet</li>
<li>4 x M25 gevind,</li>
<li>2 i top og 2 i bund</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd87eb5() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd87eb5()" @update-prices-2712.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2712" data-price-box="product-id-2712"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2712" data-price-amount="141.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">141,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2712" data-price-amount="149.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">149,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-380400v-afbrydermateriel-sikkerhedsafbryder-20a-ip54-4-polet-afbryder-jord-80003166271" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2712)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/18593/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/18593/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="18593">
<a href="https://www.vvs-eksperten.dk/hus-og-have-udendorshane-fm-mattsson-udendorshane-med-greb-til-400-mm-vaegtykkelse-743446514" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-18593.window="$el.src = $event.detail" alt="Fm mattsson udendørshane m/ greb - Se vores udvalg" title="Fm Mattsson posteventil 400mm|743446514" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/6/b6425523a22c7a5b92fd8305062426c79420d1e3a0bafd8df4050153cf600ed1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-posteventil-spulehane-684cea87-6a2d-4cf4-982a-c718e6410a71">
Fm mattsson udendørshane m/ greb - Se vores udvalg </a>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_18593() {
const configurableOptionsComponent = initConfigurableOptions('18593', {
"attributes": {
"146": {
"id": "146",
"code": "length",
"label": "L\u00e6ngde",
"options": [{
"id": "3467",
"label": "400 mm",
"products": ["18591"]
}, {
"id": "3529",
"label": "600 mm",
"products": ["18592"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"18591": {
"baseOldPrice": {
"amount": 444.8
},
"oldPrice": {
"amount": 556.000001
},
"basePrice": {
"amount": 426.4
},
"finalPrice": {
"amount": 533.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"18592": {
"baseOldPrice": {
"amount": 537.6
},
"oldPrice": {
"amount": 672.000001
},
"basePrice": {
"amount": 506.4
},
"finalPrice": {
"amount": 633.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 444.8
},
"oldPrice": {
"amount": 556.000001
},
"basePrice": {
"amount": 426.4
},
"finalPrice": {
"amount": 533.000001
}
},
"productId": "18593",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"18591": {
"146": "3467"
},
"18592": {
"146": "3529"
}
},
"salable": {
"146": {
"3467": ["18591"],
"3529": ["18592"]
}
},
"canDisplayShowOutOfStockStatus": true,
"preSelectedGallery": [],
"channel": "website",
"salesChannelCode": "base",
"sku": {
"18591": "743446514",
"18592": "743446544"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-18593", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_18593()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec2e04f066() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2e04f066()" @update-prices-18593.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="18593" data-price-box="product-id-18593"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-18593" data-price-amount="533.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">533,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-posteventil-spulehane-684cea87-6a2d-4cf4-982a-c718e6410a71" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(18593)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9959/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9959/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="9959">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-vertland-slangeopruller-233050100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-9959.window="$el.src = $event.detail" alt="Vertland slangeopruller" title="Slangeopruller - vertland 20 meter haveslange" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/a/ba0cea83f39ee9161d02cb65a989ec2792731d06748fbf66d1a4397bc3c0ad11.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-vertland-slangeopruller-233050100">
Vertland slangeopruller </a>
<p class="text-xs"> 233050100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>20 meter PVC haveslange</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd9a888() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd9a888()" @update-prices-9959.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="9959" data-price-box="product-id-9959"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-9959" data-price-amount="633.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">633,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-9959" data-price-amount="660.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">660,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-vertland-slangeopruller-233050100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(9959)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/10124/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/10124/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10124">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-sprojtepistol-multivander-m10-varianter-273042241" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10124.window="$el.src = $event.detail" alt="Garden vandingspistol med 10 Varianter" title="Garden vandingspistol med 10 Varianter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9d7fab166ad77cf3ef8fe0f8947c22092f734d7238ac59c85e08a3a380b131b7.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-sprojtepistol-multivander-m10-varianter-273042241">
Garden vandingspistol med 10 Varianter </a>
<p class="text-xs"> 273042241 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Sprøjtepistol</li>
<li>10 dysefunktioner</li>
<li>3 koblinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec2e05e2c0() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2e05e2c0()" @update-prices-10124.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10124" data-price-box="product-id-10124"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10124" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10124" data-price-amount="105.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">105,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-sprojtepistol-multivander-m10-varianter-273042241" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10124)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="55">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-55.window="$el.src = $event.detail" alt="Komplet nedløbsventil Speedy" title="Komplet nedløbsventil Speedy" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/5/b50fbd5159b8d2f1bb157cf06e1e8b1e3bf01772d261b581f97e3715088a46d0.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080">
Komplet nedløbsventil Speedy </a>
<p class="text-xs"> 273044080 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Egnet til nedløbsrør ø70-100 mm</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd9f98f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd9f98f()" @update-prices-55.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="55" data-price-box="product-id-55"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-55" data-price-amount="441.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">441,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-55" data-price-amount="460.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">460,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(55)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10143/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10143/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10143">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043300" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10143.window="$el.src = $event.detail" alt="Garden drypvandingssæt med spyd - Selvvanding" title="Garden drypvandingssæt med spyd - Selvvanding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/e/2/e2c3556cad9aa8dec93f10095a516d397d1ceb6b16b344ada2525e0f0d7a5820.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043300">
Garden drypvandingssæt m/spyd </a>
<p class="text-xs"> 273043300 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Komplet sæt</p>
<ul>
<li>20 spyd og T-stykker</li>
<li>15 meter slange</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec6d7cdc49() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec6d7cdc49()" @update-prices-10143.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10143" data-price-box="product-id-10143"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10143" data-price-amount="140.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">140,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10143" data-price-amount="147.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">147,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043300" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10143)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25581/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25581/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25581">
<a href="https://www.vvs-eksperten.dk/garden-stang-pistol-75cm-273042198" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25581.window="$el.src = $event.detail" alt="Garden stangpistol til havevanding 75 cm" title="Garden stangpistol til havevanding 75 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/7/273042198_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/garden-stang-pistol-75cm-273042198">
Garden stangpistol til havevanding 75 cm </a>
<p class="text-xs"> 273042198 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>8 strålemuligheder</li>
<li>75 cm stang</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fda4c9e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fda4c9e()" @update-prices-25581.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25581" data-price-box="product-id-25581"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25581" data-price-amount="149.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">149,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-25581" data-price-amount="158.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">158,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/garden-stang-pistol-75cm-273042198" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25581)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10112/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10112/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10112">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-hanekobling-12-34-273042031" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10112.window="$el.src = $event.detail" alt="Garden Hanekobling 1/2-3/4" title="Garden slangekobling-273042031" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/2/42f9d92699a5cfc4716010accb07d69cea78a391512ae7ded60c0092c9d8812c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-hanekobling-12-34-273042031">
Garden Hanekobling 1/2-3/4 </a>
<p class="text-xs"> 273042031 </p>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdaa239() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdaa239()" @update-prices-10112.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10112" data-price-box="product-id-10112"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10112" data-price-amount="15.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">15,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10112" data-price-amount="16.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">16,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-hanekobling-12-34-273042031" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10112)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/10117/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/10117/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10117">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-slangekobling-12-273042061" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10117.window="$el.src = $event.detail" alt="Garden Slangekobling 1/2" title="Garden Slangekobling 1/2" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/4/24c2050daed26913e700c0d70914f1b33d57577c6cad62b835931c6857caa0d4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-slangekobling-12-273042061">
Garden Slangekobling 1/2 </a>
<p class="text-xs"> 273042061 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>uden stop</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec2e06c803() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2e06c803()" @update-prices-10117.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10117" data-price-box="product-id-10117"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10117" data-price-amount="15.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">15,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10117" data-price-amount="16.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">16,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-slangekobling-12-273042061" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10117)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/45/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/45/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="45">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-regnvandstonde-210-liter-gron-plast-273044000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-45.window="$el.src = $event.detail" alt="Regnvandstønde 210 Liter grøn plast" title="Regnvandstønde 210 Liter grøn plast" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/0/a09cdfde8a9fa77851d67d9adf5219ecfe396c9f31f7e195ae495e5f09e37d5c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-regnvandstonde-210-liter-gron-plast-273044000">
Regnvandstønde </a>
<p class="text-xs"> 273044000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Incl. aftapshane og låg</li>
<li>210 liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdaffd5() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdaffd5()" @update-prices-45.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="45" data-price-box="product-id-45"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-45" data-price-amount="191.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">191,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-45" data-price-amount="201.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">201,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-regnvandstonde-210-liter-gron-plast-273044000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(45)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10113/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10113/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10113">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-hanekobling-universal-1-34-12-273042033" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10113.window="$el.src = $event.detail" alt="Garden Hanekobling 1-3/4-1/2" title="Garden hanekobling universal-273042033" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/8/18b515763fecaa2a54f4a29ff3ba094bdd901195b21a8023617ef27a32346345.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-hanekobling-universal-1-34-12-273042033">
Garden Hanekobling 1-3/4-1/2 </a>
<p class="text-xs"> 273042033 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Universal hanekobling</p>
<ul>
<li>1"</li>
<li>3/4"</li>
<li>1/2"</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdb5218() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdb5218()" @update-prices-10113.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10113" data-price-box="product-id-10113"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10113" data-price-amount="18.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">18,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10113" data-price-amount="21.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">21,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-hanekobling-universal-1-34-12-273042033" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10113)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10118/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10118/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10118">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-slangekobling-34-273042071" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10118.window="$el.src = $event.detail" alt="Garden Slangekobling 3/4" title="Slangekobling 1/2-273042061" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/195efc1240215ad94cdabea6087ef855f46fb71a52a70ea7c50af3e0663e7094.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-slangekobling-34-273042071">
Garden Slangekobling 3/4 </a>
<p class="text-xs"> 273042071 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>uden stop</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdbac6d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdbac6d()" @update-prices-10118.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10118" data-price-box="product-id-10118"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10118" data-price-amount="15.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">15,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10118" data-price-amount="16.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">16,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-havevanding-garden-slangekobling-34-273042071" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10118)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/18599/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/18599/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="18599">
<a href="https://www.vvs-eksperten.dk/hus-og-have-udendorshane-aftapshane-med-l-greb-12-741419004" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-18599.window="$el.src = $event.detail" alt="Aftapshane med L-greb" title="Kugleaftapsventil med L-greb|741419004" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/1/2116784cbfe66212a2a50443ea864334bdda7d64a596270c5f2d3029c9e9da9b.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-dc447844-fbf9-4d82-84c4-94016935cefc">
Aftapshane med L-greb </a>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_18599() {
const configurableOptionsComponent = initConfigurableOptions('18599', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1353",
"label": "1\/2\"",
"products": ["18597"]
}, {
"id": "1882",
"label": "3\/4\"",
"products": ["18598"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"18597": {
"baseOldPrice": {
"amount": 56
},
"oldPrice": {
"amount": 70.000001
},
"basePrice": {
"amount": 52.8
},
"finalPrice": {
"amount": 66.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"18598": {
"baseOldPrice": {
"amount": 90.4
},
"oldPrice": {
"amount": 113.000001
},
"basePrice": {
"amount": 84
},
"finalPrice": {
"amount": 105.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 56
},
"oldPrice": {
"amount": 70.000001
},
"basePrice": {
"amount": 52.8
},
"finalPrice": {
"amount": 66.000001
}
},
"productId": "18599",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"18597": {
"141": "1353"
},
"18598": {
"141": "1882"
}
},
"salable": {
"141": {
"1353": ["18597"],
"1882": ["18598"]
}
},
"canDisplayShowOutOfStockStatus": true,
"preSelectedGallery": [],
"channel": "website",
"salesChannelCode": "base",
"sku": {
"18597": "741419004",
"18598": "741419006"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-18599", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_18599()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec66bc96d4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec66bc96d4()" @update-prices-18599.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="18599" data-price-box="product-id-18599"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-18599" data-price-amount="66.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">66,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-dc447844-fbf9-4d82-84c4-94016935cefc" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(18599)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10103/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10103/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10103">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-fitt-nst-haveslange-12-25-meter-273042005" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10103.window="$el.src = $event.detail" alt="NST Yellow 1/2"  haveslange 25 meter"="" title="NST Yellow 1/2" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/2/42b94c33fd65a3d18ba1915f7b9966e07427ed73a22f3476a5ec00a8052c0dda.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-fitt-nst-haveslange-12-25-meter-273042005">
NTS Yellow vandslange PVC </a>
<p class="text-xs"> 273042005 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>25 meter fleksibel vandslange</li>
<li>Godkendt til kontakt med fødevarer</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdc0acf() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdc0acf()" @update-prices-10103.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10103" data-price-box="product-id-10103"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10103" data-price-amount="290.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">290,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10103" data-price-amount="306.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">306,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-fitt-nst-haveslange-12-25-meter-273042005" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10103)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10144/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10144/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10144">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043310" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10144.window="$el.src = $event.detail" alt="Garden drypvandingssæt med dyser- Selvvanding" title="Garden drypvandingssæt med dyser- Selvvanding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/c/fcc84b398fe89e7a4c9c14767c410384aad707e2041274e0c4762e070a6e50b4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043310">
Garden drypvandingssæt m/dyser </a>
<p class="text-xs"> 273043310 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Komplet sæt</p>
<ul>
<li>20 spyd og dyser</li>
<li>15 meter slange</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdc6c72() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdc6c72()" @update-prices-10144.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10144" data-price-box="product-id-10144"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10144" data-price-amount="140.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">140,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10144" data-price-amount="147.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">147,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043310" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10144)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10149/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10149/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10149">
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-273043360" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10149.window="$el.src = $event.detail" alt="Garden vandingsur Automatisk havevanding" title="Garden vandingsur Automatisk havevanding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/c/dcdfc43d34e1d9fd6438084b843a6227fda17da5384b97607a98845587703870.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-273043360">
Garden vandingsur Automatisk havevanding </a>
<p class="text-xs"> 273043360 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Forbrug 1-120 minutter</li>
<li>Interval 1-72 timer</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec6d7de23d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec6d7de23d()" @update-prices-10149.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10149" data-price-box="product-id-10149"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10149" data-price-amount="211.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">211,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10149" data-price-amount="222.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">222,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-273043360" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10149)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10123/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10123/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10123">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-12-slangekoblingssaet-4-dele-273042221" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10123.window="$el.src = $event.detail" alt="Garden 1/2"  slangekoblingssæt 4 dele"="" title="Garden slangekoblingssæt 4 dele-273042221" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/d/cd4fc9a23e21ce034de9b9ce770bb0a22905729487c5ae1072e14616ae39f32d.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-12-slangekoblingssaet-4-dele-273042221">
Garden 1/2" slangekoblingssæt 4 dele </a>
<p class="text-xs"> 273042221 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Strålespids og 3 koblinger</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdcc81b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdcc81b()" @update-prices-10123.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10123" data-price-box="product-id-10123"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10123" data-price-amount="68.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">68,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10123" data-price-amount="73.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">73,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-12-slangekoblingssaet-4-dele-273042221" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10123)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9956/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9956/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="9956">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-slangeholder-273042100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-9956.window="$el.src = $event.detail" alt="Grouw holder til haveslange" title="Grouw holder til haveslange" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/6/063ccecd843cb6f2660a0fbbc155c0cf71ef0d1ab142555963c0ef51f391f77f.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-slangeholder-273042100">
Grouw holder til haveslange </a>
<p class="text-xs"> 273042100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Til 30 meter slange</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdd2938() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdd2938()" @update-prices-9956.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="9956" data-price-box="product-id-9956"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-9956" data-price-amount="51.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">51,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-9956" data-price-amount="55.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">55,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-slangeholder-273042100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(9956)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10132/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10132/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10132">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-12-slangekoblingssaet-med-4-dele-273042081" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10132.window="$el.src = $event.detail" alt="Garden 1/2"  slangekoblingssæt med 4 dele"="" title="Garden slangekoblingssæt 4dele-273042081" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/0/00295b3533739f0f77b31f0332bb2aa0b332989005def11c6909bda2c4bab1e9.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-12-slangekoblingssaet-med-4-dele-273042081">
Garden 1/2" slangekoblingssæt med 4 dele </a>
<p class="text-xs"> 273042081 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Strålespids og 3 koblinger</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdd88bf() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdd88bf()" @update-prices-10132.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10132" data-price-box="product-id-10132"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10132" data-price-amount="59.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">59,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10132" data-price-amount="63.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">63,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-12-slangekoblingssaet-med-4-dele-273042081" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10132)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/121/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/121/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="121">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-flexslange-75-225-meter-273042165" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-121.window="$el.src = $event.detail" alt="Flexslange 7,5-22,5 Meter" title="Grouw flexslange med bruser-273042165" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/e/9e9d6e4684fe997ccaffc8030e66b1e40a319c01ad90204ac780ab7a9c3ee180.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-flexslange-75-225-meter-273042165">
Flexslange 7,5-22,5 Meter </a>
<p class="text-xs"> 273042165 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Incl. sprøjtepistol og hanekobling</p>
<p>Farven kan variere, afhængig af hvad der er disponibelt.</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fde38b6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fde38b6()" @update-prices-121.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="121" data-price-box="product-id-121"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-121" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-121" data-price-amount="107.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">107,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-flexslange-75-225-meter-273042165" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(121)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10119/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10119/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10119">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-34-slangekoblingssaet-med-4-dele-273042086" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10119.window="$el.src = $event.detail" alt="Garden 3/4"  slangekoblingssæt med 4 dele"="" title="Garden slangekoblingssæt 3/4" -273042086"="" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/c/bc56629816b68b2780d8d1ccbfad2b72a51f0b1f9ebf5df498e1ae6658dbec1a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-34-slangekoblingssaet-med-4-dele-273042086">
Garden 3/4" slangekoblingssæt med 4 dele </a>
<p class="text-xs"> 273042086 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Strålespids og 3 koblinger</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fde9ca6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fde9ca6()" @update-prices-10119.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10119" data-price-box="product-id-10119"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10119" data-price-amount="59.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">59,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10119" data-price-amount="63.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">63,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-34-slangekoblingssaet-med-4-dele-273042086" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10119)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/41433/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/41433/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="41433">
<a href="https://www.vvs-eksperten.dk/ror-og-fittings-pipe-clamps-stal-og-metaller-gevindror-galvaniseret-stalror-2-meter-12-021003204" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-41433.window="$el.src = $event.detail" alt="Galvaniseret stålrør 2 meter" title="Galvaniseret stålrør 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/9/f92ebefef5ba4cc58dfa612b2255d1c23dd6025d1037f453e9c9fd65c245902b_2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/galvaniseret-stalror-2-meter-021003204-021003206-021003208">
Galvaniseret stålrør 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Størrelser fra 1/2" til 1"</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_41433() {
const configurableOptionsComponent = initConfigurableOptions('41433', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1318",
"label": "1\"",
"products": ["20317"]
}, {
"id": "1353",
"label": "1\/2\"",
"products": ["20315"]
}, {
"id": "1882",
"label": "3\/4\"",
"products": ["20316"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"20315": {
"baseOldPrice": {
"amount": 122.4
},
"oldPrice": {
"amount": 153.000001
},
"basePrice": {
"amount": 116
},
"finalPrice": {
"amount": 145.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"20316": {
"baseOldPrice": {
"amount": 200.8
},
"oldPrice": {
"amount": 251.000001
},
"basePrice": {
"amount": 190.4
},
"finalPrice": {
"amount": 238.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"20317": {
"baseOldPrice": {
"amount": 263.2
},
"oldPrice": {
"amount": 329.000001
},
"basePrice": {
"amount": 252
},
"finalPrice": {
"amount": 315.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 122.4
},
"oldPrice": {
"amount": 153.000001
},
"basePrice": {
"amount": 116
},
"finalPrice": {
"amount": 145.000001
}
},
"productId": "41433",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"20315": {
"141": "1353"
},
"20316": {
"141": "1882"
},
"20317": {
"141": "1318"
}
},
"salable": {
"141": {
"1353": ["20315"],
"1882": ["20316"],
"1318": ["20317"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"20315": "021003204",
"20316": "021003206",
"20317": "021003208"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-41433", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_41433()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ecdde8ed43() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecdde8ed43()" @update-prices-41433.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="41433" data-price-box="product-id-41433"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-41433" data-price-amount="145.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">145,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/galvaniseret-stalror-2-meter-021003204-021003206-021003208" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(41433)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60407/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60407/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60407">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-52run6" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60407.window="$el.src = $event.detail" alt="Rundstål sort - Stangstål 2 meter" title="Rundstål sort - Stangstål 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55run08_1_7_1.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/rundstal-sort-stangstal-2-meter-52run12-52run10-52run8-52run6">
Rundstål sort - Stangstål 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Diameter fra 6-12 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60407() {
const configurableOptionsComponent = initConfigurableOptions('60407', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1377",
"label": "10 mm",
"products": ["59869"]
}, {
"id": "1450",
"label": "12 mm",
"products": ["59867"]
}, {
"id": "2133",
"label": "6 mm",
"products": ["59872"]
}, {
"id": "2223",
"label": "8 mm",
"products": ["59870"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59872": {
"baseOldPrice": {
"amount": 16.8
},
"oldPrice": {
"amount": 21.000001
},
"basePrice": {
"amount": 16.8
},
"finalPrice": {
"amount": 21.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59870": {
"baseOldPrice": {
"amount": 26.4
},
"oldPrice": {
"amount": 33.000001
},
"basePrice": {
"amount": 26.4
},
"finalPrice": {
"amount": 33.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59869": {
"baseOldPrice": {
"amount": 38.4
},
"oldPrice": {
"amount": 48.000001
},
"basePrice": {
"amount": 38.4
},
"finalPrice": {
"amount": 48.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59867": {
"baseOldPrice": {
"amount": 50.4
},
"oldPrice": {
"amount": 63.000001
},
"basePrice": {
"amount": 50.4
},
"finalPrice": {
"amount": 63.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 16.8
},
"oldPrice": {
"amount": 21.000001
},
"basePrice": {
"amount": 16.8
},
"finalPrice": {
"amount": 21.000001
}
},
"productId": "60407",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59872": {
"141": "2133"
},
"59870": {
"141": "2223"
},
"59869": {
"141": "1377"
},
"59867": {
"141": "1450"
}
},
"salable": {
"141": {
"2133": ["59872"],
"2223": ["59870"],
"1377": ["59869"],
"1450": ["59867"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59872": "52RUN6",
"59870": "52RUN8",
"59869": "52RUN10",
"59867": "52RUN12"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60407", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60407()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fe556ed() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fe556ed()" @update-prices-60407.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60407" data-price-box="product-id-60407"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60407" data-price-amount="21.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">21,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/rundstal-sort-stangstal-2-meter-52run12-52run10-52run8-52run6" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60407)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60403/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60403/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60403">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-skorsten-schiedel-isokern-dobbeltmodul-skorsten-52kam8" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60403.window="$el.src = $event.detail" alt="Kamstål ribbet armeringsstål Tentorstål 2 meter B550 DS/EN10080" title="Kamstål ribbet armeringsstål Tentorstål 2 meter B550 DS/EN10080" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55kam10_1_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/kamstal-ribbet-armeringsstal-2-meter-52kam16-52kam12-52kam10-52kam8">
Kamstål ribbet 2 meter Armeringsstål </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Diameter fra 8-16 mm</li>
<li>B550 DS/EN10080</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60403() {
const configurableOptionsComponent = initConfigurableOptions('60403', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1377",
"label": "10 mm",
"products": ["59887"]
}, {
"id": "1450",
"label": "12 mm",
"products": ["59886"]
}, {
"id": "1564",
"label": "16 mm",
"products": ["59885"]
}, {
"id": "2223",
"label": "8 mm",
"products": ["59888"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59888": {
"baseOldPrice": {
"amount": 13.6
},
"oldPrice": {
"amount": 17.000001
},
"basePrice": {
"amount": 13.6
},
"finalPrice": {
"amount": 17.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59887": {
"baseOldPrice": {
"amount": 20.8
},
"oldPrice": {
"amount": 26.000001
},
"basePrice": {
"amount": 20.8
},
"finalPrice": {
"amount": 26.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59886": {
"baseOldPrice": {
"amount": 59.2
},
"oldPrice": {
"amount": 74.000001
},
"basePrice": {
"amount": 59.2
},
"finalPrice": {
"amount": 74.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59885": {
"baseOldPrice": {
"amount": 52.8
},
"oldPrice": {
"amount": 66.000001
},
"basePrice": {
"amount": 52.8
},
"finalPrice": {
"amount": 66.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 13.6
},
"oldPrice": {
"amount": 17.000001
},
"basePrice": {
"amount": 13.6
},
"finalPrice": {
"amount": 17.000001
}
},
"productId": "60403",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59888": {
"141": "2223"
},
"59887": {
"141": "1377"
},
"59886": {
"141": "1450"
},
"59885": {
"141": "1564"
}
},
"salable": {
"141": {
"2223": ["59888"],
"1377": ["59887"],
"1450": ["59886"],
"1564": ["59885"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59888": "52KAM8",
"59887": "52KAM10",
"59886": "52KAM12",
"59885": "52KAM16"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60403", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60403()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fe6034b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fe6034b()" @update-prices-60403.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60403" data-price-box="product-id-60403"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60403" data-price-amount="17.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">17,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/kamstal-ribbet-armeringsstal-2-meter-52kam16-52kam12-52kam10-52kam8" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60403)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60402/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60402/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60402">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-aluminium-52hula202015" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60402.window="$el.src = $event.detail" alt="Aluminium profilrør Hulprofil kvadratisk 2 meter" title="Aluminium profilrør Hulprofil kvadratisk 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55hula404030_1_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aluminium-profilror-hulprofil-kvadratisk-2-meter-52hula40403-52hula30302-52hula">
Aluminium profilrør Hulprofil kvadratisk 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelse 2-3mm</li>
<li>Bredde/højde fra 20-40mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60402() {
const configurableOptionsComponent = initConfigurableOptions('60402', {
"attributes": {
"144": {
"id": "144",
"code": "height",
"label": "H\u00f8jde",
"options": [{
"id": "2672",
"label": "20 mm",
"products": ["59891"]
}, {
"id": "2735",
"label": "30 mm",
"products": ["59890"]
}, {
"id": "2765",
"label": "40 mm",
"products": ["59889"]
}],
"position": "0"
},
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "2965",
"label": "20 mm",
"products": ["59891"]
}, {
"id": "3005",
"label": "30 mm",
"products": ["59890"]
}, {
"id": "3036",
"label": "40 mm",
"products": ["59889"]
}],
"position": "1"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7161",
"label": "2 mm",
"products": ["59891", "59890"]
}, {
"id": "7168",
"label": "3 mm",
"products": ["59889"]
}],
"position": "2"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59891": {
"baseOldPrice": {
"amount": 102.4
},
"oldPrice": {
"amount": 128.000001
},
"basePrice": {
"amount": 102.4
},
"finalPrice": {
"amount": 128.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59890": {
"baseOldPrice": {
"amount": 174.4
},
"oldPrice": {
"amount": 218.000001
},
"basePrice": {
"amount": 174.4
},
"finalPrice": {
"amount": 218.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59889": {
"baseOldPrice": {
"amount": 322.4
},
"oldPrice": {
"amount": 403.000001
},
"basePrice": {
"amount": 322.4
},
"finalPrice": {
"amount": 403.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 102.4
},
"oldPrice": {
"amount": 128.000001
},
"basePrice": {
"amount": 102.4
},
"finalPrice": {
"amount": 128.000001
}
},
"productId": "60402",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59891": {
"144": "2672",
"145": "2965",
"151": "7161"
},
"59890": {
"144": "2735",
"145": "3005",
"151": "7161"
},
"59889": {
"144": "2765",
"145": "3036",
"151": "7168"
}
},
"salable": {
"144": {
"2672": ["59891"],
"2735": ["59890"],
"2765": ["59889"]
},
"145": {
"2965": ["59891"],
"3005": ["59890"],
"3036": ["59889"]
},
"151": {
"7161": ["59891", "59890"],
"7168": ["59889"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59891": "52HULA202015",
"59890": "52HULA30302",
"59889": "52HULA40403"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60402", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60402()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fe6b6c2() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fe6b6c2()" @update-prices-60402.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60402" data-price-box="product-id-60402"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60402" data-price-amount="128.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">128,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aluminium-profilror-hulprofil-kvadratisk-2-meter-52hula40403-52hula30302-52hula" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60402)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60400/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60400/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60400">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-hulprofil-20-20-2mm-52hul2020202" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60400.window="$el.src = $event.detail" alt="Hulprofil kvadratisk sort stålrør 2 meter" title="Hulprofil kvadratisk sort stålrør 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/2/52hul2020202_1_5.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hulprofil-kvadratisk-sort-stalror-2-meter-52hul50503-52hul404015-52hul30">
Hulprofil kvadratisk stålrør </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelse fra 2-3mm</li>
<li>Bredde/højde fra 20-50mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60400() {
const configurableOptionsComponent = initConfigurableOptions('60400', {
"attributes": {
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "2965",
"label": "20 mm",
"products": ["59899"]
}, {
"id": "2988",
"label": "25 mm",
"products": ["59898"]
}, {
"id": "3005",
"label": "30 mm",
"products": ["59897"]
}, {
"id": "3036",
"label": "40 mm",
"products": ["59896"]
}, {
"id": "3070",
"label": "50 mm",
"products": ["59895"]
}],
"position": "0"
},
"144": {
"id": "144",
"code": "height",
"label": "H\u00f8jde",
"options": [{
"id": "2672",
"label": "20 mm",
"products": ["59899"]
}, {
"id": "2713",
"label": "25 mm",
"products": ["59898"]
}, {
"id": "2735",
"label": "30 mm",
"products": ["59897"]
}, {
"id": "2765",
"label": "40 mm",
"products": ["59896"]
}, {
"id": "2790",
"label": "50 mm",
"products": ["59895"]
}],
"position": "1"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7161",
"label": "2 mm",
"products": ["59899", "59898", "59896"]
}, {
"id": "7168",
"label": "3 mm",
"products": ["59897", "59895"]
}],
"position": "2"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59899": {
"baseOldPrice": {
"amount": 82.4
},
"oldPrice": {
"amount": 103.000001
},
"basePrice": {
"amount": 82.4
},
"finalPrice": {
"amount": 103.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59898": {
"baseOldPrice": {
"amount": 100.8
},
"oldPrice": {
"amount": 126.000001
},
"basePrice": {
"amount": 100.8
},
"finalPrice": {
"amount": 126.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59897": {
"baseOldPrice": {
"amount": 148
},
"oldPrice": {
"amount": 185.000001
},
"basePrice": {
"amount": 148
},
"finalPrice": {
"amount": 185.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59896": {
"baseOldPrice": {
"amount": 147.2
},
"oldPrice": {
"amount": 184.000001
},
"basePrice": {
"amount": 147.2
},
"finalPrice": {
"amount": 184.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59895": {
"baseOldPrice": {
"amount": 249.6
},
"oldPrice": {
"amount": 312.000001
},
"basePrice": {
"amount": 249.6
},
"finalPrice": {
"amount": 312.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 82.4
},
"oldPrice": {
"amount": 103.000001
},
"basePrice": {
"amount": 82.4
},
"finalPrice": {
"amount": 103.000001
}
},
"productId": "60400",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59899": {
"145": "2965",
"144": "2672",
"151": "7161"
},
"59898": {
"145": "2988",
"144": "2713",
"151": "7161"
},
"59897": {
"145": "3005",
"144": "2735",
"151": "7168"
},
"59896": {
"145": "3036",
"144": "2765",
"151": "7161"
},
"59895": {
"145": "3070",
"144": "2790",
"151": "7168"
}
},
"salable": {
"145": {
"2965": ["59899"],
"2988": ["59898"],
"3005": ["59897"],
"3036": ["59896"],
"3070": ["59895"]
},
"144": {
"2672": ["59899"],
"2713": ["59898"],
"2735": ["59897"],
"2765": ["59896"],
"2790": ["59895"]
},
"151": {
"7161": ["59899", "59898", "59896"],
"7168": ["59897", "59895"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59899": "52HUL2020202",
"59898": "52HUL25252",
"59897": "52HUL30303",
"59896": "52HUL404015",
"59895": "52HUL50503"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60400", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60400()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fe77a52() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fe77a52()" @update-prices-60400.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60400" data-price-box="product-id-60400"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60400" data-price-amount="103.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">103,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hulprofil-kvadratisk-sort-stalror-2-meter-52hul50503-52hul404015-52hul30" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60400)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60398/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60398/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60398">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-aluminium-52flaa202" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60398.window="$el.src = $event.detail" alt="Aluminium fladstål 2 meter Alu stænger" title="Aluminium fladstål 2 meter Alu stænger" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55flaa215_1_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aluminium-fladstal-aluminium-staenger-2-meter-52flaa202-52flaa303-52flaa503">
Aluminium fladstål 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelse fra 2-4 mm</li>
<li>Bredde fra 20-50 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60398() {
const configurableOptionsComponent = initConfigurableOptions('60398', {
"attributes": {
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "2965",
"label": "20 mm",
"products": ["59868"]
}, {
"id": "3005",
"label": "30 mm",
"products": ["59871"]
}, {
"id": "3036",
"label": "40 mm",
"products": ["59881"]
}, {
"id": "3070",
"label": "50 mm",
"products": ["59874"]
}],
"position": "0"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7161",
"label": "2 mm",
"products": ["59868"]
}, {
"id": "7168",
"label": "3 mm",
"products": ["59871", "59874"]
}, {
"id": "7170",
"label": "4 mm",
"products": ["59881"]
}],
"position": "1"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59868": {
"baseOldPrice": {
"amount": 38.4
},
"oldPrice": {
"amount": 48.000001
},
"basePrice": {
"amount": 38.4
},
"finalPrice": {
"amount": 48.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59871": {
"baseOldPrice": {
"amount": 68
},
"oldPrice": {
"amount": 85.000001
},
"basePrice": {
"amount": 68
},
"finalPrice": {
"amount": 85.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59874": {
"baseOldPrice": {
"amount": 116
},
"oldPrice": {
"amount": 145.000001
},
"basePrice": {
"amount": 116
},
"finalPrice": {
"amount": 145.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59881": {
"baseOldPrice": {
"amount": 120.8
},
"oldPrice": {
"amount": 151.000001
},
"basePrice": {
"amount": 120.8
},
"finalPrice": {
"amount": 151.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 38.4
},
"oldPrice": {
"amount": 48.000001
},
"basePrice": {
"amount": 38.4
},
"finalPrice": {
"amount": 48.000001
}
},
"productId": "60398",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59868": {
"145": "2965",
"151": "7161"
},
"59871": {
"145": "3005",
"151": "7168"
},
"59874": {
"145": "3070",
"151": "7168"
},
"59881": {
"145": "3036",
"151": "7170"
}
},
"salable": {
"145": {
"2965": ["59868"],
"3005": ["59871"],
"3070": ["59874"],
"3036": ["59881"]
},
"151": {
"7161": ["59868"],
"7168": ["59871", "59874"],
"7170": ["59881"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59868": "52FLAA202",
"59871": "52FLAA303",
"59874": "52FLAA503",
"59881": "52FLAA404"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60398", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60398()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fe84b47() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fe84b47()" @update-prices-60398.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60398" data-price-box="product-id-60398"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60398" data-price-amount="48.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">48,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aluminium-fladstal-aluminium-staenger-2-meter-52flaa202-52flaa303-52flaa503" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60398)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60397/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60397/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60397">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-52fla405" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60397.window="$el.src = $event.detail" alt="Sort Fladstål stangstål 2 meter" title="Sort Fladstål stangstål 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55fladst_l_2_3.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/sort-fladstal-2-meter-stangstal-52fla405-52fla505-52fla605">
Sort Fladstål stangstål 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelser fra 4-5 mm</li>
<li>Bredder fra 20-50 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60397() {
const configurableOptionsComponent = initConfigurableOptions('60397', {
"attributes": {
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "3036",
"label": "40 mm",
"products": ["59859"]
}, {
"id": "3070",
"label": "50 mm",
"products": ["59863"]
}],
"position": "0"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7173",
"label": "5 mm",
"products": ["59859", "59863"]
}],
"position": "1"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59859": {
"baseOldPrice": {
"amount": 84
},
"oldPrice": {
"amount": 105.000001
},
"basePrice": {
"amount": 84
},
"finalPrice": {
"amount": 105.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59863": {
"baseOldPrice": {
"amount": 128
},
"oldPrice": {
"amount": 160.000001
},
"basePrice": {
"amount": 128
},
"finalPrice": {
"amount": 160.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 84
},
"oldPrice": {
"amount": 105.000001
},
"basePrice": {
"amount": 84
},
"finalPrice": {
"amount": 105.000001
}
},
"productId": "60397",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59859": {
"145": "3036",
"151": "7173"
},
"59863": {
"145": "3070",
"151": "7173"
}
},
"salable": {
"145": {
"3036": ["59859"],
"3070": ["59863"]
},
"151": {
"7173": ["59859", "59863"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59859": "52FLA405",
"59863": "52FLA605"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60397", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60397()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fe8f044() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fe8f044()" @update-prices-60397.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60397" data-price-box="product-id-60397"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60397" data-price-amount="105.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">105,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/sort-fladstal-2-meter-stangstal-52fla405-52fla505-52fla605" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60397)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay9pbmRleC5waHA_cm91dGU9cHJvZHVjdC9wcm9kdWN0L2dldFByb2R1Y3RBdHRhY2htZW50RmlsZSZhdHRhY2htZW50X2lkPTE3NDIzJmdhZF9zb3VyY2U9MQ~~/product/60396/
<form method="post"
action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay9pbmRleC5waHA_cm91dGU9cHJvZHVjdC9wcm9kdWN0L2dldFByb2R1Y3RBdHRhY2htZW50RmlsZSZhdHRhY2htZW50X2lkPTE3NDIzJmdhZF9zb3VyY2U9MQ~~/product/60396/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60396">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-52ban203" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60396.window="$el.src = $event.detail" alt="Sort båndstål Stangstål 2 meter" title="Sort båndstål Stangstål 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55b_n202_1_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/sort-bandstal-stangstal-2-meter-52ban203-52ban303-52ban403">
Sort båndstål 2 meter Stangstål </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Græskanter eller bedkanter i stål</p>
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelser fra 3-4mm</li>
<li>Bredder fra 20 - 50 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60396() {
const configurableOptionsComponent = initConfigurableOptions('60396', {
"attributes": {
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "2965",
"label": "20 mm",
"products": ["59848", "59852"]
}, {
"id": "2988",
"label": "25 mm",
"products": ["59853"]
}, {
"id": "3005",
"label": "30 mm",
"products": ["59849", "59855"]
}, {
"id": "3036",
"label": "40 mm",
"products": ["59856"]
}, {
"id": "3070",
"label": "50 mm",
"products": ["59851", "59858"]
}],
"position": "0"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7168",
"label": "3 mm",
"products": ["59848", "59849", "59851"]
}, {
"id": "7170",
"label": "4 mm",
"products": ["59852", "59853", "59855", "59856", "59858"]
}],
"position": "1"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59848": {
"baseOldPrice": {
"amount": 38.4
},
"oldPrice": {
"amount": 48.000001
},
"basePrice": {
"amount": 38.4
},
"finalPrice": {
"amount": 48.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59849": {
"baseOldPrice": {
"amount": 49.6
},
"oldPrice": {
"amount": 62.000001
},
"basePrice": {
"amount": 49.6
},
"finalPrice": {
"amount": 62.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59851": {
"baseOldPrice": {
"amount": 82.4
},
"oldPrice": {
"amount": 103.000001
},
"basePrice": {
"amount": 82.4
},
"finalPrice": {
"amount": 103.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59852": {
"baseOldPrice": {
"amount": 47.2
},
"oldPrice": {
"amount": 59.000001
},
"basePrice": {
"amount": 47.2
},
"finalPrice": {
"amount": 59.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59853": {
"baseOldPrice": {
"amount": 58.4
},
"oldPrice": {
"amount": 73.000001
},
"basePrice": {
"amount": 58.4
},
"finalPrice": {
"amount": 73.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59855": {
"baseOldPrice": {
"amount": 59.2
},
"oldPrice": {
"amount": 74.000001
},
"basePrice": {
"amount": 59.2
},
"finalPrice": {
"amount": 74.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59856": {
"baseOldPrice": {
"amount": 85.6
},
"oldPrice": {
"amount": 107.000001
},
"basePrice": {
"amount": 85.6
},
"finalPrice": {
"amount": 107.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59858": {
"baseOldPrice": {
"amount": 108
},
"oldPrice": {
"amount": 135.000001
},
"basePrice": {
"amount": 108
},
"finalPrice": {
"amount": 135.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 38.4
},
"oldPrice": {
"amount": 48.000001
},
"basePrice": {
"amount": 38.4
},
"finalPrice": {
"amount": 48.000001
}
},
"productId": "60396",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59848": {
"145": "2965",
"151": "7168"
},
"59849": {
"145": "3005",
"151": "7168"
},
"59851": {
"145": "3070",
"151": "7168"
},
"59852": {
"145": "2965",
"151": "7170"
},
"59853": {
"145": "2988",
"151": "7170"
},
"59855": {
"145": "3005",
"151": "7170"
},
"59856": {
"145": "3036",
"151": "7170"
},
"59858": {
"145": "3070",
"151": "7170"
}
},
"salable": {
"145": {
"2965": ["59848", "59852"],
"3005": ["59849", "59855"],
"3070": ["59851", "59858"],
"2988": ["59853"],
"3036": ["59856"]
},
"151": {
"7168": ["59848", "59849", "59851"],
"7170": ["59852", "59853", "59855", "59856", "59858"]
}
},
"canDisplayShowOutOfStockStatus": true,
"preSelectedGallery": [],
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59848": "52B\u00c5N203",
"59849": "52B\u00c5N303",
"59851": "52B\u00c5N503",
"59852": "52B\u00c5N204",
"59853": "52B\u00c5N254",
"59855": "52B\u00c5N304",
"59856": "52B\u00c5N404",
"59858": "52B\u00c5N504"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60396", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60396()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec9f81d998() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec9f81d998()" @update-prices-60396.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60396" data-price-box="product-id-60396"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60396" data-price-amount="48.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">48,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/sort-bandstal-stangstal-2-meter-52ban203-52ban303-52ban403" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60396)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60395/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60395/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60395">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-52ving30" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60395.window="$el.src = $event.detail" alt="Galvaniseret vinkelstål - Stangstål 2 meter" title="Galvaniseret vinkelstål - Stangstål 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/2/52ving30_1_2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/galvaniseret-vinkelstal-2-meter-52ving40404-52ving30">
Galvaniseret vinkelstål - Stangstål 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelse fra 3 - 4 mm</li>
<li>Bredde/højde fra 30 - 40 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60395() {
const configurableOptionsComponent = initConfigurableOptions('60395', {
"attributes": {
"144": {
"id": "144",
"code": "height",
"label": "H\u00f8jde",
"options": [{
"id": "2735",
"label": "30 mm",
"products": ["59810"]
}, {
"id": "2765",
"label": "40 mm",
"products": ["59809"]
}],
"position": "0"
},
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "3005",
"label": "30 mm",
"products": ["59810"]
}, {
"id": "3036",
"label": "40 mm",
"products": ["59809"]
}],
"position": "1"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7168",
"label": "3 mm",
"products": ["59810"]
}, {
"id": "7170",
"label": "4 mm",
"products": ["59809"]
}],
"position": "2"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59810": {
"baseOldPrice": {
"amount": 118.4
},
"oldPrice": {
"amount": 148.000001
},
"basePrice": {
"amount": 118.4
},
"finalPrice": {
"amount": 148.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59809": {
"baseOldPrice": {
"amount": 208
},
"oldPrice": {
"amount": 260.000001
},
"basePrice": {
"amount": 208
},
"finalPrice": {
"amount": 260.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 118.4
},
"oldPrice": {
"amount": 148.000001
},
"basePrice": {
"amount": 118.4
},
"finalPrice": {
"amount": 148.000001
}
},
"productId": "60395",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59810": {
"144": "2735",
"145": "3005",
"151": "7168"
},
"59809": {
"144": "2765",
"145": "3036",
"151": "7170"
}
},
"salable": {
"144": {
"2735": ["59810"],
"2765": ["59809"]
},
"145": {
"3005": ["59810"],
"3036": ["59809"]
},
"151": {
"7168": ["59810"],
"7170": ["59809"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59810": "52VING30",
"59809": "52VING40404"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60395", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60395()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fe994b3() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fe994b3()" @update-prices-60395.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60395" data-price-box="product-id-60395"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60395" data-price-amount="148.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">148,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/galvaniseret-vinkelstal-2-meter-52ving40404-52ving30" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60395)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60394/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60394/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60394">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-aluminium-52vina20202" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60394.window="$el.src = $event.detail" alt="Aluminiuml Vinkelstål ligesidet - Aluminiumprofil 2 meter" title="Aluminiuml Vinkelstål ligesidet - Aluminiumprofil 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55vina20202_1_2_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aluminiuml-vinkelstal-ligesidet-aluminiumprofil-2-meter-52vina40404-52vina30303-52vina">
Aluminiuml Vinkelstål ligesidet - Aluminiumprofil 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelse fra 2-4 mm</li>
<li>Bredde/højde fra 20-40 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60394() {
const configurableOptionsComponent = initConfigurableOptions('60394', {
"attributes": {
"144": {
"id": "144",
"code": "height",
"label": "H\u00f8jde",
"options": [{
"id": "2672",
"label": "20 mm",
"products": ["59813"]
}, {
"id": "2735",
"label": "30 mm",
"products": ["59812"]
}, {
"id": "2765",
"label": "40 mm",
"products": ["59811"]
}],
"position": "0"
},
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "2965",
"label": "20 mm",
"products": ["59813"]
}, {
"id": "3005",
"label": "30 mm",
"products": ["59812"]
}, {
"id": "3036",
"label": "40 mm",
"products": ["59811"]
}],
"position": "1"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7161",
"label": "2 mm",
"products": ["59813"]
}, {
"id": "7168",
"label": "3 mm",
"products": ["59812"]
}, {
"id": "7170",
"label": "4 mm",
"products": ["59811"]
}],
"position": "2"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59813": {
"baseOldPrice": {
"amount": 66.4
},
"oldPrice": {
"amount": 83.000001
},
"basePrice": {
"amount": 66.4
},
"finalPrice": {
"amount": 83.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59812": {
"baseOldPrice": {
"amount": 129.6
},
"oldPrice": {
"amount": 162.000001
},
"basePrice": {
"amount": 129.6
},
"finalPrice": {
"amount": 162.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59811": {
"baseOldPrice": {
"amount": 228.8
},
"oldPrice": {
"amount": 286.000001
},
"basePrice": {
"amount": 228.8
},
"finalPrice": {
"amount": 286.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 66.4
},
"oldPrice": {
"amount": 83.000001
},
"basePrice": {
"amount": 66.4
},
"finalPrice": {
"amount": 83.000001
}
},
"productId": "60394",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59813": {
"144": "2672",
"145": "2965",
"151": "7161"
},
"59812": {
"144": "2735",
"145": "3005",
"151": "7168"
},
"59811": {
"144": "2765",
"145": "3036",
"151": "7170"
}
},
"salable": {
"144": {
"2672": ["59813"],
"2735": ["59812"],
"2765": ["59811"]
},
"145": {
"2965": ["59813"],
"3005": ["59812"],
"3036": ["59811"]
},
"151": {
"7161": ["59813"],
"7168": ["59812"],
"7170": ["59811"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59813": "52VINA20202",
"59812": "52VINA30303",
"59811": "52VINA40404"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60394", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60394()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fea45f8() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fea45f8()" @update-prices-60394.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60394" data-price-box="product-id-60394"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60394" data-price-amount="83.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">83,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aluminiuml-vinkelstal-ligesidet-aluminiumprofil-2-meter-52vina40404-52vina30303-52vina" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60394)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60393/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60393/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60393">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-52vin20203" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60393.window="$el.src = $event.detail" alt="Vinkelstål sort ligesidet - Stangstål 2 meter" title="Vinkelstål sort ligesidet - Stangstål 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/2/52vin20203_1_6.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/vinkelstal-sort-ligesidet-stangstal-2-meter-52vin50505-52vin40404-52vin303">
Vinkelstål sort ligesidet - Stangstål 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længder af 2 meter</li>
<li>Tykkelse fra 3-5 mm</li>
<li>Bredde/højde fra 20-50 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60393() {
const configurableOptionsComponent = initConfigurableOptions('60393', {
"attributes": {
"144": {
"id": "144",
"code": "height",
"label": "H\u00f8jde",
"options": [{
"id": "2672",
"label": "20 mm",
"products": ["59820"]
}, {
"id": "2713",
"label": "25 mm",
"products": ["59819"]
}, {
"id": "2735",
"label": "30 mm",
"products": ["59818"]
}, {
"id": "2765",
"label": "40 mm",
"products": ["59816", "59814"]
}, {
"id": "2790",
"label": "50 mm",
"products": ["59815"]
}],
"position": "0"
},
"145": {
"id": "145",
"code": "width",
"label": "Bredde",
"options": [{
"id": "2965",
"label": "20 mm",
"products": ["59820", "59814"]
}, {
"id": "2988",
"label": "25 mm",
"products": ["59819"]
}, {
"id": "3005",
"label": "30 mm",
"products": ["59818"]
}, {
"id": "3036",
"label": "40 mm",
"products": ["59816"]
}, {
"id": "3070",
"label": "50 mm",
"products": ["59815"]
}],
"position": "1"
},
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7168",
"label": "3 mm",
"products": ["59820", "59818", "59814"]
}, {
"id": "7170",
"label": "4 mm",
"products": ["59819", "59816"]
}, {
"id": "7173",
"label": "5 mm",
"products": ["59815"]
}],
"position": "2"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59820": {
"baseOldPrice": {
"amount": 60
},
"oldPrice": {
"amount": 75.000001
},
"basePrice": {
"amount": 60
},
"finalPrice": {
"amount": 75.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59819": {
"baseOldPrice": {
"amount": 93.6
},
"oldPrice": {
"amount": 117.000001
},
"basePrice": {
"amount": 93.6
},
"finalPrice": {
"amount": 117.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59818": {
"baseOldPrice": {
"amount": 79.2
},
"oldPrice": {
"amount": 99.000001
},
"basePrice": {
"amount": 79.2
},
"finalPrice": {
"amount": 99.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59816": {
"baseOldPrice": {
"amount": 128
},
"oldPrice": {
"amount": 160.000001
},
"basePrice": {
"amount": 128
},
"finalPrice": {
"amount": 160.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59815": {
"baseOldPrice": {
"amount": 197.6
},
"oldPrice": {
"amount": 247.000001
},
"basePrice": {
"amount": 197.6
},
"finalPrice": {
"amount": 247.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59814": {
"baseOldPrice": {
"amount": 99.2
},
"oldPrice": {
"amount": 124.000001
},
"basePrice": {
"amount": 99.2
},
"finalPrice": {
"amount": 124.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 60
},
"oldPrice": {
"amount": 75.000001
},
"basePrice": {
"amount": 60
},
"finalPrice": {
"amount": 75.000001
}
},
"productId": "60393",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59820": {
"144": "2672",
"145": "2965",
"151": "7168"
},
"59819": {
"144": "2713",
"145": "2988",
"151": "7170"
},
"59818": {
"144": "2735",
"145": "3005",
"151": "7168"
},
"59816": {
"144": "2765",
"145": "3036",
"151": "7170"
},
"59815": {
"144": "2790",
"145": "3070",
"151": "7173"
},
"59814": {
"144": "2765",
"145": "2965",
"151": "7168"
}
},
"salable": {
"144": {
"2672": ["59820"],
"2713": ["59819"],
"2735": ["59818"],
"2765": ["59816", "59814"],
"2790": ["59815"]
},
"145": {
"2965": ["59820", "59814"],
"2988": ["59819"],
"3005": ["59818"],
"3036": ["59816"],
"3070": ["59815"]
},
"151": {
"7168": ["59820", "59818", "59814"],
"7170": ["59819", "59816"],
"7173": ["59815"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59820": "52VIN20203",
"59819": "52VIN25254",
"59818": "52VIN30303",
"59816": "52VIN40404",
"59815": "52VIN50505",
"59814": "52VIN40203"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60393", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60393()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7feaf330() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7feaf330()" @update-prices-60393.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60393" data-price-box="product-id-60393"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60393" data-price-amount="75.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">75,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/vinkelstal-sort-ligesidet-stangstal-2-meter-52vin50505-52vin40404-52vin303" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60393)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59825/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59825/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59825">
<a href="https://www.vvs-eksperten.dk/52t20203" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59825.window="$el.src = $event.detail" alt="T-stål sort 20/20/3mm - 2 meter" title="T-stål sort 20/20/3mm - 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55tst20210_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/52t20203">
T-stål sort 20/20/3mm </a>
<p class="text-xs"> 52T20203 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længde 2 meter</li>
<li>Tykkelse 3 mm</li>
<li>Bredde/højde 20/20 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd3867740() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd3867740()" @update-prices-59825.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59825" data-price-box="product-id-59825"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-59825" data-price-amount="98.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">98,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/52t20203" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59825)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60376/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60376/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60376">
<a href="https://www.vvs-eksperten.dk/nyhed-52runa8" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60376.window="$el.src = $event.detail" alt="Massiv rund Aluminiumsstang 2 meter" title="Massiv rund Aluminiumsstang 2 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/2/52runa12_5.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aluminiumsror-10mm-2-meter-52runa12-52runa10">
Aluminiumsstang </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længde 2 meter</li>
<li>Diameter 8-12 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60376() {
const configurableOptionsComponent = initConfigurableOptions('60376', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1377",
"label": "10 mm",
"products": ["59827"]
}, {
"id": "1450",
"label": "12 mm",
"products": ["59826"]
}, {
"id": "2223",
"label": "8 mm",
"products": ["59865"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59827": {
"baseOldPrice": {
"amount": 68.8
},
"oldPrice": {
"amount": 86.000001
},
"basePrice": {
"amount": 68.8
},
"finalPrice": {
"amount": 86.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59826": {
"baseOldPrice": {
"amount": 98.4
},
"oldPrice": {
"amount": 123.000001
},
"basePrice": {
"amount": 98.4
},
"finalPrice": {
"amount": 123.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59865": {
"baseOldPrice": {
"amount": 68
},
"oldPrice": {
"amount": 85.000001
},
"basePrice": {
"amount": 68
},
"finalPrice": {
"amount": 85.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 68
},
"oldPrice": {
"amount": 85.000001
},
"basePrice": {
"amount": 68
},
"finalPrice": {
"amount": 85.000001
}
},
"productId": "60376",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59827": {
"141": "1377"
},
"59826": {
"141": "1450"
},
"59865": {
"141": "2223"
}
},
"salable": {
"141": {
"1377": ["59827"],
"1450": ["59826"],
"2223": ["59865"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59827": "52RUNA10",
"59826": "52RUNA12",
"59865": "52RUNA8"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60376", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60376()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7febf61f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7febf61f()" @update-prices-60376.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60376" data-price-box="product-id-60376"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60376" data-price-amount="85.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">85,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aluminiumsror-10mm-2-meter-52runa12-52runa10" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60376)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60406/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60406/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60406">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-aluminium-aluplade-1000-1000-0-5mm-52plaa100005" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60406.window="$el.src = $event.detail" alt="Aluminiumsplade 1x1 meter" title="Aluminiumsplade 1x1 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55pla2000100005_1_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aluminiumsplade-1x1-meter-52plaa100020-52plaa100010-52pl">
Aluminiumsplade 1x1 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Tykkelse fra 0,5-2,0 mm</li>
<li>Bredde 1000 mm</li>
<li>Længde 1000 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60406() {
const configurableOptionsComponent = initConfigurableOptions('60406', {
"attributes": {
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7146",
"label": "0,5 mm",
"products": ["59876"]
}, {
"id": "7151",
"label": "1 mm",
"products": ["59875"]
}, {
"id": "7161",
"label": "2 mm",
"products": ["59873"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59876": {
"baseOldPrice": {
"amount": 108
},
"oldPrice": {
"amount": 135.000001
},
"basePrice": {
"amount": 108
},
"finalPrice": {
"amount": 135.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59875": {
"baseOldPrice": {
"amount": 206.4
},
"oldPrice": {
"amount": 258.000001
},
"basePrice": {
"amount": 206.4
},
"finalPrice": {
"amount": 258.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59873": {
"baseOldPrice": {
"amount": 468
},
"oldPrice": {
"amount": 585.000001
},
"basePrice": {
"amount": 468
},
"finalPrice": {
"amount": 585.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 108
},
"oldPrice": {
"amount": 135.000001
},
"basePrice": {
"amount": 108
},
"finalPrice": {
"amount": 135.000001
}
},
"productId": "60406",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59876": {
"151": "7146"
},
"59875": {
"151": "7151"
},
"59873": {
"151": "7161"
}
},
"salable": {
"151": {
"7146": ["59876"],
"7151": ["59875"],
"7161": ["59873"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59876": "52PLAA100005",
"59875": "52PLAA100010",
"59873": "52PLAA100020"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60406", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60406()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fecbe1e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fecbe1e()" @update-prices-60406.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60406" data-price-box="product-id-60406"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60406" data-price-amount="135.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">135,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aluminiumsplade-1x1-meter-52plaa100020-52plaa100010-52pl" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60406)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60405/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60405/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60405">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-galv-plade-1000-1000-0-50-52plag100005" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60405.window="$el.src = $event.detail" alt="Varmtgalvaniseret Finplade - Stålplade 1 x 1 meter" title="Varmtgalvaniseret Finplade - Stålplade 1 x 1 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55plag2000100005_1_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varmtgalvaniseret-finplade-stalplade-1-x-1-meter-52plag100020-52plag100010-52pl">
Varmtgalvaniseret Finplade - Stålplade 1 x 1 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Tykkelse fra 0,5-2,0 mm</li>
<li>Bredde 1000 mm</li>
<li>Længde 000 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60405() {
const configurableOptionsComponent = initConfigurableOptions('60405', {
"attributes": {
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7146",
"label": "0,5 mm",
"products": ["59879"]
}, {
"id": "7151",
"label": "1 mm",
"products": ["59878"]
}, {
"id": "7161",
"label": "2 mm",
"products": ["59877"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59879": {
"baseOldPrice": {
"amount": 128.8
},
"oldPrice": {
"amount": 161.000001
},
"basePrice": {
"amount": 128.8
},
"finalPrice": {
"amount": 161.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59878": {
"baseOldPrice": {
"amount": 225.6
},
"oldPrice": {
"amount": 282.000001
},
"basePrice": {
"amount": 225.6
},
"finalPrice": {
"amount": 282.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59877": {
"baseOldPrice": {
"amount": 378.4
},
"oldPrice": {
"amount": 473.000001
},
"basePrice": {
"amount": 378.4
},
"finalPrice": {
"amount": 473.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 128.8
},
"oldPrice": {
"amount": 161.000001
},
"basePrice": {
"amount": 128.8
},
"finalPrice": {
"amount": 161.000001
}
},
"productId": "60405",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59879": {
"151": "7146"
},
"59878": {
"151": "7151"
},
"59877": {
"151": "7161"
}
},
"salable": {
"151": {
"7146": ["59879"],
"7151": ["59878"],
"7161": ["59877"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59879": "52PLAG100005",
"59878": "52PLAG100010",
"59877": "52PLAG100020"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60405", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60405()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fed6572() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fed6572()" @update-prices-60405.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60405" data-price-box="product-id-60405"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60405" data-price-amount="161.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">161,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varmtgalvaniseret-finplade-stalplade-1-x-1-meter-52plag100020-52plag100010-52pl" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60405)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60404/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60404/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60404">
<a href="https://www.vvs-eksperten.dk/stal-og-metaller-stal-52pla100005" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60404.window="$el.src = $event.detail" alt="Varmtvalsede sort plade - Stålplade 1 x 1 meter" title="Varmtvalsede sort plade - Stålplade 1 x 1 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/5/55pla200010002_1_1_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varmtvalsede-sort-stalplade-1x1-meter-52pla100030-52pla100020-52pla1">
Varmtvalsede sort plade - Stålplade 1 x 1 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Tykkelse fra 0,5 - 3,0 mm</li>
<li>Bredde 1000 mm</li>
<li>Længde 1000 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_60404() {
const configurableOptionsComponent = initConfigurableOptions('60404', {
"attributes": {
"151": {
"id": "151",
"code": "thickness",
"label": "Tykkelse",
"options": [{
"id": "7146",
"label": "0,5 mm",
"products": ["59884"]
}, {
"id": "7151",
"label": "1 mm",
"products": ["59883"]
}, {
"id": "7161",
"label": "2 mm",
"products": ["59882"]
}, {
"id": "7168",
"label": "3 mm",
"products": ["59880"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"59884": {
"baseOldPrice": {
"amount": 112.8
},
"oldPrice": {
"amount": 141.000001
},
"basePrice": {
"amount": 112.8
},
"finalPrice": {
"amount": 141.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59883": {
"baseOldPrice": {
"amount": 170.4
},
"oldPrice": {
"amount": 213.000001
},
"basePrice": {
"amount": 170.4
},
"finalPrice": {
"amount": 213.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59882": {
"baseOldPrice": {
"amount": 348.8
},
"oldPrice": {
"amount": 436.000001
},
"basePrice": {
"amount": 348.8
},
"finalPrice": {
"amount": 436.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59880": {
"baseOldPrice": {
"amount": 513.6
},
"oldPrice": {
"amount": 642.000001
},
"basePrice": {
"amount": 513.6
},
"finalPrice": {
"amount": 642.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 112.8
},
"oldPrice": {
"amount": 141.000001
},
"basePrice": {
"amount": 112.8
},
"finalPrice": {
"amount": 141.000001
}
},
"productId": "60404",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"59884": {
"151": "7146"
},
"59883": {
"151": "7151"
},
"59882": {
"151": "7161"
},
"59880": {
"151": "7168"
}
},
"salable": {
"151": {
"7146": ["59884"],
"7151": ["59883"],
"7161": ["59882"],
"7168": ["59880"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"59884": "52PLA100005",
"59883": "52PLA100010",
"59882": "52PLA100020",
"59880": "52PLA100030"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-60404", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_60404()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec7fedf8c6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fedf8c6()" @update-prices-60404.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60404" data-price-box="product-id-60404"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-60404" data-price-amount="141.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">141,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varmtvalsede-sort-stalplade-1x1-meter-52pla100030-52pla100020-52pla1" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60404)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60011/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60011/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60011">
<a href="https://www.vvs-eksperten.dk/669994660" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60011.window="$el.src = $event.detail" alt="Swim & Fun basic pool fritstående familiepool" title="Swim & Fun basic pool fritstående familiepool" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994660_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/669994660">
Swim & Fun komplet poolpakke </a>
<p class="text-xs"> 669994660 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>17450 Liter</li>
<li>Diameter 4,6 m</li>
<li>Komplet poolpakke</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb7d881() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb7d881()" @update-prices-60011.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60011" data-price-box="product-id-60011"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60011" data-price-amount="3495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60011" data-price-amount="4999.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">4.999,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/669994660" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60011)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60010/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60010/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 36% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60010">
<a href="https://www.vvs-eksperten.dk/669994650" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60010.window="$el.src = $event.detail" alt="Bestway familiepool 450 liter oppustelig" title="Bestway familiepool 450 liter oppustelig" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994650_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/669994650">
Bestway familiepool </a>
<p class="text-xs"> 669994650 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Oppustelig</li>
<li>450 Liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb8509f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb8509f()" @update-prices-60010.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60010" data-price-box="product-id-60010"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60010" data-price-amount="159" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">159,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60010" data-price-amount="249.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">249,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/669994650" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60010)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60168/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60168/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 20% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60168">
<a href="https://www.vvs-eksperten.dk/swim-fun-solvarmer-xp2-669994700" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60168.window="$el.src = $event.detail" alt="Swim & Fun Solar Heater XP2 til Pool" title="Swim & Fun Solar Heater XP2 til Pool" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994700_3.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-solvarmer-xp2-669994700">
Swim & Fun Solvarme XP2 til Pool </a>
<p class="text-xs"> 669994700 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Gratis miljøvenlig varme</li>
<li>Hæver temperaturen 3-5°</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb9bf37() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb9bf37()" @update-prices-60168.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60168" data-price-box="product-id-60168"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60168" data-price-amount="395" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">395,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60168" data-price-amount="499.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">499,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-solvarmer-xp2-669994700" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60168)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6387/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6387/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 24% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6387">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6387.window="$el.src = $event.detail" alt="Garden Solbruser m/20 liter beholder ude bruser" title="Garden Solbruser m/20 liter beholder ude bruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/4/d4d5615c6e41cf2df1f94b3de249f9d2b2c1c73c581355006af0307a542f23b4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189">
Garden Solbruser </a>
<p class="text-xs"> 273042189 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vandbeholder 20 liter</li>
<li>Med blandingsbatteri</li>
<li>Højde 227 cm</li>
<li>Udendørsbruser</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd374afb7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd374afb7()" @update-prices-6387.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6387" data-price-box="product-id-6387"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6387" data-price-amount="995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-6387" data-price-amount="1315.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.315,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6387)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60164/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60164/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60164">
<a href="https://www.vvs-eksperten.dk/swim-fun-termometer-pool-og-spa-669994680" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60164.window="$el.src = $event.detail" alt="Swim & Fun Termometer til pool og spa" title="Swim & Fun Termometer til pool og spa" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994680_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-termometer-pool-og-spa-669994680">
Swim & Fun Termometer </a>
<p class="text-xs"> 669994680 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Flyder i poolen</li>
<li>Påhæftet snor</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fef18d1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fef18d1()" @update-prices-60164.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60164" data-price-box="product-id-60164"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60164" data-price-amount="34.950001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">34,95</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-termometer-pool-og-spa-669994680" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60164)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60165/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60165/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60165">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994685" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60165.window="$el.src = $event.detail" alt="Swim & Fun Basic Care sæt til pool" title="Swim & Fun Basic Care sæt til pool" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994685_1.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994685">
Swim & Fun Basic Care poolpakke </a>
<p class="text-xs"> 669994685 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Basis sæt pooltilbehør</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff02d2b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff02d2b()" @update-prices-60165.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60165" data-price-box="product-id-60165"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60165" data-price-amount="249.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">249,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994685" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60165)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60178/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60178/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60178">
<a href="https://www.vvs-eksperten.dk/swim-fun-pool-cover-sommer-669994710" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60178.window="$el.src = $event.detail" alt="Swim & Fun Pool Cover Sommer, termodækken til pool ø460 cm" title="Swim & Fun Pool Cover Sommer, termodækken til pool ø460 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994710_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-pool-cover-sommer-669994710">
Swim & Fun Pool cover Termodækken til pool </a>
<p class="text-xs"> 669994710 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Flyder på vandet</li>
<li>Holder på varmen</li>
<li>Diameter 4,6 meter</li>
<li>Tykkelse 200 μm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff08c41() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff08c41()" @update-prices-60178.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60178" data-price-box="product-id-60178"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60178" data-price-amount="499.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">499,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-pool-cover-sommer-669994710" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60178)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60143/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60143/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60143">
<a href="https://www.vvs-eksperten.dk/swim-fun-kemikaliedispenser-til-tabletter-669994555" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60143.window="$el.src = $event.detail" alt="Swim & Fun Kemikalie dispenser til tabletter" title="Swim & Fun Kemikalie dispenser til tabletter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994555_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-kemikaliedispenser-til-tabletter-669994555">
Swim & Fun dispenser til klortabletter </a>
<p class="text-xs"> 669994555 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Til langsomtopløselige klortabletter</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff0ee6d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff0ee6d()" @update-prices-60143.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60143" data-price-box="product-id-60143"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60143" data-price-amount="129.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">129,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-kemikaliedispenser-til-tabletter-669994555" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60143)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60142/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60142/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60142">
<a href="https://www.vvs-eksperten.dk/test-klorvaerdi-pool-test-669994565" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60142.window="$el.src = $event.detail" alt="Swim & Fun Pool Test klorværdi/pH-balance " title="Swim & Fun Pool Test klorværdi/pH-balance " src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994565.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/test-klorvaerdi-pool-test-669994565">
Swim & Fun Pool Test Strips klorværdi/pH-balance </a>
<p class="text-xs"> 669994565 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Måler pH-balance og klor</li>
<li>Indeholder 50 stk. test strips</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff14e22() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff14e22()" @update-prices-60142.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60142" data-price-box="product-id-60142"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60142" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/test-klorvaerdi-pool-test-669994565" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60142)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60170/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60170/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60170">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994625" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60170.window="$el.src = $event.detail" alt="Swim & Fun Pool pH Up pH-regulerende middel" title="Swim & Fun Pool pH Up pH-regulerende middel" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994625_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994625">
Swim & Fun Pool pH Up </a>
<p class="text-xs"> 669994625 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>pH-regulerende middel</li>
<li>1 kg</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff1a572() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff1a572()" @update-prices-60170.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60170" data-price-box="product-id-60170"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60170" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994625" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60170)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60171/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60171/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60171">
<a href="https://www.vvs-eksperten.dk/swim-fun-ph-down-1-5-kg-669994630" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60171.window="$el.src = $event.detail" alt="Swim & Fun Pool pH Down pH-regulerende middel" title="Swim & Fun Pool pH Down pH-regulerende middel" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994630_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-ph-down-1-5-kg-669994630">
Swim & Fun Pool pH Down </a>
<p class="text-xs"> 669994630 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>pH-regulerende middel</li>
<li>1,5 kg</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff1f62d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff1f62d()" @update-prices-60171.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60171" data-price-box="product-id-60171"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60171" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-ph-down-1-5-kg-669994630" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60171)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59397/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59397/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 21% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59397">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722255a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59397.window="$el.src = $event.detail" alt="Atlanta udendørsbruser med kartud rustfrit stål" title="Atlanta udendørsbruser med kartud rustfrit stål" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722255a10_2.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722255a10">
Atlanta udendørsbruser med hovedbruser & kartud </a>
<p class="text-xs"> 722255A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø200mm Hovedbruser</li>
<li>ø100mm Håndbruser</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb94788() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb94788()" @update-prices-59397.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59397" data-price-box="product-id-59397"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59397" data-price-amount="695" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">695,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-59397" data-price-amount="888.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">888,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722255a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59397)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60173/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60173/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60173">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994640" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60173.window="$el.src = $event.detail" alt="Swim & Fun pool Klor LongTabs Desinfektionsmiddel til pool" title="Swim & Fun pool Klor LongTabs Desinfektionsmiddel til pool" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994640_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994640">
Swim & Fun Pool Klor LongTabs </a>
<p class="text-xs"> 669994640 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Desinfektionsmiddel til vand</li>
<li>Løbende klor vedligeholdelse</li>
<li>1 kg (Tabs 20 gram)</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff25017() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff25017()" @update-prices-60173.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60173" data-price-box="product-id-60173"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60173" data-price-amount="199.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">199,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tilbehor-til-udendors-spa-669994640" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60173)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60169/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60169/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60169">
<a href="https://www.vvs-eksperten.dk/swim-fun-kiddypool-5-x-25-ml-til-soppebassin-669994620" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60169.window="$el.src = $event.detail" alt="Swim & Fun KiddyPool 5 x 25 ml til soppebassin" title="Swim & Fun KiddyPool 5 x 25 ml til soppebassin" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994620.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-kiddypool-5-x-25-ml-til-soppebassin-669994620">
Swim & Fun KiddyPool </a>
<p class="text-xs"> 669994620 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til ca. 400-600 L vand pr. pose</li>
<li>5 poser med 25 ml</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff2a88b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff2a88b()" @update-prices-60169.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60169" data-price-box="product-id-60169"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60169" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-kiddypool-5-x-25-ml-til-soppebassin-669994620" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60169)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60146/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60146/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60146">
<a href="https://www.vvs-eksperten.dk/store-klor-tabs-tilbehor-til-udespa-669994585" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60146.window="$el.src = $event.detail" alt="Swim & Fun Activ Spa LongTab 20" title="Swim & Fun Activ Spa LongTab 20" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994585_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/store-klor-tabs-tilbehor-til-udespa-669994585">
Swim & Fun Spa LongTab 20 </a>
<p class="text-xs"> 669994585 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Desinfektionsmiddel til vand</li>
<li>Løbende klor vedligeholdelse</li>
<li>1 kg (Tabs 20 gram)</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff30d45() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff30d45()" @update-prices-60146.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60146" data-price-box="product-id-60146"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60146" data-price-amount="199.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">199,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/store-klor-tabs-tilbehor-til-udespa-669994585" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60146)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60181/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60181/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60181">
<a href="https://www.vvs-eksperten.dk/swim-fun-pipe-cleaner-1l-669994675" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60181.window="$el.src = $event.detail" alt="Swim & Fun Spa Pipe Cleaner" title="Swim & Fun Spa Pipe Cleaner" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994675_sikkerhedsdatablad.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-pipe-cleaner-1l-669994675">
Swim & Fun Spa Pipe Cleaner </a>
<p class="text-xs"> 669994675 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Rengøring af rørsystem</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff365a9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff365a9()" @update-prices-60181.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60181" data-price-box="product-id-60181"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60181" data-price-amount="129.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">129,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-pipe-cleaner-1l-669994675" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60181)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60144/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60144/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60144">
<a href="https://www.vvs-eksperten.dk/teststrips-klorfri-669994575" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60144.window="$el.src = $event.detail" alt="Swim & Fun Spa Teststrimler pH/Klorid/Brom/Alkalitet, 50 stk" title="Swim & Fun Spa Teststrimler pH/Klorid/Brom/Alkalitet, 50 stk" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994575_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/teststrips-klorfri-669994575">
Swim & Fun Spa Teststrips - Klorfri </a>
<p class="text-xs"> 669994575 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Måler pH-balancen, alkaliteten, <br>bromin og klorindholdet</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff3b6ea() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff3b6ea()" @update-prices-60144.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60144" data-price-box="product-id-60144"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60144" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/teststrips-klorfri-669994575" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60144)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5875/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5875/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5875">
<a href="https://www.vvs-eksperten.dk/badevaerelse-badekar-tilbehor-til-udendors-spa-udespa-opstartsaet-klorfri-669994550" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5875.window="$el.src = $event.detail" alt="Udespa opstartsæt - Klorfri" title="Udespa opstartsæt - Klorfri" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/f/af501a1bc4a9d3043efe7558d8598aceee8c25bbabce3c2e7857bcb91877e4c3.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-badekar-tilbehor-til-udendors-spa-udespa-opstartsaet-klorfri-669994550">
Udespa opstartsæt - Klorfri </a>
<p class="text-xs"> 669994550 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Klorfri Oxy Aktiv</li>
<li>Dispenser</li>
<li>PH-minus</li>
<li>Teststrips klorfri </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff41432() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff41432()" @update-prices-5875.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5875" data-price-box="product-id-5875"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5875" data-price-amount="689.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">689,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5875" data-price-amount="719.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">719,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-badekar-tilbehor-til-udendors-spa-udespa-opstartsaet-klorfri-669994550" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5875)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59317/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59317/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59317">
<a href="https://www.vvs-eksperten.dk/badevaerelse-badekar-fritstaende-badekar-666200a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59317.window="$el.src = $event.detail" alt="Badekar fritstående i plast " title="Badekar fritstående i plast " src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/666200a10_4.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-badekar-fritstaende-badekar-666200a10">
Badekar fritstående </a>
<p class="text-xs"> 666200A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Plast badekar</li>
<li>Afløbsstuds i siden</li>
<li>Længde 1200 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff49275() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff49275()" @update-prices-59317.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59317" data-price-box="product-id-59317"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59317" data-price-amount="496.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">496,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-59317" data-price-amount="517.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">517,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-badekar-fritstaende-badekar-666200a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59317)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12828/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12828/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12828">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-varmevekslere-varme-veksler-varmeveksler-40-kw-til-swimmingpool-375941140" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12828.window="$el.src = $event.detail" alt="Varmeveksler 40 kW til swimmingpool S4A-IT" title="Varmeveksler 40 kW til swimmingpool S4A-IT" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/e/0e4902201aca1996bf82c3b67aa2de3379d2667c0cdccca04d8f0d05dabc6f8c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-varmevekslere-varme-veksler-varmeveksler-40-kw-til-swimmingpool-375941140">
Varmeveksler 40 kW til swimmingpool </a>
<p class="text-xs"> 375941140 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Effektiv hede flade 0,34 m²</li>
<li>Nominel effekt 30 kW</li>
<li>S4A-IT</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff4f03f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff4f03f()" @update-prices-12828.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12828" data-price-box="product-id-12828"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-12828" data-price-amount="6141.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">6.141,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-12828" data-price-amount="6331.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">6.331,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-varmevekslere-varme-veksler-varmeveksler-40-kw-til-swimmingpool-375941140" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12828)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12305/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12305/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12305">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangere-calderas-panel-solfanger-hojeffektiv-solfangerpanel-379997000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12305.window="$el.src = $event.detail" alt="Calderas Solfanger 1940x1200mm" title="Calderas Solfanger 1940x1200mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/b/0b631e04b923be335e4c5b151b5e8d32ebbf6e994225172cd5755a6b48a19937.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangere-calderas-panel-solfanger-hojeffektiv-solfangerpanel-379997000">
Calderas Solfanger </a>
<p class="text-xs"> 379997000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Varmt vand direkte fra solen</li>
<li>Højeffektiv solfangerpanel</li>
<li>1 stk.</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff554df() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff554df()" @update-prices-12305.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12305" data-price-box="product-id-12305"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-12305" data-price-amount="3245.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.245,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-12305" data-price-amount="3295.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">3.295,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangere-calderas-panel-solfanger-hojeffektiv-solfangerpanel-379997000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12305)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60177/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60177/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60177">
<a href="https://www.vvs-eksperten.dk/swim-fun-bunddaekken-til-rund-til-pool-o460-669994705" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60177.window="$el.src = $event.detail" alt="Swim & Fun bunddækken til rund pool 460 cm" title="Swim & Fun bunddækken til rund pool 460 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994705_3.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-bunddaekken-til-rund-til-pool-o460-669994705">
Swim & Fun bunddækken </a>
<p class="text-xs"> 669994705 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Diameter 4,6 meter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff5b879() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff5b879()" @update-prices-60177.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60177" data-price-box="product-id-60177"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60177" data-price-amount="549.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">549,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-bunddaekken-til-rund-til-pool-o460-669994705" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60177)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60179/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60179/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60179">
<a href="https://www.vvs-eksperten.dk/swim-fun-pool-cover-vinter-669994715" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60179.window="$el.src = $event.detail" alt="Swim & Fun Pool Cover Vinter" title="Swim & Fun Pool Cover Vinter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994715_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/swim-fun-pool-cover-vinter-669994715">
Swim & Fun Pool Vinter cover </a>
<p class="text-xs"> 669994715 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Diameter 4,6 meter</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff61d48() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff61d48()" @update-prices-60179.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60179" data-price-box="product-id-60179"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60179" data-price-amount="549.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">549,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/swim-fun-pool-cover-vinter-669994715" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60179)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="74">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-74.window="$el.src = $event.detail" alt="Cool Well Øl køler" title="Cool Well Øl køler" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/0/1031ab5dbb5f41431488c5e55af493c1ded6d8e3483ff11dfe8148eb3b47c04a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000">
Cool Well Øl køler </a>
<p class="text-xs"> 273046000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til 24 dåser og 1 flaske vin</li>
<li>Hurtig vej til kolde drikke </li>
<li>Udnytte jordens køling</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb75210() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb75210()" @update-prices-74.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="74" data-price-box="product-id-74"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-74" data-price-amount="389" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">389,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-74" data-price-amount="459.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">459,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(74)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60115/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60115/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60115">
<a href="https://www.vvs-eksperten.dk/norh-helga-bruseslange-1-5m-stal-krom-738384a02" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60115.window="$el.src = $event.detail" alt="NORH Helga Bruseslange 1,5m Stål Krom" title="NORH Helga Bruseslange 1,5m Stål Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738384a02_1.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-helga-bruseslange-1-5m-stal-krom-738384a02">
NORH Helga Bruseslange </a>
<p class="text-xs"> 738384A02 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længde 1500 mm</li>
<li>Anti-twist teknologi </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff719d7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff719d7()" @update-prices-60115.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60115" data-price-box="product-id-60115"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60115" data-price-amount="89.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">89,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-helga-bruseslange-1-5m-stal-krom-738384a02" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60115)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60110/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60110/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60110">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-bidet-bruser-722251a06" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60110.window="$el.src = $event.detail" alt="NORH Vigdis All-round Brusesæt Krom" title="NORH Vigdis All-round Brusesæt Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a06_3.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-bidet-bruser-722251a06">
NORH Vigdis All-round Brusesæt Krom </a>
<p class="text-xs"> 722251A06 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Bruseadapter</li>
<li>Håndbruser</li>
<li>Slange</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff7735c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff7735c()" @update-prices-60110.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60110" data-price-box="product-id-60110"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60110" data-price-amount="169.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">169,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-bidet-bruser-722251a06" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60110)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60130/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60130/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60130">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722251a26" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60130.window="$el.src = $event.detail" alt="NORH Erika Topbrusesæt 1&3 Spray med termostat Sort" title="NORH Erika Topbrusesæt 1&3 Spray med termostat Sort" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a26_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722251a26">
NORH Erika Topbrusesæt 1&3 Spray med termostat </a>
<p class="text-xs"> 722251A26 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø260mm hovedbruser</li>
<li>ø120mm håndbruser</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff7c52b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff7c52b()" @update-prices-60130.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60130" data-price-box="product-id-60130"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60130" data-price-amount="1525.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.525,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-722251a26" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60130)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60105/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60105/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60105">
<a href="https://www.vvs-eksperten.dk/norh-liv-brusesaet-1-spray-krom-722251a01" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60105.window="$el.src = $event.detail" alt="NORH Liv Håndbrusersæt med 1-stråle og easy clean" title="NORH Liv Håndbrusersæt med 1-stråle og easy clean" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/n/o/norh_980419742.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-liv-brusesaet-1-spray-krom-722251a01">
NORH Liv Håndbrusersæt m/easy clean </a>
<p class="text-xs"> 722251A01 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø95mm brusehoved</li>
<li>1 indstillinger</li>
<li>Bruseslange</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff8279d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff8279d()" @update-prices-60105.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60105" data-price-box="product-id-60105"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60105" data-price-amount="119.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">119,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-liv-brusesaet-1-spray-krom-722251a01" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60105)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60127/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60127/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60127">
<a href="https://www.vvs-eksperten.dk/nyhed-722251a23" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60127.window="$el.src = $event.detail" alt="NORH Gro Topbruser 1 Spray ø260mm Krom" title="NORH Gro Topbruser 1 Spray ø260mm Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a23_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/nyhed-722251a23">
NORH Gro brusehoved </a>
<p class="text-xs"> 722251A23 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø 260mm</li>
<li>1/2" kugleled</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff883c5() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff883c5()" @update-prices-60127.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60127" data-price-box="product-id-60127"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60127" data-price-amount="299.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">299,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/nyhed-722251a23" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60127)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60128/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60128/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60128">
<a href="https://www.vvs-eksperten.dk/norh-torun-topbrusesaet-1-3-spray-krom-722251a24" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60128.window="$el.src = $event.detail" alt="NORH Torun Topbrusesæt 1 & 3 Spray Krom" title="NORH Torun Topbrusesæt 1 & 3 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a24_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-torun-topbrusesaet-1-3-spray-krom-722251a24">
NORH Torun Topbrusesæt </a>
<p class="text-xs"> 722251A24 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø200mm hovedbruser</li>
<li>ø110mm håndbruser</li>
<li>Excl. termostat</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff8e6fe() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff8e6fe()" @update-prices-60128.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60128" data-price-box="product-id-60128"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60128" data-price-amount="699.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">699,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-torun-topbrusesaet-1-3-spray-krom-722251a24" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60128)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60109/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60109/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60109">
<a href="https://www.vvs-eksperten.dk/norh-sif-glider-o25mm-krom-737809a25" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60109.window="$el.src = $event.detail" alt="NORH Sif glider til brusestang/håndbruser ø25 mm" title="NORH Sif glider til brusestang/håndbruser ø25 mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/737809a25_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-sif-glider-o25mm-krom-737809a25">
NORH Sif glider ø25mm </a>
<p class="text-xs"> 737809A25 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Universal </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff9391b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff9391b()" @update-prices-60109.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60109" data-price-box="product-id-60109"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60109" data-price-amount="69.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">69,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-sif-glider-o25mm-krom-737809a25" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60109)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60112/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60112/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60112">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-738408a05" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60112.window="$el.src = $event.detail" alt="NORH Sigrid Håndbruser 5 Spray Krom" title="NORH Sigrid Håndbruser 5 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738408a05_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-738408a05">
NORH Sigrid Håndbruser </a>
<p class="text-xs"> 738408A05 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø105mm brusehoved</li>
<li>5 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff989b4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff989b4()" @update-prices-60112.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60112" data-price-box="product-id-60112"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60112" data-price-amount="109.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">109,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-738408a05" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60112)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60113/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60113/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60113">
<a href="https://www.vvs-eksperten.dk/norh-solveig-handbruser-5-spray-krom-738408a06" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60113.window="$el.src = $event.detail" alt="NORH Solveig Håndbruser 5 Spray Krom" title="NORH Solveig Håndbruser 5 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738408a06_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-solveig-handbruser-5-spray-krom-738408a06">
NORH Solveig Håndbruser </a>
<p class="text-xs"> 738408A06 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø115mm brusehoved</li>
<li>5 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ff9dcce() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ff9dcce()" @update-prices-60113.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60113" data-price-box="product-id-60113"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60113" data-price-amount="119.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">119,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-solveig-handbruser-5-spray-krom-738408a06" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60113)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60116/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60116/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60116">
<a href="https://www.vvs-eksperten.dk/norh-hildur-bruseslange-2m-stal-krom-738384a03" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60116.window="$el.src = $event.detail" alt="NORH Hildur Bruseslange 2m Stål Krom" title="NORH Hildur Bruseslange 2m Stål Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738384a03_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-hildur-bruseslange-2m-stal-krom-738384a03">
NORH Hildur Bruseslange </a>
<p class="text-xs"> 738384A03 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længde 2000 mm</li>
<li>Anti-twist teknologi </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffa2dea() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffa2dea()" @update-prices-60116.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60116" data-price-box="product-id-60116"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60116" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-hildur-bruseslange-2m-stal-krom-738384a03" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60116)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60123/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60123/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60123">
<a href="https://www.vvs-eksperten.dk/norh-birla-handbruser-3-spray-krom-738408a03" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60123.window="$el.src = $event.detail" alt="NORH Birla Håndbruser 3 Spray Krom" title="NORH Birla Håndbruser 3 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738408a03_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-birla-handbruser-3-spray-krom-738408a03">
NORH Birla Håndbruser </a>
<p class="text-xs"> 738408A03 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø110mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffa8162() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffa8162()" @update-prices-60123.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60123" data-price-box="product-id-60123"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60123" data-price-amount="129.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">129,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-birla-handbruser-3-spray-krom-738408a03" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60123)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60122/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60122/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60122">
<a href="https://www.vvs-eksperten.dk/norh-herdis-bruseslange-1-5m-pvc-solv-722251a18" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60122.window="$el.src = $event.detail" alt="NORH Herdis Bruseslange 1,5m Pvc Sølv" title="NORH Herdis Bruseslange 1,5m Pvc Sølv" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a18_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-herdis-bruseslange-1-5m-pvc-solv-722251a18">
NORH Herdis Bruseslange </a>
<p class="text-xs"> 722251A18 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Længde 1500 mm</li>
<li>Anti-twist teknologi</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffad115() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffad115()" @update-prices-60122.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60122" data-price-box="product-id-60122"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60122" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-herdis-bruseslange-1-5m-pvc-solv-722251a18" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60122)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60121/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60121/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60121">
<a href="https://www.vvs-eksperten.dk/norh-runa-brusestangssaet-3-spray-sort-722251a17" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60121.window="$el.src = $event.detail" alt="NORH Runa Brusestangssæt 3 Spray Sort" title="NORH Runa Brusestangssæt 3 Spray Sort" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/8/980419760_.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-runa-brusestangssaet-3-spray-sort-722251a17">
NORH Runa sort brusestangssæt </a>
<p class="text-xs"> 722251A17 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø120mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffb2283() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffb2283()" @update-prices-60121.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60121" data-price-box="product-id-60121"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60121" data-price-amount="449.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">449,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-runa-brusestangssaet-3-spray-sort-722251a17" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60121)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60117/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60117/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60117">
<a href="https://www.vvs-eksperten.dk/norh-aud-brusesaet-5-spray-krom-722251a13" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60117.window="$el.src = $event.detail" alt="NORH Aud Brusesæt 5 Spray Krom" title="NORH Aud Brusesæt 5 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a13_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-aud-brusesaet-5-spray-krom-722251a13">
NORH Aud Brusesæt m/easy clean </a>
<p class="text-xs"> 722251A13 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>5 indstillinger</li>
<li>Bruseslange</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffb74a4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffb74a4()" @update-prices-60117.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60117" data-price-box="product-id-60117"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60117" data-price-amount="149.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">149,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-aud-brusesaet-5-spray-krom-722251a13" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60117)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60125/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60125/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60125">
<a href="https://www.vvs-eksperten.dk/norh-frida-handbruser-3-spray-krom-738408a07" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60125.window="$el.src = $event.detail" alt="NORH Frida Håndbruser 3 Spray Krom" title="NORH Frida Håndbruser 3 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738408a07_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-frida-handbruser-3-spray-krom-738408a07">
NORH Frida Håndbruser </a>
<p class="text-xs"> 738408A07 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø120mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffbc4cf() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffbc4cf()" @update-prices-60125.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60125" data-price-box="product-id-60125"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60125" data-price-amount="179.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">179,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-frida-handbruser-3-spray-krom-738408a07" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60125)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60124/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60124/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60124">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-738408a04" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60124.window="$el.src = $event.detail" alt="NORH Edda Håndbruser 4 Spray Krom" title="NORH Edda Håndbruser 4 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738408a04_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-738408a04">
NORH Edda Håndbruser </a>
<p class="text-xs"> 738408A04 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø115mm brusehoved</li>
<li>4 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffc1465() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffc1465()" @update-prices-60124.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60124" data-price-box="product-id-60124"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60124" data-price-amount="149.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">149,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-738408a04" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60124)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60120/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60120/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60120">
<a href="https://www.vvs-eksperten.dk/norh-asfrid-brusestangssaet-3-spray-krom-722251a16" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60120.window="$el.src = $event.detail" alt="Norh Asfrid Brusestangssæt 3 Spray Krom" title="Norh Asfrid Brusestangssæt 3 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a16_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-asfrid-brusestangssaet-3-spray-krom-722251a16">
Norh Asfrid Brusestangssæt </a>
<p class="text-xs"> 722251A16 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø120mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffc69af() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffc69af()" @update-prices-60120.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60120" data-price-box="product-id-60120"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60120" data-price-amount="399.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">399,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-asfrid-brusestangssaet-3-spray-krom-722251a16" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60120)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60119/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60119/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60119">
<a href="https://www.vvs-eksperten.dk/norh-alva-brusestangssaet-4-spray-krom-722251a15" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60119.window="$el.src = $event.detail" alt="Norh Alva Brusestangssæt 4 Spray Krom" title="Norh Alva Brusestangssæt 4 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a15_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-alva-brusestangssaet-4-spray-krom-722251a15">
Norh Alva Brusestangssæt </a>
<p class="text-xs"> 722251A15 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø115mm brusehoved</li>
<li>4 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffcbb38() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffcbb38()" @update-prices-60119.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60119" data-price-box="product-id-60119"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60119" data-price-amount="349.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">349,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-alva-brusestangssaet-4-spray-krom-722251a15" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60119)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60118/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60118/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60118">
<a href="https://www.vvs-eksperten.dk/norh-aldis-brusestangssaet-3-spray-krom-722251a14" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60118.window="$el.src = $event.detail" alt="NORH Aldis Brusestangssæt 3 Spray Krom" title="NORH Aldis Brusestangssæt 3 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a14_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-aldis-brusestangssaet-3-spray-krom-722251a14">
NORH Aldis Brusestangssæt </a>
<p class="text-xs"> 722251A14 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø110mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffd182e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffd182e()" @update-prices-60118.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60118" data-price-box="product-id-60118"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60118" data-price-amount="299.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">299,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-aldis-brusestangssaet-3-spray-krom-722251a14" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60118)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60114/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60114/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60114">
<a href="https://www.vvs-eksperten.dk/norh-haldis-bruseslange-1-5m-pvc-krom-738384a01" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60114.window="$el.src = $event.detail" alt="NORH Haldis Bruseslange 1,5m Pvc Krom" title="NORH Haldis Bruseslange 1,5m Pvc Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738384a01_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-haldis-bruseslange-1-5m-pvc-krom-738384a01">
NORH Haldis Bruseslange </a>
<p class="text-xs"> 738384A01 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Længde 1500 mm</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffd722d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffd722d()" @update-prices-60114.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60114" data-price-box="product-id-60114"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60114" data-price-amount="79.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">79,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-haldis-bruseslange-1-5m-pvc-krom-738384a01" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60114)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60111/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60111/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60111">
<a href="https://www.vvs-eksperten.dk/norh-signe-handbruser-1-spray-krom-738408a01" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60111.window="$el.src = $event.detail" alt="NORH Signe Håndbruser 1 Spray Krom" title="NORH Signe Håndbruser 1 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/738408a01_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-signe-handbruser-1-spray-krom-738408a01">
NORH Signe Håndbruser </a>
<p class="text-xs"> 738408A01 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø95mm brusehoved</li>
<li>1 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffdd2c9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffdd2c9()" @update-prices-60111.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60111" data-price-box="product-id-60111"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60111" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-signe-handbruser-1-spray-krom-738408a01" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60111)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60108/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60108/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60108">
<a href="https://www.vvs-eksperten.dk/nyhed-737809a18" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60108.window="$el.src = $event.detail" alt="NORH Siv glider til brusestang/håndbruser ø18 mm" title="NORH Siv glider til brusestang/håndbruser ø18 mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/3/737809a18_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/nyhed-737809a18">
NORH Siv glider ø18mm </a>
<p class="text-xs"> 737809A18 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Universal </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffe2bb8() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffe2bb8()" @update-prices-60108.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60108" data-price-box="product-id-60108"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60108" data-price-amount="69.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">69,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/nyhed-737809a18" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60108)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60107/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60107/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60107">
<a href="https://www.vvs-eksperten.dk/norh-ingun-brusestangssaet-5-spray-krom-722251a03" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60107.window="$el.src = $event.detail" alt="NORH Ingun Brusestangssæt 5 Spray Krom" title="NORH Ingun Brusestangssæt 5 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a03_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-ingun-brusestangssaet-5-spray-krom-722251a03">
NORH Ingun Brusestangssæt </a>
<p class="text-xs"> 722251A03 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø110mm brusehoved</li>
<li>5 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffe7fe1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffe7fe1()" @update-prices-60107.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60107" data-price-box="product-id-60107"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60107" data-price-amount="199.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">199,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-ingun-brusestangssaet-5-spray-krom-722251a03" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60107)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60106/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60106/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60106">
<a href="https://www.vvs-eksperten.dk/norh-ingrid-brusestangssaet-1-spray-krom-722251a02" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60106.window="$el.src = $event.detail" alt="NORH Ingrid Brusestangssæt 1 Spray Krom" title="NORH Ingrid Brusestangssæt 1 Spray Krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/2/722251a02_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/norh-ingrid-brusestangssaet-1-spray-krom-722251a02">
NORH Ingrid Brusestangssæt </a>
<p class="text-xs"> 722251A02 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø95mm brusehoved</li>
<li>1 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7ffed3a8() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7ffed3a8()" @update-prices-60106.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60106" data-price-box="product-id-60106"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-60106" data-price-amount="169.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">169,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/norh-ingrid-brusestangssaet-1-spray-krom-722251a02" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60106)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5404/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5404/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5404">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-aflobsrende-diy-aflobsrende-med-galvaniseret-rist-1-meter-221512a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5404.window="$el.src = $event.detail" alt="DIY Linjedræn i komposit med galvaniseret rist 1 meter afløbsrende" title="DIY Linjedræn i komposit med galvaniseret rist 1 meter afløbsrende" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/a/3a2e6fa35b9caeb752e4f5a5db442a0d1227e8bb7b8ab7393189befd79fe9224.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-aflobsrende-diy-aflobsrende-med-galvaniseret-rist-1-meter-221512a10">
DIY Linjedræn m/galv. rist </a>
<p class="text-xs"> 221512A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Med galvaniseret rist</li>
<li>1 meter</li>
<li>1,5 ton belastning - klasse A</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8000d991() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8000d991()" @update-prices-5404.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5404" data-price-box="product-id-5404"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5404" data-price-amount="170.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">170,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5404" data-price-amount="179.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">179,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-aflobsrende-diy-aflobsrende-med-galvaniseret-rist-1-meter-221512a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5404)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17788/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17788/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="17788">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-draen-draen-ror-draenror-uden-filt-o50mm-50-meter-197001005" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-17788.window="$el.src = $event.detail" alt="Drænrør 50 meter" title="Drænrør 50 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/e/fe2dc563259446f1d9fe19361f5d3636b827d127402021175476b9c99dc7cfd6.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-draen-draen-ror-9d1c1e8d-b262-48df-9a1e-2667bfc65cbf">
Drænrør 50 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Størrelse fra ø50-ø160 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_17788() {
const configurableOptionsComponent = initConfigurableOptions('17788', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1391",
"label": "100 mm",
"products": ["17784"]
}, {
"id": "1466",
"label": "125 mm",
"products": ["17785"]
}, {
"id": "1570",
"label": "160 mm",
"products": ["17786"]
}, {
"id": "2085",
"label": "50 mm",
"products": ["17787"]
}, {
"id": "2228",
"label": "80 mm",
"products": ["17783"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"17783": {
"baseOldPrice": {
"amount": 468
},
"oldPrice": {
"amount": 585.000001
},
"basePrice": {
"amount": 448.8
},
"finalPrice": {
"amount": 561.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17784": {
"baseOldPrice": {
"amount": 639.2
},
"oldPrice": {
"amount": 799.000001
},
"basePrice": {
"amount": 613.6
},
"finalPrice": {
"amount": 767.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17785": {
"baseOldPrice": {
"amount": 1432
},
"oldPrice": {
"amount": 1790.000001
},
"basePrice": {
"amount": 1375.2
},
"finalPrice": {
"amount": 1719.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17786": {
"baseOldPrice": {
"amount": 2532.8
},
"oldPrice": {
"amount": 3166.000001
},
"basePrice": {
"amount": 2456.8
},
"finalPrice": {
"amount": 3071.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17787": {
"baseOldPrice": {
"amount": 344
},
"oldPrice": {
"amount": 430.000001
},
"basePrice": {
"amount": 329.6
},
"finalPrice": {
"amount": 412.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 344
},
"oldPrice": {
"amount": 430.000001
},
"basePrice": {
"amount": 329.6
},
"finalPrice": {
"amount": 412.000001
}
},
"productId": "17788",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"17783": {
"141": "2228"
},
"17784": {
"141": "1391"
},
"17785": {
"141": "1466"
},
"17786": {
"141": "1570"
},
"17787": {
"141": "2085"
}
},
"salable": {
"141": {
"2228": ["17783"],
"1391": ["17784"],
"1466": ["17785"],
"1570": ["17786"],
"2085": ["17787"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"17783": "197007005",
"17784": "197011005",
"17785": "197011125",
"17786": "197011150",
"17787": "197001005"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-17788", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_17788()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec80010d3d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80010d3d()" @update-prices-17788.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="17788" data-price-box="product-id-17788"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-17788" data-price-amount="412.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">412,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-draen-draen-ror-9d1c1e8d-b262-48df-9a1e-2667bfc65cbf" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(17788)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13059/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13059/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13059">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-spw400-391210040" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13059.window="$el.src = $event.detail" alt="Pumpmax Dykpumpe Spw400" title="Pumpmax Dykpumpe Spw400" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/e/6ee776166c86647cbf2e39ce919fcbff208a261b649b5130a88b4a9bb76fdc2a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-spw400-391210040">
Pumpmax Dykpumpe Spw400 </a>
<p class="text-xs"> 391210040 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Niveauvippe</li>
<li>Partikler op til 30 mm</li>
<li>10 meter kabel</li>
<li>Løftehøjde 5 meter</li>
<li>125 L/min</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8001df7d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8001df7d()" @update-prices-13059.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13059" data-price-box="product-id-13059"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-13059" data-price-amount="254" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">254,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-13059" data-price-amount="299.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">299,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-spw400-391210040" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13059)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3547/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3547/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="3547">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-faskine-aquablok-256-liter-t36-m2-tagflade-190196400" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-3547.window="$el.src = $event.detail" alt="Aquablok 256 liter til 36 m² tagflade" title="Aquablok 256 liter til 36 m² tagflade" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/7/77ab61df1b47fd66ad6302b50da9634be15747f7706d1c6f1b6b4f24b14289e1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-faskine-aquablok-256-liter-t36-m2-tagflade-190196400">
Aquablok </a>
<p class="text-xs"> 190196400 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Kan tilsluttes fra alle flader</li>
<li>Nedsivning af regnvand </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800228bc() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800228bc()" @update-prices-3547.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="3547" data-price-box="product-id-3547"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-3547" data-price-amount="529.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">529,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-3547" data-price-amount="552.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">552,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-faskine-aquablok-256-liter-t36-m2-tagflade-190196400" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(3547)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3549/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3549/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="3549">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-fiberdug-20-x-30-meter-passer-til-aquablok-faskiner-190196450" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-3549.window="$el.src = $event.detail" alt="Fiberdug 2 x 3 meter" title="Fiberdug 2,0 x 3,0 meter passer til aquablok faskiner" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/2/32dc7809343151f5827603284b02f2df28184bd1ef136d9fddb3fa872e71f903.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-fiberdug-20-x-30-meter-passer-til-aquablok-faskiner-190196450">
Fiberdug </a>
<p class="text-xs"> 190196450 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>T/ aquablok 256 lilter<br>Vægt 100 g/m²<br><br></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80027019() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80027019()" @update-prices-3549.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="3549" data-price-box="product-id-3549"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-3549" data-price-amount="122.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">122,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-3549" data-price-amount="129.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">129,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-fiberdug-20-x-30-meter-passer-til-aquablok-faskiner-190196450" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(3549)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4882/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4882/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="4882">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-plastmo-faskine-m-o110mm-studs-223171200" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-4882.window="$el.src = $event.detail" alt="Plastmo Faskine M/110mm Studs" title="Plastmo faskine-223171200" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/2/223171200_1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-plastmo-faskine-m-o110mm-studs-223171200">
Plastmo Faskine M/110mm Studs </a>
<p class="text-xs"> 223171200 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ingen geotekstil nødvendig</li>
<li>Grave- og installationstid halveres</li>
<li>Udledning af regnvand i jorden</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8002b881() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8002b881()" @update-prices-4882.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="4882" data-price-box="product-id-4882"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-4882" data-price-amount="554.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">554,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-4882" data-price-amount="577.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">577,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-plastmo-faskine-m-o110mm-studs-223171200" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(4882)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13260/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13260/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13260">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-opsamling-regnvand-aflob-kloak-opsamling-af-regnvand-basic-regnvandstank-komplet-2100-liter-225600700" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13260.window="$el.src = $event.detail" alt="Basic Regnvandstank komplet 2100 liter Inkl. dykpumpe og opføringsrør" title="Basic Regnvandstank komplet 2100 liter Inkl. dykpumpe og opføringsrør" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/2/225600700_1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-opsamling-regnvand-aflob-kloak-opsamling-af-regnvand-basic-regnvandstank-komplet-2100-liter-225600700">
Basic Regnvandstank komplet m/dykpumpe og opføringsrør </a>
<p class="text-xs"> 225600700 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>2100 liter regnvandstank<br>Max jorddække 99 cm<br>Anvend regnvand til </p>
<ul>
<li>Toiletskylning</li>
<li>Tøjvask & Bilvask</li>
<li>Havevanding</li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8002fea1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8002fea1()" @update-prices-13260.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13260" data-price-box="product-id-13260"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13260" data-price-amount="14779.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">14.779,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-opsamling-regnvand-aflob-kloak-opsamling-af-regnvand-basic-regnvandstank-komplet-2100-liter-225600700" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13260)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4100/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4100/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="4100">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-bronde-wavin-tagnedlobsbrond-200-mm-korrugeret-ror-inkl-bund-192925195" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-4100.window="$el.src = $event.detail" alt="Tagnedløbsbrønd ø 200 mm" title="Tagnedløbsbrønd 200mm-192925195" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/192925195_5.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-bronde-wavin-tagnedlobsbrond-200-mm-korrugeret-ror-inkl-bund-192925195">
Tagnedløbsbrønd ø 200 mm </a>
<p class="text-xs"> 192925195 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø200 mm</li>
<li>1442 mm</li>
<li>Tilslutning ø110 mm</li>
<li>Vandlås og sandfang</li>
<li>Incl. bund</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8003454c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8003454c()" @update-prices-4100.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="4100" data-price-box="product-id-4100"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-4100" data-price-amount="1103.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.103,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-4100" data-price-amount="1149.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">1.149,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-bronde-wavin-tagnedlobsbrond-200-mm-korrugeret-ror-inkl-bund-192925195" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(4100)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17769/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17769/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="17769">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-kloakror-og-fittings-o110-mm-kloakror-500mm-191044050" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-17769.window="$el.src = $event.detail" alt="Kloakrør Ø110mm - flere forskellige længder" title="Billig kloakrør 110-500mm ¦ kloakrør rød" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/9/b95080b5c043d2cd56a871017e52ce552177943c2ae35ba569f9c8255f6edecb.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-kloakror-og-fittings-aflob-kloak-kloak-kloakror-og-fittings-o110-mm-kloakror">
Kloakrør Ø110mm - flere forskellige længder </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem længde<br> fra 500 mm til 6000 mm</p>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_17769() {
const configurableOptionsComponent = initConfigurableOptions('17769', {
"attributes": {
"146": {
"id": "146",
"code": "length",
"label": "L\u00e6ngde",
"options": [{
"id": "3249",
"label": "1000 mm",
"products": ["17764"]
}, {
"id": "3369",
"label": "2000 mm",
"products": ["17765"]
}, {
"id": "3425",
"label": "3000 mm",
"products": ["17766"]
}, {
"id": "3500",
"label": "500 mm",
"products": ["17763"]
}, {
"id": "3530",
"label": "6000 mm",
"products": ["17768"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"17764": {
"baseOldPrice": {
"amount": 34.4
},
"oldPrice": {
"amount": 43.000001
},
"basePrice": {
"amount": 32
},
"finalPrice": {
"amount": 40.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17765": {
"baseOldPrice": {
"amount": 46.4
},
"oldPrice": {
"amount": 58.000001
},
"basePrice": {
"amount": 43.2
},
"finalPrice": {
"amount": 54.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17766": {
"baseOldPrice": {
"amount": 81.6
},
"oldPrice": {
"amount": 102.000001
},
"basePrice": {
"amount": 76.8
},
"finalPrice": {
"amount": 96.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17763": {
"baseOldPrice": {
"amount": 29.6
},
"oldPrice": {
"amount": 37.000001
},
"basePrice": {
"amount": 27.2
},
"finalPrice": {
"amount": 34.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17768": {
"baseOldPrice": {
"amount": 240.8
},
"oldPrice": {
"amount": 301.000001
},
"basePrice": {
"amount": 228
},
"finalPrice": {
"amount": 285.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 29.6
},
"oldPrice": {
"amount": 37.000001
},
"basePrice": {
"amount": 27.2
},
"finalPrice": {
"amount": 34.000001
}
},
"productId": "17769",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"17764": {
"146": "3249"
},
"17765": {
"146": "3369"
},
"17766": {
"146": "3425"
},
"17763": {
"146": "3500"
},
"17768": {
"146": "3530"
}
},
"salable": {
"146": {
"3249": ["17764"],
"3369": ["17765"],
"3425": ["17766"],
"3500": ["17763"],
"3530": ["17768"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"17764": "191044100",
"17765": "191044200",
"17766": "191044300",
"17763": "191044050",
"17768": "191044600"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-17769", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_17769()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667eca56b4d3c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667eca56b4d3c()" @update-prices-17769.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="17769" data-price-box="product-id-17769"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-17769" data-price-amount="34.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">34,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-kloakror-og-fittings-aflob-kloak-kloak-kloakror-og-fittings-o110-mm-kloakror" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(17769)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5082/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5082/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5082">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-beton-betonkegle-til-opforingsror-o315-mm-192057044" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5082.window="$el.src = $event.detail" alt="Betonkegle til opføringsrør ø315 mm" title="Betonkegle til 315mm korr. rør" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/192057044_image.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-beton-betonkegle-til-opforingsror-o315-mm-192057044">
Betonkegle til opføringsrør ø315 mm </a>
<p class="text-xs"> 192057044 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til opføringsrør</li>
<li>Excl. dæksel</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8004148a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8004148a()" @update-prices-5082.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5082" data-price-box="product-id-5082"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5082" data-price-amount="116.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">116,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5082" data-price-amount="122.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">122,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-beton-betonkegle-til-opforingsror-o315-mm-192057044" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5082)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5085/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5085/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5085">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-beton-betondaeksel-uden-armering-o315mm-192057064" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5085.window="$el.src = $event.detail" alt="Betondæksel 315mm" title="Betondæksel til kegle 315mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/192057064_image.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-beton-betondaeksel-uden-armering-o315mm-192057064">
Betondæksel 315mm </a>
<p class="text-xs"> 192057064 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Uden armering</li>
<li>Anvendes på betonkegle </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800463e1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800463e1()" @update-prices-5085.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5085" data-price-box="product-id-5085"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5085" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5085" data-price-amount="110.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">110,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-beton-betondaeksel-uden-armering-o315mm-192057064" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5085)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/3327/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/3327/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="3327">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-plast-lauridsen-o315-mm-daeksel-med-fals-i-pvc-genbrugsplast-195585315" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-3327.window="$el.src = $event.detail" alt="Plastdæksel Lauridsen 315 Mm" title="Plastdæksel lauridsen 315 mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/195585315_image.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-plast-lauridsen-o315-mm-daeksel-med-fals-i-pvc-genbrugsplast-195585315">
Plastdæksel Lauridsen 315 Mm </a>
<p class="text-xs"> 195585315 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Brønddæksel med fals</li>
<li>PVC-genbrugsplast</li>
<li>Belastning 1500 kg</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecb1939681() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecb1939681()" @update-prices-3327.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="3327" data-price-box="product-id-3327"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-3327" data-price-amount="298.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">298,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-3327" data-price-amount="314.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">314,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-daeksler-og-riste-kegler-daeksler-plast-lauridsen-o315-mm-daeksel-med-fals-i-pvc-genbrugsplast-195585315" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(3327)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13060/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13060/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13060">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-sq5501b-391210050" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13060.window="$el.src = $event.detail" alt="Pumpmax Dykpumpe SQ5501B" title="Pumpmax Dykpumpe SQ5501B" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/f/6f761cf05e2de023b4921d31ccd550511261ab0c474feba88f28f9762ae73bc6.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-sq5501b-391210050">
Pumpmax Dykpumpe </a>
<p class="text-xs"> 391210050 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Indvendig flyder</li>
<li>Partikler op til 3 mm</li>
<li>10 meter kabel</li>
<li>Løftehøjde 6,5 meter</li>
<li>165 L/min</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd38a354a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd38a354a()" @update-prices-13060.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13060" data-price-box="product-id-13060"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-13060" data-price-amount="435.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">435,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-13060" data-price-amount="454.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">454,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-sq5501b-391210050" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13060)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59751/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59751/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59751">
<a href="https://www.vvs-eksperten.dk/ror-og-fittings-slange-armeret-slange-industrislange-aflob-kloak-dykpumper-spule-og-afgangsslange-112-391210000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59751.window="$el.src = $event.detail" alt="Spule- og afgangsslange" title="Spule- og afgangsslange" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/9/391210000_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/spule-og-afgangsslange-391210000-391210001">
Spule- og afgangsslange metermål </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vælg mellem 1" eller 11/2"</li>
<li>-10/+60 gr.</li>
<li>8 bar</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_59751() {
const configurableOptionsComponent = initConfigurableOptions('59751', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1318",
"label": "1\"",
"products": ["13398"]
}, {
"id": "1417",
"label": "11\/2\"",
"products": ["13397"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"13397": {
"baseOldPrice": {
"amount": 31.2
},
"oldPrice": {
"amount": 39.000001
},
"basePrice": {
"amount": 28.8
},
"finalPrice": {
"amount": 36.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13398": {
"baseOldPrice": {
"amount": 44.8
},
"oldPrice": {
"amount": 56.000001
},
"basePrice": {
"amount": 41.6
},
"finalPrice": {
"amount": 52.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 31.2
},
"oldPrice": {
"amount": 39.000001
},
"basePrice": {
"amount": 28.8
},
"finalPrice": {
"amount": 36.000001
}
},
"productId": "59751",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"13397": {
"141": "1417"
},
"13398": {
"141": "1318"
}
},
"salable": {
"141": {
"1417": ["13397"],
"1318": ["13398"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"13397": "391210000",
"13398": "391210001"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-59751", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_59751()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec8004e684() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8004e684()" @update-prices-59751.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59751" data-price-box="product-id-59751"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-59751" data-price-amount="36.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">36,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/spule-og-afgangsslange-391210000-391210001" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59751)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="55">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-55.window="$el.src = $event.detail" alt="Komplet nedløbsventil Speedy" title="Komplet nedløbsventil Speedy" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/5/b50fbd5159b8d2f1bb157cf06e1e8b1e3bf01772d261b581f97e3715088a46d0.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080">
Komplet nedløbsventil Speedy </a>
<p class="text-xs"> 273044080 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Egnet til nedløbsrør ø70-100 mm</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd9f98f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd9f98f()" @update-prices-55.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="55" data-price-box="product-id-55"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-55" data-price-amount="441.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">441,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-55" data-price-amount="460.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">460,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(55)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/45/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/45/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="45">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-regnvandstonde-210-liter-gron-plast-273044000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-45.window="$el.src = $event.detail" alt="Regnvandstønde 210 Liter grøn plast" title="Regnvandstønde 210 Liter grøn plast" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/0/a09cdfde8a9fa77851d67d9adf5219ecfe396c9f31f7e195ae495e5f09e37d5c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-regnvandstonde-210-liter-gron-plast-273044000">
Regnvandstønde </a>
<p class="text-xs"> 273044000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Incl. aftapshane og låg</li>
<li>210 liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdaffd5() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdaffd5()" @update-prices-45.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="45" data-price-box="product-id-45"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-45" data-price-amount="191.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">191,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-45" data-price-amount="201.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">201,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-regnvandstonde-210-liter-gron-plast-273044000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(45)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2760/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2760/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 57% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2760">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solceller-solcelle-tilbehor-ulica-solar-solcelle-ul-365w-monokrystallinske-902000370" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2760.window="$el.src = $event.detail" alt="Solcelle Ulica Solar UL-365W" title="Solcelle Ulica Solar UL-365W" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/3/83965576a3c0949044520a29b7a53348e638644445d2689281d22d7c2a3ca76f.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solceller-solcelle-tilbehor-ulica-solar-solcelle-ul-365w-monokrystallinske-902000370">
Ulica Solar Solcelle UL-365W - Sort monokrystallinske solcelle </a>
<p class="text-xs"> 902000370 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Sort overflade</li>
<li>Monokrystallinske </li>
<li>365 W</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec2e10be51() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2e10be51()" @update-prices-2760.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2760" data-price-box="product-id-2760"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2760" data-price-amount="599" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">599,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2760" data-price-amount="1425.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.425,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solceller-solcelle-tilbehor-ulica-solar-solcelle-ul-365w-monokrystallinske-902000370" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2760)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11042/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11042/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 37% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="11042">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-radiatorventiler-og-termostater-tilslutning-til-radiator-radiatornogle-juletrae-405001999" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-11042.window="$el.src = $event.detail" alt="Radiatornøgle " juletræ""="" title="Radiatornøgle" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/1924202e534e593366d493bc38a0949adba7da557f7a9ddbae3199d5265581fa.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-radiatorventiler-og-termostater-tilslutning-til-radiator-radiatornogle-juletrae-405001999">
Radiatornøgle "juletræ" </a>
<p class="text-xs"> 405001999 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Kapacitet: 3/8"- 1"</p>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8006289d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8006289d()" @update-prices-11042.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="11042" data-price-box="product-id-11042"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-11042" data-price-amount="99.95" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,95</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-11042" data-price-amount="160.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">160,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-radiatorventiler-og-termostater-tilslutning-til-radiator-radiatornogle-juletrae-405001999" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(11042)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25804/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25804/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 21% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25804">
<a href="https://www.vvs-eksperten.dk/solceller-solcelle-inverter-og-batteri-902007110" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25804.window="$el.src = $event.detail" alt="Growatt APX HV Batteri 5.0" title="Growatt APX HV Batteri 5.0" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902007120.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/solceller-solcelle-inverter-og-batteri-902007110">
Growatt APX HV 5.0P batteri modul 5 kWh </a>
<p class="text-xs"> 902007110 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til Growatt Hybrid inverter</li>
<li>Kan udvides, stabelbare</li>
<li>Incl. Kabelsæt til forbindelse</li>
<li><span style="color: #000000; font-family: inherit;">Excl. Base modul og </span><span style="color: #000000; font-family: inherit;">Power modul</span></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80067b2a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80067b2a()" @update-prices-25804.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25804" data-price-box="product-id-25804"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25804" data-price-amount="12995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">12.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25804" data-price-amount="16599.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">16.599,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/solceller-solcelle-inverter-og-batteri-902007110" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25804)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2672/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2672/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 31% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2672">
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-10w-led-projektor-230v-80000075010" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2672.window="$el.src = $event.detail" alt="LED Arbejdslampe 10W - LED-projektør 230V" title="Arbejdslampe LED 10W-80000075010" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/0/80000075010_farve.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-10w-led-projektor-230v-80000075010">
LED Arbejdslampe 10W </a>
<p class="text-xs"> 80000075010 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>1 meter kabel</li>
<li>Inkl. stander</li>
<li>(farven kan varierer)</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8006cbfc() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8006cbfc()" @update-prices-2672.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2672" data-price-box="product-id-2672"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2672" data-price-amount="99.95" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,95</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2672" data-price-amount="145.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">145,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/belysning-led-projektor-led-arbejdslampe-10w-led-projektor-230v-80000075010" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2672)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25968/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25968/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25968">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-19-0-kw-902001161" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25968.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/tegl 17,5 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/tegl 17,5 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001161.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-19-0-kw-902001161">
Growatt hybrid solcelleanlæg t/tegl 17,5 kWp 3-faset </a>
<p class="text-xs"> 902001161 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til tegl tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80071966() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80071966()" @update-prices-25968.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25968" data-price-box="product-id-25968"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25968" data-price-amount="127400" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">127.400,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25968" data-price-amount="182000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">182.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-19-0-kw-902001161" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25968)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25967/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25967/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25967">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-19-0-kw-902001160" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25967.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/eternit 17,5 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/eternit 17,5 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001160.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-19-0-kw-902001160">
Growatt hybrid solcelleanlæg t/eternit 17,5 kWp 3-faset </a>
<p class="text-xs"> 902001160 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til eternit tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8007661c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8007661c()" @update-prices-25967.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25967" data-price-box="product-id-25967"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25967" data-price-amount="127400" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">127.400,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25967" data-price-amount="182000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">182.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-19-0-kw-902001160" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25967)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25966/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25966/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 32% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25966">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-14-6-kw-902001151" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25966.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/tegl 14,6 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/tegl 14,6 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001151_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-14-6-kw-902001151">
Growatt hybrid solcelleanlæg t/tegl 14,6 kWp 3-faset </a>
<p class="text-xs"> 902001151 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til tegl tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8007b332() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8007b332()" @update-prices-25966.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25966" data-price-box="product-id-25966"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25966" data-price-amount="95995.0125" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">95.995,01</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25966" data-price-amount="143000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">143.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-14-6-kw-902001151" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25966)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25965/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25965/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 32% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25965">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-14-6-kw-902001150" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25965.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/eternit 14,6 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/eternit 14,6 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001150_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-14-6-kw-902001150">
Growatt hybrid solcelleanlæg t/eternit 14,6 kWp 3-faset </a>
<p class="text-xs"> 902001150 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til eternit tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800805e8() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800805e8()" @update-prices-25965.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25965" data-price-box="product-id-25965"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25965" data-price-amount="95995.0125" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">95.995,01</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25965" data-price-amount="143000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">143.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-14-6-kw-902001150" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25965)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25964/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25964/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25964">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-11-7-kw-902001141" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25964.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/tegl 11,7 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/tegl 11,7 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001141_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-11-7-kw-902001141">
Growatt hybrid solcelleanlæg t/tegl 11,7 kWp 3-faset </a>
<p class="text-xs"> 902001141 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til tegl tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80085830() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80085830()" @update-prices-25964.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25964" data-price-box="product-id-25964"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25964" data-price-amount="75250" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">75.250,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25964" data-price-amount="109000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">109.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-11-7-kw-902001141" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25964)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25963/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25963/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25963">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-11-kwp-902001140" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25963.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/eternit 11,7 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/eternit 11,7 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001140_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-11-kwp-902001140">
Growatt hybrid solcelleanlæg t/eternit 11,7 kWp 3-faset </a>
<p class="text-xs"> 902001140 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til eternit tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8008ad3a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8008ad3a()" @update-prices-25963.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25963" data-price-box="product-id-25963"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25963" data-price-amount="75250" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">75.250,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25963" data-price-amount="109000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">109.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-11-kwp-902001140" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25963)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25939/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25939/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25939">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-8-7-kwp-902001131" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25939.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/tegl 8,7 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/tegl 8,7 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001131.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-8-7-kwp-902001131">
Growatt hybrid solcelleanlæg t/tegl 8,7 kWp 3-faset </a>
<p class="text-xs"> 902001131 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til tegl tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80090485() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80090485()" @update-prices-25939.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25939" data-price-box="product-id-25939"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25939" data-price-amount="68995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">68.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25939" data-price-amount="99000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">99.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-8-7-kwp-902001131" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25939)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25938/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25938/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25938">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-8-7-kwp-902001130" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25938.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/eternit 8,7 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/eternit 8,7 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001130.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-8-7-kwp-902001130">
Growatt hybrid solcelleanlæg t/eternit 8,7 kWp 3-faset </a>
<p class="text-xs"> 902001130 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til eternit tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800958f0() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800958f0()" @update-prices-25938.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25938" data-price-box="product-id-25938"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25938" data-price-amount="68995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">68.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25938" data-price-amount="99000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">99.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-8-7-kwp-902001130" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25938)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25859/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25859/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 36% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25859">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-5-8kw-902001101" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25859.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/tegl 5,8 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/tegl 5,8 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001101.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-5-8kw-902001101">
Growatt hybrid solcelleanlæg t/tegl 5,8 kWp 3-faset </a>
<p class="text-xs"> 902001101 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til tegl tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8009b313() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8009b313()" @update-prices-25859.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25859" data-price-box="product-id-25859"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25859" data-price-amount="43250" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">43.250,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25859" data-price-amount="68000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">68.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-5-8kw-902001101" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25859)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25858/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25858/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 36% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25858">
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-5-8kw-902001100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25858.window="$el.src = $event.detail" alt="Growatt hybrid solcelleanlæg t/eternit 5,8 kWp 3-faset" title="Growatt hybrid solcelleanlæg t/eternit 5,8 kWp 3-faset" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902001100.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-5-8kw-902001100">
Growatt hybrid solcelleanlæg t/eternit 5,8 kWp 3-faset </a>
<p class="text-xs"> 902001100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til eternit tag</li>
<li>Batteri til overskudsproduktion</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800a0b87() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800a0b87()" @update-prices-25858.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25858" data-price-box="product-id-25858"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25858" data-price-amount="43250" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">43.250,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-25858" data-price-amount="68000.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">68.000,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/growatt-3-faset-hybrid-5-8kw-902001100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25858)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2790/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2790/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 33% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2790">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-tegl-02000014" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2790.window="$el.src = $event.detail" alt="Growatt solcelleanlæg til tegl 1,85 kWp" title="Growatt hybrid solcelleanlæg tegl 1,5kW-902000014" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902000014.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-tegl-02000014">
Growatt solcelleanlæg t/tegl 1,85 kWp </a>
<p class="text-xs"> 902000014 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til tegl tag</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800a685c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800a685c()" @update-prices-2790.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2790" data-price-box="product-id-2790"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2790" data-price-amount="7995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">7.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2790" data-price-amount="11995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">11.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-tegl-02000014" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2790)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2789/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2789/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 33% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2789">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-eternit-902000013" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2789.window="$el.src = $event.detail" alt="Growatt solcelleanlæg til eternit 1,85 kWp" title="Growatt solcelleanlæg til eternit 1,85 kWp" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902000013.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-eternit-902000013">
Growatt solcelleanlæg til eternit 1,85 kWp </a>
<p class="text-xs"> 902000013 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til eternit tag</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800ac40b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800ac40b()" @update-prices-2789.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2789" data-price-box="product-id-2789"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2789" data-price-amount="7995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">7.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2789" data-price-amount="11995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">11.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-eternit-902000013" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2789)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2788/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2788/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 37% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2788">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-tegl-902000021" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2788.window="$el.src = $event.detail" alt="Growatt solcelleanlæg til tegl 3,65 kWp" title="Growatt solcelleanlæg til tegl 3,65 kWp" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902000021_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-tegl-902000021">
Growatt solcelleanlæg til tegl 3,65 kWp </a>
<p class="text-xs"> 902000021 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til tegl tag</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800b187d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800b187d()" @update-prices-2788.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2788" data-price-box="product-id-2788"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2788" data-price-amount="12495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">12.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2788" data-price-amount="19995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">19.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-tegl-902000021" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2788)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2787/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2787/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Chokpris - kun kort tid! - spar 37% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2787">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-eternit-902000020" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2787.window="$el.src = $event.detail" alt="Growatt solcelleanlæg til eternit 3,65 kWp" title="Growatt solcelleanlæg til eternit 3,65 kWp" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/902000020_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-eternit-902000020">
Growatt solcelleanlæg til eternit 3,65 kWp </a>
<p class="text-xs"> 902000020 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet anlæg</li>
<li>Til eternit tag</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800b6c9d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800b6c9d()" @update-prices-2787.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2787" data-price-box="product-id-2787"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2787" data-price-amount="12495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">12.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2787" data-price-amount="19995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">19.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solcellepakke-varme-og-klima-solenergi-solceller-solcellepakke-growatt-solcelleanlaeg-eternit-902000020" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2787)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/18593/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/18593/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="18593">
<a href="https://www.vvs-eksperten.dk/hus-og-have-udendorshane-fm-mattsson-udendorshane-med-greb-til-400-mm-vaegtykkelse-743446514" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-18593.window="$el.src = $event.detail" alt="Fm mattsson udendørshane m/ greb - Se vores udvalg" title="Fm Mattsson posteventil 400mm|743446514" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/6/b6425523a22c7a5b92fd8305062426c79420d1e3a0bafd8df4050153cf600ed1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-posteventil-spulehane-684cea87-6a2d-4cf4-982a-c718e6410a71">
Fm mattsson udendørshane m/ greb - Se vores udvalg </a>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_18593() {
const configurableOptionsComponent = initConfigurableOptions('18593', {
"attributes": {
"146": {
"id": "146",
"code": "length",
"label": "L\u00e6ngde",
"options": [{
"id": "3467",
"label": "400 mm",
"products": ["18591"]
}, {
"id": "3529",
"label": "600 mm",
"products": ["18592"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"18591": {
"baseOldPrice": {
"amount": 444.8
},
"oldPrice": {
"amount": 556.000001
},
"basePrice": {
"amount": 426.4
},
"finalPrice": {
"amount": 533.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"18592": {
"baseOldPrice": {
"amount": 537.6
},
"oldPrice": {
"amount": 672.000001
},
"basePrice": {
"amount": 506.4
},
"finalPrice": {
"amount": 633.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 444.8
},
"oldPrice": {
"amount": 556.000001
},
"basePrice": {
"amount": 426.4
},
"finalPrice": {
"amount": 533.000001
}
},
"productId": "18593",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"18591": {
"146": "3467"
},
"18592": {
"146": "3529"
}
},
"salable": {
"146": {
"3467": ["18591"],
"3529": ["18592"]
}
},
"canDisplayShowOutOfStockStatus": true,
"preSelectedGallery": [],
"channel": "website",
"salesChannelCode": "base",
"sku": {
"18591": "743446514",
"18592": "743446544"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-18593", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_18593()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec2e04f066() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2e04f066()" @update-prices-18593.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="18593" data-price-box="product-id-18593"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-18593" data-price-amount="533.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">533,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-posteventil-spulehane-684cea87-6a2d-4cf4-982a-c718e6410a71" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(18593)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6387/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6387/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 24% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6387">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6387.window="$el.src = $event.detail" alt="Garden Solbruser m/20 liter beholder ude bruser" title="Garden Solbruser m/20 liter beholder ude bruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/4/d4d5615c6e41cf2df1f94b3de249f9d2b2c1c73c581355006af0307a542f23b4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189">
Garden Solbruser </a>
<p class="text-xs"> 273042189 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vandbeholder 20 liter</li>
<li>Med blandingsbatteri</li>
<li>Højde 227 cm</li>
<li>Udendørsbruser</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd374afb7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd374afb7()" @update-prices-6387.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6387" data-price-box="product-id-6387"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6387" data-price-amount="995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-6387" data-price-amount="1315.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.315,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-garden-havebruser-med-solopvarmning-273042189" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6387)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12028/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12028/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 16% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12028">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-whisky-regnvandstonde-240-liter-med-aftapshane-273044055" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12028.window="$el.src = $event.detail" alt="Whisky Regnvandstønde 240 Liter med aftapshane" title="Whisky Regnvandstønde 240 Liter med aftapshane" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/e/1/e15d7d48b262646587fe01090ab5f12dd73314f331b934acc86ef97b5831ceb4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-whisky-regnvandstonde-240-liter-med-aftapshane-273044055">
Whisky Regnvandstønde </a>
<p class="text-xs"> 273044055 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Inkl. aftapshane og låg</li>
<li>240 Liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb6d485() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb6d485()" @update-prices-12028.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12028" data-price-box="product-id-12028"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-12028" data-price-amount="1149" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.149,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-12028" data-price-amount="1372.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.372,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-regnvandsbeholder-whisky-regnvandstonde-240-liter-med-aftapshane-273044055" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12028)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60011/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60011/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60011">
<a href="https://www.vvs-eksperten.dk/669994660" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60011.window="$el.src = $event.detail" alt="Swim & Fun basic pool fritstående familiepool" title="Swim & Fun basic pool fritstående familiepool" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994660_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/669994660">
Swim & Fun komplet poolpakke </a>
<p class="text-xs"> 669994660 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>17450 Liter</li>
<li>Diameter 4,6 m</li>
<li>Komplet poolpakke</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb7d881() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb7d881()" @update-prices-60011.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60011" data-price-box="product-id-60011"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60011" data-price-amount="3495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60011" data-price-amount="4999.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">4.999,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/669994660" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60011)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9959/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9959/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="9959">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-vertland-slangeopruller-233050100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-9959.window="$el.src = $event.detail" alt="Vertland slangeopruller" title="Slangeopruller - vertland 20 meter haveslange" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/a/ba0cea83f39ee9161d02cb65a989ec2792731d06748fbf66d1a4397bc3c0ad11.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-vertland-slangeopruller-233050100">
Vertland slangeopruller </a>
<p class="text-xs"> 233050100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>20 meter PVC haveslange</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd9a888() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd9a888()" @update-prices-9959.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="9959" data-price-box="product-id-9959"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-9959" data-price-amount="633.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">633,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-9959" data-price-amount="660.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">660,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-vertland-slangeopruller-233050100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(9959)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60010/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60010/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 36% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60010">
<a href="https://www.vvs-eksperten.dk/669994650" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60010.window="$el.src = $event.detail" alt="Bestway familiepool 450 liter oppustelig" title="Bestway familiepool 450 liter oppustelig" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/6/669994650_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/669994650">
Bestway familiepool </a>
<p class="text-xs"> 669994650 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Oppustelig</li>
<li>450 Liter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb8509f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb8509f()" @update-prices-60010.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60010" data-price-box="product-id-60010"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60010" data-price-amount="159" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">159,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60010" data-price-amount="249.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">249,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/669994650" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60010)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5876/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5876/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5876">
<a href="https://www.vvs-eksperten.dk/badevaerelse-badekar-tilbehor-til-udendors-spa-test-klorvaerdi-pool-test-669994560" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5876.window="$el.src = $event.detail" alt="Test klorværdi - pool test" title="Test klorværdi - pool test" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/d/dd331d18973c8314d8bad849ab633d61771315d4cdf8d802aa79c08551ae67b0.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-badekar-tilbehor-til-udendors-spa-test-klorvaerdi-pool-test-669994560">
Test klorværdi - pool test </a>
<p class="text-xs"> 669994560 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Til udespa tester for</p>
<ul>
<li>pH-værdi/alkalinitet</li>
<li>Klorværdi</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800ceffd() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800ceffd()" @update-prices-5876.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5876" data-price-box="product-id-5876"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5876" data-price-amount="193.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">193,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5876" data-price-amount="203.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">203,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-badekar-tilbehor-til-udendors-spa-test-klorvaerdi-pool-test-669994560" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5876)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5404/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5404/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5404">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-aflobsrende-diy-aflobsrende-med-galvaniseret-rist-1-meter-221512a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5404.window="$el.src = $event.detail" alt="DIY Linjedræn i komposit med galvaniseret rist 1 meter afløbsrende" title="DIY Linjedræn i komposit med galvaniseret rist 1 meter afløbsrende" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/a/3a2e6fa35b9caeb752e4f5a5db442a0d1227e8bb7b8ab7393189befd79fe9224.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-aflobsrende-diy-aflobsrende-med-galvaniseret-rist-1-meter-221512a10">
DIY Linjedræn m/galv. rist </a>
<p class="text-xs"> 221512A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Med galvaniseret rist</li>
<li>1 meter</li>
<li>1,5 ton belastning - klasse A</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8000d991() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8000d991()" @update-prices-5404.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5404" data-price-box="product-id-5404"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5404" data-price-amount="170.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">170,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5404" data-price-amount="179.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">179,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-aflobsrende-diy-aflobsrende-med-galvaniseret-rist-1-meter-221512a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5404)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3547/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3547/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="3547">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-faskine-aquablok-256-liter-t36-m2-tagflade-190196400" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-3547.window="$el.src = $event.detail" alt="Aquablok 256 liter til 36 m² tagflade" title="Aquablok 256 liter til 36 m² tagflade" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/7/77ab61df1b47fd66ad6302b50da9634be15747f7706d1c6f1b6b4f24b14289e1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-faskine-aquablok-256-liter-t36-m2-tagflade-190196400">
Aquablok </a>
<p class="text-xs"> 190196400 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Kan tilsluttes fra alle flader</li>
<li>Nedsivning af regnvand </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800228bc() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800228bc()" @update-prices-3547.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="3547" data-price-box="product-id-3547"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-3547" data-price-amount="529.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">529,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-3547" data-price-amount="552.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">552,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-faskine-aquablok-256-liter-t36-m2-tagflade-190196400" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(3547)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3549/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3549/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="3549">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-fiberdug-20-x-30-meter-passer-til-aquablok-faskiner-190196450" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-3549.window="$el.src = $event.detail" alt="Fiberdug 2 x 3 meter" title="Fiberdug 2,0 x 3,0 meter passer til aquablok faskiner" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/2/32dc7809343151f5827603284b02f2df28184bd1ef136d9fddb3fa872e71f903.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-fiberdug-20-x-30-meter-passer-til-aquablok-faskiner-190196450">
Fiberdug </a>
<p class="text-xs"> 190196450 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>T/ aquablok 256 lilter<br>Vægt 100 g/m²<br><br></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80027019() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80027019()" @update-prices-3549.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="3549" data-price-box="product-id-3549"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-3549" data-price-amount="122.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">122,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-3549" data-price-amount="129.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">129,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-fiberdug-20-x-30-meter-passer-til-aquablok-faskiner-190196450" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(3549)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4882/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4882/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="4882">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-plastmo-faskine-m-o110mm-studs-223171200" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-4882.window="$el.src = $event.detail" alt="Plastmo Faskine M/110mm Studs" title="Plastmo faskine-223171200" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/2/223171200_1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-plastmo-faskine-m-o110mm-studs-223171200">
Plastmo Faskine M/110mm Studs </a>
<p class="text-xs"> 223171200 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ingen geotekstil nødvendig</li>
<li>Grave- og installationstid halveres</li>
<li>Udledning af regnvand i jorden</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8002b881() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8002b881()" @update-prices-4882.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="4882" data-price-box="product-id-4882"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-4882" data-price-amount="554.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">554,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-4882" data-price-amount="577.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">577,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-faskine-plastmo-faskine-m-o110mm-studs-223171200" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(4882)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59654/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59654/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59654">
<a href="https://www.vvs-eksperten.dk/231290024" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59654.window="$el.src = $event.detail" alt="InnoCare Algefjerner 5 liter" title="InnoCare Algefjerner 5 liter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/p/r/produkt_billede_5_l_algefjerner_90005_fritskrabt_3024x3024_300_dpi.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/231290024">
InnoCare Algefjerner </a>
<p class="text-xs"> 231290024 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul class="icon-with-text icon-with-text--vertical list-unstyled">
<li class="icon-with-text__item"><span class="h4 inline-richtext">Godkendt af Miljøstyrelsen</span></li>
<li class="icon-with-text__item"><span class="h4 inline-richtext">Fjerner effektiv alger</span></li>
<li class="icon-with-text__item"><span class="h4 inline-richtext">Let at påføre </span></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800d4c25() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800d4c25()" @update-prices-59654.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59654" data-price-box="product-id-59654"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59654" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-59654" data-price-amount="105.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">105,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/231290024" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59654)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59658/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59658/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59658">
<a href="https://www.vvs-eksperten.dk/231290032" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59658.window="$el.src = $event.detail" alt="InnoCare Flise- og murimprægnering 5 liter" title="InnoCare Flise- og murimprægnering 5 liter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/l/fliseimpr.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/231290032">
InnoCare Flise- og murimprægnering </a>
<p class="text-xs"> 231290032 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til ubehandlede fliser, muværk og beton</li>
<li>Vand- og smudsafvisende</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800da29a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800da29a()" @update-prices-59658.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59658" data-price-box="product-id-59658"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59658" data-price-amount="269.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">269,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-59658" data-price-amount="279.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">279,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/231290032" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59658)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59655/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59655/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59655">
<a href="https://www.vvs-eksperten.dk/231290026" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59655.window="$el.src = $event.detail" alt="InnoCare Trærens til ubehandlet træoverflader 5 liter" title="InnoCare Trærens til ubehandlet træoverflader 5 liter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/t/r/tr_rrens.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/231290026">
InnoCare Trærens </a>
<p class="text-xs"> 231290026 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til ubehandlet træ udendørs</li>
<li>Klar-til-brug</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec2e12d870() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2e12d870()" @update-prices-59655.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59655" data-price-box="product-id-59655"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59655" data-price-amount="189.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">189,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-59655" data-price-amount="199.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">199,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/231290026" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59655)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59656/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59656/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59656">
<a href="https://www.vvs-eksperten.dk/231290028" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59656.window="$el.src = $event.detail" alt="InnoCare Træimprægnering til ubehandlet træoverflader 5 liter" title="InnoCare Træimprægnering til ubehandlet træoverflader 5 liter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/t/r/tr_imp.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/231290028">
InnoCare Træimprægnering </a>
<p class="text-xs"> 231290028 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til ubehandlet træ udendørs</li>
<li>Forlænger træets levetid</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec800dfa10() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800dfa10()" @update-prices-59656.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59656" data-price-box="product-id-59656"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-59656" data-price-amount="269.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">269,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-59656" data-price-amount="279.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">279,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/231290028" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59656)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17870/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17870/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="17870">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-276511030" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-17870.window="$el.src = $event.detail" alt="Zink tagrende 3 meter" title="Zink tagrende 3 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/3/b363b3360f639a212cee7ec23ecd0e8234ffd92568191031649f4d1d70cc2a38.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-hus-og-have-tagrender-og-tag-zink-tagrende">
Zink tagrende 3 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Til limning og lodning</p>
<p> </p>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_17870() {
const configurableOptionsComponent = initConfigurableOptions('17870', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "3897",
"label": "10\"\/250",
"products": ["17867"]
}, {
"id": "3912",
"label": "11\"\/280",
"products": ["17868"]
}, {
"id": "3915",
"label": "12\"\/333",
"products": ["17869"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"17867": {
"baseOldPrice": {
"amount": 212
},
"oldPrice": {
"amount": 265.000001
},
"basePrice": {
"amount": 200.8
},
"finalPrice": {
"amount": 251.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17868": {
"baseOldPrice": {
"amount": 223.2
},
"oldPrice": {
"amount": 279.000001
},
"basePrice": {
"amount": 212
},
"finalPrice": {
"amount": 265.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17869": {
"baseOldPrice": {
"amount": 239.2
},
"oldPrice": {
"amount": 299.000001
},
"basePrice": {
"amount": 227.2
},
"finalPrice": {
"amount": 284.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 212
},
"oldPrice": {
"amount": 265.000001
},
"basePrice": {
"amount": 200.8
},
"finalPrice": {
"amount": 251.000001
}
},
"productId": "17870",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"17867": {
"150": "3897"
},
"17868": {
"150": "3912"
},
"17869": {
"150": "3915"
}
},
"salable": {
"150": {
"3897": ["17867"],
"3912": ["17868"],
"3915": ["17869"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"17867": "276511030",
"17868": "276511031",
"17869": "276511032"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-17870", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_17870()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec800e322d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800e322d()" @update-prices-17870.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="17870" data-price-box="product-id-17870"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-17870" data-price-amount="251.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">251,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-hus-og-have-tagrender-og-tag-zink-tagrende" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(17870)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/18020/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/18020/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="18020">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-konsoljern-10-277016040" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-18020.window="$el.src = $event.detail" alt="Konsoljern til halvrund tagrende" title="Konsoljern til halvrund tagrende" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/e/1/e18e774e0d6252184c5c2e0585d902900d48817e995bac7970e4ea7125750beb.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-d20f78af-ea9a-4840-8eb0-71ee7be91033">
Konsoljern til halvrund tagrende </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Bredde: 25 mm</li>
<li>Godstykkelse: 4 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_18020() {
const configurableOptionsComponent = initConfigurableOptions('18020', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "3897",
"label": "10\"\/250",
"products": ["18017"]
}, {
"id": "3912",
"label": "11\"\/280",
"products": ["18018"]
}, {
"id": "3915",
"label": "12\"\/333",
"products": ["18019"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"18017": {
"baseOldPrice": {
"amount": 36.8
},
"oldPrice": {
"amount": 46.000001
},
"basePrice": {
"amount": 34.4
},
"finalPrice": {
"amount": 43.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"18018": {
"baseOldPrice": {
"amount": 39.2
},
"oldPrice": {
"amount": 49.000001
},
"basePrice": {
"amount": 36.8
},
"finalPrice": {
"amount": 46.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"18019": {
"baseOldPrice": {
"amount": 47.2
},
"oldPrice": {
"amount": 59.000001
},
"basePrice": {
"amount": 44
},
"finalPrice": {
"amount": 55.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 36.8
},
"oldPrice": {
"amount": 46.000001
},
"basePrice": {
"amount": 34.4
},
"finalPrice": {
"amount": 43.000001
}
},
"productId": "18020",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"18017": {
"150": "3897"
},
"18018": {
"150": "3912"
},
"18019": {
"150": "3915"
}
},
"salable": {
"150": {
"3897": ["18017"],
"3912": ["18018"],
"3915": ["18019"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"18017": "277016040",
"18018": "277016041",
"18019": "277016042"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-18020", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_18020()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec800eca63() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec800eca63()" @update-prices-18020.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="18020" data-price-box="product-id-18020"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-18020" data-price-amount="43.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">43,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-d20f78af-ea9a-4840-8eb0-71ee7be91033" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(18020)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/10124/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8_Z2FkX3NvdXJjZT0x/product/10124/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10124">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-sprojtepistol-multivander-m10-varianter-273042241" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10124.window="$el.src = $event.detail" alt="Garden vandingspistol med 10 Varianter" title="Garden vandingspistol med 10 Varianter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9d7fab166ad77cf3ef8fe0f8947c22092f734d7238ac59c85e08a3a380b131b7.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-sprojtepistol-multivander-m10-varianter-273042241">
Garden vandingspistol med 10 Varianter </a>
<p class="text-xs"> 273042241 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Sprøjtepistol</li>
<li>10 dysefunktioner</li>
<li>3 koblinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec2e05e2c0() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec2e05e2c0()" @update-prices-10124.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10124" data-price-box="product-id-10124"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10124" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10124" data-price-amount="105.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">105,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-sprojtepistol-multivander-m10-varianter-273042241" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10124)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10143/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10143/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10143">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043300" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10143.window="$el.src = $event.detail" alt="Garden drypvandingssæt med spyd - Selvvanding" title="Garden drypvandingssæt med spyd - Selvvanding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/e/2/e2c3556cad9aa8dec93f10095a516d397d1ceb6b16b344ada2525e0f0d7a5820.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043300">
Garden drypvandingssæt m/spyd </a>
<p class="text-xs"> 273043300 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Komplet sæt</p>
<ul>
<li>20 spyd og T-stykker</li>
<li>15 meter slange</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec6d7cdc49() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec6d7cdc49()" @update-prices-10143.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10143" data-price-box="product-id-10143"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10143" data-price-amount="140.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">140,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10143" data-price-amount="147.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">147,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043300" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10143)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/47/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/47/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="47">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-47.window="$el.src = $event.detail" alt="Outfit terrassevarmer med hjul - Sort" title="Outfit terrassevarmer med hjul - Sort" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/a/ba5abac16a91d952a5f80f453ef3f39c4937ac3c36e1405e83e226135d6571e2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520">
Outfit terrassevarmer </a>
<p class="text-xs"> 317210520 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Stor reflektorskærm</li>
<li>Elektronisk tænding</li>
<li>Med hjul</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb444d7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb444d7()" @update-prices-47.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="47" data-price-box="product-id-47"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-47" data-price-amount="1948" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.948,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-47" data-price-amount="2298.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">2.298,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-outfit-terrassevarmer-med-hjul-sort-317210520" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(47)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/74/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="74">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-74.window="$el.src = $event.detail" alt="Cool Well Øl køler" title="Cool Well Øl køler" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/0/1031ab5dbb5f41431488c5e55af493c1ded6d8e3483ff11dfe8148eb3b47c04a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000">
Cool Well Øl køler </a>
<p class="text-xs"> 273046000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til 24 dåser og 1 flaske vin</li>
<li>Hurtig vej til kolde drikke </li>
<li>Udnytte jordens køling</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb75210() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb75210()" @update-prices-74.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="74" data-price-box="product-id-74"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-74" data-price-amount="389" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">389,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-74" data-price-amount="459.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">459,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-ol-koler-koleboks-cool-well-ol-koler-til-24-daser-og-1-flaske-vin-273046000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(74)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="55">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-55.window="$el.src = $event.detail" alt="Komplet nedløbsventil Speedy" title="Komplet nedløbsventil Speedy" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/5/b50fbd5159b8d2f1bb157cf06e1e8b1e3bf01772d261b581f97e3715088a46d0.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080">
Komplet nedløbsventil Speedy </a>
<p class="text-xs"> 273044080 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Egnet til nedløbsrør ø70-100 mm</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd9f98f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd9f98f()" @update-prices-55.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="55" data-price-box="product-id-55"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-55" data-price-amount="441.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">441,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-55" data-price-amount="460.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">460,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-tilbehor-til-tagrender-komplet-nedlobsventil-speedy-273044080" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(55)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4100/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4100/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="4100">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-bronde-wavin-tagnedlobsbrond-200-mm-korrugeret-ror-inkl-bund-192925195" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-4100.window="$el.src = $event.detail" alt="Tagnedløbsbrønd ø 200 mm" title="Tagnedløbsbrønd 200mm-192925195" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/9/192925195_5.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-bronde-wavin-tagnedlobsbrond-200-mm-korrugeret-ror-inkl-bund-192925195">
Tagnedløbsbrønd ø 200 mm </a>
<p class="text-xs"> 192925195 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø200 mm</li>
<li>1442 mm</li>
<li>Tilslutning ø110 mm</li>
<li>Vandlås og sandfang</li>
<li>Incl. bund</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8003454c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8003454c()" @update-prices-4100.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="4100" data-price-box="product-id-4100"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-4100" data-price-amount="1103.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.103,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-4100" data-price-amount="1149.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">1.149,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-kloak-bronde-wavin-tagnedlobsbrond-200-mm-korrugeret-ror-inkl-bund-192925195" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(4100)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10119/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10119/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10119">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-34-slangekoblingssaet-med-4-dele-273042086" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10119.window="$el.src = $event.detail" alt="Garden 3/4"  slangekoblingssæt med 4 dele"="" title="Garden slangekoblingssæt 3/4" -273042086"="" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/c/bc56629816b68b2780d8d1ccbfad2b72a51f0b1f9ebf5df498e1ae6658dbec1a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-34-slangekoblingssaet-med-4-dele-273042086">
Garden 3/4" slangekoblingssæt med 4 dele </a>
<p class="text-xs"> 273042086 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Strålespids og 3 koblinger</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fde9ca6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fde9ca6()" @update-prices-10119.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10119" data-price-box="product-id-10119"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10119" data-price-amount="59.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">59,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10119" data-price-amount="63.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">63,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-vandingspistol-garden-34-slangekoblingssaet-med-4-dele-273042086" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10119)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2627/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2627/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2627">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-terrassevarmer-til-vaegmontage-med-fjernbetjening-og-app-2000w-80000014045" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2627.window="$el.src = $event.detail" alt="Terrassevarmer til vægmontage med fjernbetjening og app 2000w" title="Terassevarmer sort 1500w-80000014045" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/3/532ca83f82349b4bbb437e76a240fe36be079db6c429203c0a54174a7801c3db.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-terrassevarmer-til-vaegmontage-med-fjernbetjening-og-app-2000w-80000014045">
Terrassevarmer til vægmontage med fjernbetjening og app 2000w </a>
<p class="text-xs"> 80000014045 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Fjernbetjening</li>
<li>Golden tube rør</li>
<li>Vægbeslag</li>
<li>1,7 m ledning</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80103bcc() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80103bcc()" @update-prices-2627.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2627" data-price-box="product-id-2627"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2627" data-price-amount="799.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">799,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2627" data-price-amount="844.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">844,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-terrassevarmer-til-vaegmontage-med-fjernbetjening-og-app-2000w-80000014045" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2627)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17943/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/17943/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="17943">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-276659050" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-17943.window="$el.src = $event.detail" alt="Rheinzink regnvandssamler m/Gardenastik" title="Rheinzink regnvandssamler m/Gardenastik" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/7/276659040_2.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-276659040-276659050">
Rheinzink regnvandssamler m/Gardenastik </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem</p>
<ul>
<li>ø76 mm</li>
<li>ø87 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_17943() {
const configurableOptionsComponent = initConfigurableOptions('17943', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "2216",
"label": "76 mm",
"products": ["17941"]
}, {
"id": "2245",
"label": "87 mm",
"products": ["17942"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"17941": {
"baseOldPrice": {
"amount": 372
},
"oldPrice": {
"amount": 465.000001
},
"basePrice": {
"amount": 356.8
},
"finalPrice": {
"amount": 446.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"17942": {
"baseOldPrice": {
"amount": 372
},
"oldPrice": {
"amount": 465.000001
},
"basePrice": {
"amount": 356.8
},
"finalPrice": {
"amount": 446.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 372
},
"oldPrice": {
"amount": 465.000001
},
"basePrice": {
"amount": 356.8
},
"finalPrice": {
"amount": 446.000001
}
},
"productId": "17943",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"17941": {
"141": "2216"
},
"17942": {
"141": "2245"
}
},
"salable": {
"141": {
"2216": ["17941"],
"2245": ["17942"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"17941": "276659040",
"17942": "276659050"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-17943", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_17943()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec801072e6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801072e6()" @update-prices-17943.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="17943" data-price-box="product-id-17943"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-17943" data-price-amount="446.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">446,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-zink-tagrende-276659040-276659050" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(17943)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9952/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9952/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="9952">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-haveslange-25-meter-12-273042010" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-9952.window="$el.src = $event.detail" alt="Haveslange 25 meter 1/2" "="" title="Haveslange 25 meter 1/2" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/e/2e70d5ae3768dd29eab2d0267f7a6b9354030596c56c044405beeeb8efcca06d.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-haveslange-25-meter-12-273042010">
Haveslange 25 meter 1/2" </a>
<p class="text-xs"> 273042010 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Tåler lukket tryk</li>
<li>Kuldeflexibel</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80114d27() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80114d27()" @update-prices-9952.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="9952" data-price-box="product-id-9952"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-9952" data-price-amount="121.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">121,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-9952" data-price-amount="127.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">127,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-haveslange-25-meter-12-273042010" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(9952)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2625/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2625/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2625">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-terrassevarmer-gulvmodel-2000w-med-carbonror-80000014035" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2625.window="$el.src = $event.detail" alt="Terrassevarmer gulvmodel 2000w med Carbonrør" title="Terrassevarmer gulvmodel 2000w-80000014035" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/6/f63eeb8db3f5e3271f4585da29ae3b9827d55275bf7fe3769da5059afa24cb55.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-terrassevarmer-gulvmodel-2000w-med-carbonror-80000014035">
Terrassevarmer gulvmodel 2000w med Carbonrør </a>
<p class="text-xs"> 80000014035 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Højde 900mm</li>
<li>Carbonrør</li>
<li>2000 W</li>
<li>Mobil</li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8011afb7() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8011afb7()" @update-prices-2625.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2625" data-price-box="product-id-2625"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2625" data-price-amount="894.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">894,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-2625" data-price-amount="932.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">932,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-terrassevarmer-terrassevarmer-gulvmodel-2000w-med-carbonror-80000014035" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2625)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9956/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9956/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="9956">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-slangeholder-273042100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-9956.window="$el.src = $event.detail" alt="Grouw holder til haveslange" title="Grouw holder til haveslange" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/6/063ccecd843cb6f2660a0fbbc155c0cf71ef0d1ab142555963c0ef51f391f77f.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-slangeholder-273042100">
Grouw holder til haveslange </a>
<p class="text-xs"> 273042100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Til 30 meter slange</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdd2938() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdd2938()" @update-prices-9956.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="9956" data-price-box="product-id-9956"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-9956" data-price-amount="51.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">51,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-9956" data-price-amount="55.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">55,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-slangeholder-273042100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(9956)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13260/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13260/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13260">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-opsamling-regnvand-aflob-kloak-opsamling-af-regnvand-basic-regnvandstank-komplet-2100-liter-225600700" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13260.window="$el.src = $event.detail" alt="Basic Regnvandstank komplet 2100 liter Inkl. dykpumpe og opføringsrør" title="Basic Regnvandstank komplet 2100 liter Inkl. dykpumpe og opføringsrør" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/2/225600700_1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-opsamling-regnvand-aflob-kloak-opsamling-af-regnvand-basic-regnvandstank-komplet-2100-liter-225600700">
Basic Regnvandstank komplet m/dykpumpe og opføringsrør </a>
<p class="text-xs"> 225600700 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>2100 liter regnvandstank<br>Max jorddække 99 cm<br>Anvend regnvand til </p>
<ul>
<li>Toiletskylning</li>
<li>Tøjvask & Bilvask</li>
<li>Havevanding</li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8002fea1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8002fea1()" @update-prices-13260.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13260" data-price-box="product-id-13260"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13260" data-price-amount="14779.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">14.779,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-opsamling-regnvand-aflob-kloak-opsamling-af-regnvand-basic-regnvandstank-komplet-2100-liter-225600700" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13260)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10144/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10144/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10144">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043310" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10144.window="$el.src = $event.detail" alt="Garden drypvandingssæt med dyser- Selvvanding" title="Garden drypvandingssæt med dyser- Selvvanding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/c/fcc84b398fe89e7a4c9c14767c410384aad707e2041274e0c4762e070a6e50b4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043310">
Garden drypvandingssæt m/dyser </a>
<p class="text-xs"> 273043310 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Komplet sæt</p>
<ul>
<li>20 spyd og dyser</li>
<li>15 meter slange</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fdc6c72() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fdc6c72()" @update-prices-10144.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10144" data-price-box="product-id-10144"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10144" data-price-amount="140.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">140,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10144" data-price-amount="147.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">147,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-selvvanding-drypvanding-273043310" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10144)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10149/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10149/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10149">
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-273043360" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10149.window="$el.src = $event.detail" alt="Garden vandingsur Automatisk havevanding" title="Garden vandingsur Automatisk havevanding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/c/dcdfc43d34e1d9fd6438084b843a6227fda17da5384b97607a98845587703870.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-273043360">
Garden vandingsur Automatisk havevanding </a>
<p class="text-xs"> 273043360 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Forbrug 1-120 minutter</li>
<li>Interval 1-72 timer</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec6d7de23d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec6d7de23d()" @update-prices-10149.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10149" data-price-box="product-id-10149"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10149" data-price-amount="211.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">211,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10149" data-price-amount="222.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">222,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-dorklokke-rogalarm-gasalarm-vandalarm-273043360" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10149)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25581/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25581/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25581">
<a href="https://www.vvs-eksperten.dk/garden-stang-pistol-75cm-273042198" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25581.window="$el.src = $event.detail" alt="Garden stangpistol til havevanding 75 cm" title="Garden stangpistol til havevanding 75 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/7/273042198_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/garden-stang-pistol-75cm-273042198">
Garden stangpistol til havevanding 75 cm </a>
<p class="text-xs"> 273042198 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>8 strålemuligheder</li>
<li>75 cm stang</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fda4c9e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fda4c9e()" @update-prices-25581.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25581" data-price-box="product-id-25581"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-25581" data-price-amount="149.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">149,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-25581" data-price-amount="158.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">158,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/garden-stang-pistol-75cm-273042198" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25581)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/121/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/121/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="121">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-flexslange-75-225-meter-273042165" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-121.window="$el.src = $event.detail" alt="Flexslange 7,5-22,5 Meter" title="Grouw flexslange med bruser-273042165" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/e/9e9d6e4684fe997ccaffc8030e66b1e40a319c01ad90204ac780ab7a9c3ee180.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-flexslange-75-225-meter-273042165">
Flexslange 7,5-22,5 Meter </a>
<p class="text-xs"> 273042165 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Incl. sprøjtepistol og hanekobling</p>
<p>Farven kan variere, afhængig af hvad der er disponibelt.</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fde38b6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fde38b6()" @update-prices-121.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="121" data-price-box="product-id-121"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-121" data-price-amount="99.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">99,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-121" data-price-amount="107.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">107,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-flexslange-75-225-meter-273042165" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(121)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9953/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/9953/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="9953">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-haveslange-25-meter-34-273042020" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-9953.window="$el.src = $event.detail" alt="Grouw 3/4 Haveslange 25 Meter" title="Grouw 3/4 haveslange 25 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/1/a1fca63c3bee147f995e734e839ef00f1396866eaf6b30fef79c3594cee29e28.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-haveslange-25-meter-34-273042020">
Grouw 3/4 Haveslange 25 Meter </a>
<p class="text-xs"> 273042020 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>3/4"</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ecd38de70a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ecd38de70a()" @update-prices-9953.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="9953" data-price-box="product-id-9953"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-9953" data-price-amount="251.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">251,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-9953" data-price-amount="264.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">264,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-havevanding-haveredskaber-haveslange-grouw-haveslange-25-meter-34-273042020" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(9953)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/330/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/330/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="330">
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-cee-materiel-cee-vaegudtag-kombi-5p-almindelig-230v-stikdase-80000014582" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-330.window="$el.src = $event.detail" alt="Cee Vægudtag Kombi 3p & 5p" title="Cee Vægudtag Kombi 3p & 5p" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/0/80000014582_2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installation-cee-materiel-cee-vaegudtag-kombi-5p-almindelig-230v-stikdase-80000014582">
Cee Vægudtag Kombi 3p & 5p </a>
<p class="text-xs"> 80000014582 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>16A / 400V</li>
<li>2 x M25 top/bund</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8012a226() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8012a226()" @update-prices-330.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="330" data-price-box="product-id-330"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-330" data-price-amount="96" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">96,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-330" data-price-amount="114.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">114,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installation-cee-materiel-cee-vaegudtag-kombi-5p-almindelig-230v-stikdase-80000014582" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(330)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/780/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/780/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="780">
<a href="https://www.vvs-eksperten.dk/hus-og-have-industri-og-askestovsugere-245010060" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-780.window="$el.src = $event.detail" alt="Industristøvsuger Våd-/tør støvsuger 50 Liter" title="Industristøvsuger Våd-/tør støvsuger 50 Liter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/d/6d3a89b54596ad2b74091752fa620bf53c5ab92fa46dc93686c9a30a3ae4dc97.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-industri-og-askestovsugere-245010060">
Industristøvsuger 50 liter </a>
<p class="text-xs"> 245010060 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Våd og tør</li>
<li>50 Liter</li>
<li>1400W</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8012f83a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8012f83a()" @update-prices-780.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="780" data-price-box="product-id-780"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-780" data-price-amount="857" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">857,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-780" data-price-amount="1009.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">1.009,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-industri-og-askestovsugere-245010060" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(780)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1312/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/1312/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 16% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="1312">
<a href="https://www.vvs-eksperten.dk/el-artikler-udendors-ip44-nordic-udendors-nordic-staenktaet-udtag-ip44-stikkontakt-med-jord-hvid-80001893211" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-1312.window="$el.src = $event.detail" alt="Nordic Stænktæt udtag IP44 Stikkontakt med jord, Hvid" title="Nordic udtag hvid ip44" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/3/43d8e74b1f7b165e257c17f0f450f3b1c0abf17cbb9af227793cfae695649014.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-udendors-ip44-nordic-udendors-nordic-staenktaet-udtag-ip44-stikkontakt-med-jord-hvid-80001893211">
Nordic Stænktæt udtag IP44 </a>
<p class="text-xs"> 80001893211 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Hvid</li>
<li>Udendørs IP44</li>
<li>Stikkontakt med dansk jord</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80134c3b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80134c3b()" @update-prices-1312.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="1312" data-price-box="product-id-1312"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-1312" data-price-amount="35" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">35,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-1312" data-price-amount="42.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">42,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-udendors-ip44-nordic-udendors-nordic-staenktaet-udtag-ip44-stikkontakt-med-jord-hvid-80001893211" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(1312)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2417/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2417/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2417">
<a href="https://www.vvs-eksperten.dk/el-artikler-el-tilbehor-stikprop-fatning-og-samlemuffer-forlaengerledning-forlaengerled-vaegmonteret-kabeltromle-25-meter-80000021535" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2417.window="$el.src = $event.detail" alt="Kabeltromle med vægophæng" title="Kabeltromle med vægophæng" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/c/7cefb73b053a4810ef57d1caf786a5a624b1a0ed91018a206ec3aa632f9a7fdb.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-el-tilbehor-stikprop-fatning-og-samlemuffer-forlaengerledning-forlaengerled-vaegmonteret-kabeltromle-25-meter-80000021535">
Kabeltromle med vægophæng </a>
<p class="text-xs"> 80000021535 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Automatisk oprulning</li>
<li>25 meter kabel</li>
<li>1 udtag </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80139ec9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80139ec9()" @update-prices-2417.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2417" data-price-box="product-id-2417"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2417" data-price-amount="469" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">469,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2417" data-price-amount="553.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">553,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-el-tilbehor-stikprop-fatning-og-samlemuffer-forlaengerledning-forlaengerled-vaegmonteret-kabeltromle-25-meter-80000021535" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2417)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2442/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2442/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 10% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2442">
<a href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-installationskabel-3g15-mm2-50-meter-89833586998" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2442.window="$el.src = $event.detail" alt="Installationskabel 3G1,5 mm² - 50 meter" title="Installationskabel 3G1,5 mm² - 50 meter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/e/1ed66f33953cd2c66f14e1cd0ea188601a63e7f0e7e5451fccc1c1badbf834d4.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-installationskabel-3g15-mm2-50-meter-89833586998">
Installationskabel 3G1,5 mm² </a>
<p class="text-xs"> 89833586998 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>50 meter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fd0c82a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fd0c82a()" @update-prices-2442.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2442" data-price-box="product-id-2442"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2442" data-price-amount="289" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">289,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2442" data-price-amount="324.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">324,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/el-artikler-installationskabler-netvaerkskabler-downlightledninger-installationskabel-jordkabel-armeret-kabel-pvl-installationskabel-3g15-mm2-50-meter-89833586998" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2442)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3288/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/3288/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="3288">
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-vandtaetning-tec7-wp7-201-spray-taetner-500ml-230004930" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-3288.window="$el.src = $event.detail" alt="Tec7 Spray Tætner 500 Ml" title="Tec7 sprey tætner WP7-201 500ml-230004930" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/9/294cfa01377be07091c429a9c87b434cee23e9cfad58a842b2c9112602747830.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-vandtaetning-tec7-wp7-201-spray-taetner-500ml-230004930">
Tec7 Spray Tætner 500 Ml </a>
<p class="text-xs"> 230004930 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Til inde/ude</li>
<li>Vand- og vindtæt </li>
<li>Beskyttelse mod rust</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8013fa3e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8013fa3e()" @update-prices-3288.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="3288" data-price-box="product-id-3288"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-3288" data-price-amount="178" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">178,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-3288" data-price-amount="210.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">210,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-tagrender-og-tag-vandtaetning-tec7-wp7-201-spray-taetner-500ml-230004930" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(3288)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6125/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6125/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6125">
<a href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-vand-sikring-vandalarm-incl-9v-batteri-340150325" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6125.window="$el.src = $event.detail" alt="Vandalarm Inkl. 9v Batteri" title="Vandalarm Inkl. 9v Batteri" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/e/2e228ac23d4e264faf6c2bf9c1282fb0c4d1cd0b3a1b63f2698189c6a2b24d8c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-vand-sikring-vandalarm-incl-9v-batteri-340150325">
Vandalarm Inkl. 9v Batteri </a>
<p class="text-xs"> 340150325 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Responstid >7 sek.</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc69720() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc69720()" @update-prices-6125.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6125" data-price-box="product-id-6125"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6125" data-price-amount="68" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">68,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-6125" data-price-amount="80.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">80,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-vandforsyning-vand-sikring-vandalarm-incl-9v-batteri-340150325" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6125)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13059/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13059/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #282828"> Ugens Skarpe - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13059">
<a href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-spw400-391210040" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13059.window="$el.src = $event.detail" alt="Pumpmax Dykpumpe Spw400" title="Pumpmax Dykpumpe Spw400" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/e/6ee776166c86647cbf2e39ce919fcbff208a261b649b5130a88b4a9bb76fdc2a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-spw400-391210040">
Pumpmax Dykpumpe Spw400 </a>
<p class="text-xs"> 391210040 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Niveauvippe</li>
<li>Partikler op til 30 mm</li>
<li>10 meter kabel</li>
<li>Løftehøjde 5 meter</li>
<li>125 L/min</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8001df7d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8001df7d()" @update-prices-13059.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13059" data-price-box="product-id-13059"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-13059" data-price-amount="254" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">254,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-13059" data-price-amount="299.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">299,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/aflob-kloak-dykpumper-pump-max-dykpumpe-spw400-391210040" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13059)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13076/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13076/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13076">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-kampagne-solfangersaet-solfangersaet-18-ror-og-200-liter-solvarmebeholder-9sol18-200" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13076.window="$el.src = $event.detail" alt="Solfangersæt 18 rør og solvarmebeholder 200 liter" title="9SOL18-200 solarterm solvarmesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/b/fb0adc3e83a1db9baeeda3eefba1cd77cf26ab1bd8418c7e735b4b9b95d3bb23.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-kampagne-solfangersaet-solfangersaet-18-ror-og-200-liter-solvarmebeholder-9sol18-200">
Solfangersæt 18 rør og solvarmebeholder 200 liter </a>
<p class="text-xs"> 9SOL18-200 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li><strong>Kampagnesæt</strong></li>
<li>Solarterm vvb 200 liter</li>
<li>18 rør Vakuum solfanger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8015adf2() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8015adf2()" @update-prices-13076.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13076" data-price-box="product-id-13076"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13076" data-price-amount="15835.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">15.835,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-kampagne-solfangersaet-solfangersaet-18-ror-og-200-liter-solvarmebeholder-9sol18-200" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13076)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25153/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25153/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25153">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-solfangersaet-30-ror-og-300-liter-solvarmebeholder-379997635" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25153.window="$el.src = $event.detail" alt="Solarterm Solfangersæt 300liter og 30 rør" title="9SOL18-200 solarterm solvarmesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/b/fb0adc3e83a1db9baeeda3eefba1cd77cf26ab1bd8418c7e735b4b9b95d3bb23.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-c0f2dd41-02ec-405c-9f54-68b58496f75b">
Solarterm Solfangersæt 300liter og 30 rør </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Taghældning eller til fladt tag</p>
<ul>
<li>Solarterm vvb 300 liter</li>
<li>30 rør Vakuum solfanger</li>
<li><strong>Inkl. fittingspakke</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_25153() {
const configurableOptionsComponent = initConfigurableOptions('25153', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "5639",
"label": "Med tagh\u00e6ldning",
"products": ["25151"]
}, {
"id": "6759",
"label": "Til fladt tag",
"products": ["25152"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"25151": {
"baseOldPrice": {
"amount": 22320
},
"oldPrice": {
"amount": 27900.000001
},
"basePrice": {
"amount": 22320
},
"finalPrice": {
"amount": 27900.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25152": {
"baseOldPrice": {
"amount": 23440
},
"oldPrice": {
"amount": 29300.000001
},
"basePrice": {
"amount": 23440
},
"finalPrice": {
"amount": 29300.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 22320
},
"oldPrice": {
"amount": 27900.000001
},
"basePrice": {
"amount": 22320
},
"finalPrice": {
"amount": 27900.000001
}
},
"productId": "25153",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"25151": {
"150": "5639"
},
"25152": {
"150": "6759"
}
},
"salable": {
"150": {
"5639": ["25151"],
"6759": ["25152"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"25151": "379997635",
"25152": "379997645"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-25153", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_25153()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec8015e757() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8015e757()" @update-prices-25153.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25153" data-price-box="product-id-25153"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-25153" data-price-amount="27900.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">27.900,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-c0f2dd41-02ec-405c-9f54-68b58496f75b" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25153)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25150/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25150/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25150">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-solfangersaet-30-ror-og-200-liter-solvarmebeholder-379997630" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25150.window="$el.src = $event.detail" alt="Solarterm Solfangersæt 200liter og 30 rør" title="9SOL18-200 solarterm solvarmesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/b/fb0adc3e83a1db9baeeda3eefba1cd77cf26ab1bd8418c7e735b4b9b95d3bb23.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-c78565e0-4767-4787-811f-ef2161e13118">
Solarterm Solfangersæt 200liter og 30 rør </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Taghældning eller til fladt tag</p>
<ul>
<li>Solarterm vvb 200 liter</li>
<li>30 rør Vakuum solfanger</li>
<li><strong>Inkl. fittingspakke</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_25150() {
const configurableOptionsComponent = initConfigurableOptions('25150', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "5639",
"label": "Med tagh\u00e6ldning",
"products": ["25148"]
}, {
"id": "6759",
"label": "Til fladt tag",
"products": ["25149"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"25148": {
"baseOldPrice": {
"amount": 19920
},
"oldPrice": {
"amount": 24900.000001
},
"basePrice": {
"amount": 19920
},
"finalPrice": {
"amount": 24900.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25149": {
"baseOldPrice": {
"amount": 22640
},
"oldPrice": {
"amount": 28300.000001
},
"basePrice": {
"amount": 22640
},
"finalPrice": {
"amount": 28300.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 19920
},
"oldPrice": {
"amount": 24900.000001
},
"basePrice": {
"amount": 19920
},
"finalPrice": {
"amount": 24900.000001
}
},
"productId": "25150",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"25148": {
"150": "5639"
},
"25149": {
"150": "6759"
}
},
"salable": {
"150": {
"5639": ["25148"],
"6759": ["25149"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"25148": "379997630",
"25149": "379997640"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-25150", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_25150()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec80167c4b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80167c4b()" @update-prices-25150.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25150" data-price-box="product-id-25150"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-25150" data-price-amount="24900.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">24.900,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-c78565e0-4767-4787-811f-ef2161e13118" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25150)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25147/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25147/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25147">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-solfangersaet-18-ror-og-300-liter-solvarmebeholder-379997535" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25147.window="$el.src = $event.detail" alt="Solarterm Solfangersæt 300liter og 18 rør" title="9SOL18-200 solarterm solvarmesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/b/fb0adc3e83a1db9baeeda3eefba1cd77cf26ab1bd8418c7e735b4b9b95d3bb23.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-2f92407a-f189-4f62-8ab4-597d59df81a6">
Solarterm Solfangersæt 300liter og 18 rør </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Taghældning eller til fladt tag</p>
<ul>
<li>Solarterm vvb 300 liter</li>
<li>18 rør Vakuum solfanger</li>
<li><strong>Inkl. fittingspakke</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_25147() {
const configurableOptionsComponent = initConfigurableOptions('25147', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "5639",
"label": "Med tagh\u00e6ldning",
"products": ["25145"]
}, {
"id": "6759",
"label": "Til fladt tag",
"products": ["25146"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"25145": {
"baseOldPrice": {
"amount": 18800
},
"oldPrice": {
"amount": 23500.000001
},
"basePrice": {
"amount": 18800
},
"finalPrice": {
"amount": 23500.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25146": {
"baseOldPrice": {
"amount": 19600
},
"oldPrice": {
"amount": 24500.000001
},
"basePrice": {
"amount": 19600
},
"finalPrice": {
"amount": 24500.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 18800
},
"oldPrice": {
"amount": 23500.000001
},
"basePrice": {
"amount": 18800
},
"finalPrice": {
"amount": 23500.000001
}
},
"productId": "25147",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"25145": {
"150": "5639"
},
"25146": {
"150": "6759"
}
},
"salable": {
"150": {
"5639": ["25145"],
"6759": ["25146"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"25145": "379997535",
"25146": "379997545"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-25147", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_25147()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec80170ef8() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80170ef8()" @update-prices-25147.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25147" data-price-box="product-id-25147"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-25147" data-price-amount="23500.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">23.500,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-2f92407a-f189-4f62-8ab4-597d59df81a6" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25147)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25144/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25144/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25144">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-solfangersaet-18-ror-og-200-liter-solvarmebeholder-379997530" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25144.window="$el.src = $event.detail" alt="Solarterm Solfangersæt 200liter og 18 rør" title="9SOL18-200 solarterm solvarmesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/b/fb0adc3e83a1db9baeeda3eefba1cd77cf26ab1bd8418c7e735b4b9b95d3bb23.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-5d10b0a4-49e3-4506-adb5-a346a053e341">
Solarterm Solfangersæt 200liter og 18 rør </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Taghældning eller til fladt tag</p>
<ul>
<li>Solarterm vvb 200 liter</li>
<li>18 rør Vakuum solfanger</li>
<li><strong>Inkl. fittingspakke</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_25144() {
const configurableOptionsComponent = initConfigurableOptions('25144', {
"attributes": {
"150": {
"id": "150",
"code": "model",
"label": "Model",
"options": [{
"id": "5639",
"label": "Med tagh\u00e6ldning",
"products": ["25142"]
}, {
"id": "6759",
"label": "Til fladt tag",
"products": ["25143"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"25142": {
"baseOldPrice": {
"amount": 17800
},
"oldPrice": {
"amount": 22250.000001
},
"basePrice": {
"amount": 17800
},
"finalPrice": {
"amount": 22250.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25143": {
"baseOldPrice": {
"amount": 18396
},
"oldPrice": {
"amount": 22995.000001
},
"basePrice": {
"amount": 18396
},
"finalPrice": {
"amount": 22995.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 17800
},
"oldPrice": {
"amount": 22250.000001
},
"basePrice": {
"amount": 17800
},
"finalPrice": {
"amount": 22250.000001
}
},
"productId": "25144",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"25142": {
"150": "5639"
},
"25143": {
"150": "6759"
}
},
"salable": {
"150": {
"5639": ["25142"],
"6759": ["25143"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"25142": "379997530",
"25143": "379997540"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-25144", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_25144()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec8017afb6() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8017afb6()" @update-prices-25144.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25144" data-price-box="product-id-25144"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-25144" data-price-amount="22250.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">22.250,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-5d10b0a4-49e3-4506-adb5-a346a053e341" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25144)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/24225/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/24225/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="24225">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-deluxe-solfangersaet-med-200-liter-solvarmebeholder-379996000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-24225.window="$el.src = $event.detail" alt="Deluxe Solfangersæt med Calderas Solfanger" title="Deluxe Solfangersæt med Calderas Solfanger" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/e/2/e2953a4b3c249f6ee41969815a4709975ae43899609de82a4f072ddbc3e95e97.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-3f6812a3-1a7d-4fc0-9147-b6aea596b36a">
Deluxe Solfangersæt med Calderas Solfanger </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem 200 og 300 liter</p>
<ul>
<li>Solarterm solvarmebeholder</li>
<li>2 x Calderas Solfanger</li>
<li><strong>Inkl. fittingspakke</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_24225() {
const configurableOptionsComponent = initConfigurableOptions('24225', {
"attributes": {
"163": {
"id": "163",
"code": "volume",
"label": "Volume",
"options": [{
"id": "10043",
"label": "200 L",
"products": ["24223"]
}, {
"id": "10078",
"label": "300 L",
"products": ["24224"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"24223": {
"baseOldPrice": {
"amount": 14636
},
"oldPrice": {
"amount": 18295.000001
},
"basePrice": {
"amount": 14636
},
"finalPrice": {
"amount": 18295.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"24224": {
"baseOldPrice": {
"amount": 15436
},
"oldPrice": {
"amount": 19295.000001
},
"basePrice": {
"amount": 15436
},
"finalPrice": {
"amount": 19295.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 14636
},
"oldPrice": {
"amount": 18295.000001
},
"basePrice": {
"amount": 14636
},
"finalPrice": {
"amount": 18295.000001
}
},
"productId": "24225",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"24223": {
"163": "10043"
},
"24224": {
"163": "10078"
}
},
"salable": {
"163": {
"10043": ["24223"],
"10078": ["24224"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"24223": "379996000",
"24224": "379996005"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-24225", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_24225()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec80184c2c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80184c2c()" @update-prices-24225.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="24225" data-price-box="product-id-24225"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-24225" data-price-amount="18295.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">18.295,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-3f6812a3-1a7d-4fc0-9147-b6aea596b36a" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(24225)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13296/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13296/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13296">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-solarterm-solfangersaet-500-liter-og-60-ror-379997690" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13296.window="$el.src = $event.detail" alt="Solarterm Solfangersæt 500Liter og 60 rør" title="9SOL36-200 solarterm solfangersæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/7/379997690_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-solarterm-solfangersaet-500-liter-og-60-ror-379997690">
Solarterm Solfangersæt 500Liter og 60 rør </a>
<p class="text-xs"> 379997690 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Solarterm 500 liter </li>
<li>60 rør Vakuum solfanger</li>
<li><strong>Inkl. fittingspakke</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8018f15c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8018f15c()" @update-prices-13296.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13296" data-price-box="product-id-13296"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13296" data-price-amount="37900.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">37.900,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-solenergi-solfangersaet-solarterm-solfangersaet-500-liter-og-60-ror-379997690" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13296)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60095/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60095/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 73% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60095">
<a href="https://www.vvs-eksperten.dk/badevaerelse-dansani-baderumsmobler-9dansani40" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60095.window="$el.src = $event.detail" alt="Menuet møbelsæt inkl. spejlskab med integreret LED-lys i top - 51 cm" title="Menuet møbelsæt inkl. spejlskab med integreret LED-lys i top - 51 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9dansani40_sps-103.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-dansani-baderumsmobler-9dansani40">
Menuet møbelsæt inkl. spejl m/integreret lys - 51 cm </a>
<p class="text-xs"> 9DANSANI40 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Mini Menuet porcelænsvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejlskab 700x500 mm</li>
<li>Integreret LED-lys i top</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80199e76() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80199e76()" @update-prices-60095.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60095" data-price-box="product-id-60095"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60095" data-price-amount="4995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60095" data-price-amount="18995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">18.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-dansani-baderumsmobler-9dansani40" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60095)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60097/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60097/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 74% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60097">
<a href="https://www.vvs-eksperten.dk/mikado-vask-skab-2-skuffer-spejl-lys-i-top-9dansani42" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60097.window="$el.src = $event.detail" alt="Mikado møbelsæt inkl. spejl med integreret LED-lys - 100 cm" title="Mikado møbelsæt inkl. spejl med integreret LED-lys - 100 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-107.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/mikado-vask-skab-2-skuffer-spejl-lys-i-top-9dansani42">
Mikado møbelsæt inkl. spejl m/integreret lys - 100 cm </a>
<p class="text-xs"> 9DANSANI42 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Mikado marmorvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejl 700x1000 mm</li>
<li>Integreret LED-lys</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8019eff4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8019eff4()" @update-prices-60097.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60097" data-price-box="product-id-60097"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60097" data-price-amount="5495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">5.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60097" data-price-amount="21445.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">21.445,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/mikado-vask-skab-2-skuffer-spejl-lys-i-top-9dansani42" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60097)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60098/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60098/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 69% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60098">
<a href="https://www.vvs-eksperten.dk/viskan-vask-skab-i-hvid-mat-m-2-skuffer-og-spejl-9dansani43" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60098.window="$el.src = $event.detail" alt="Viskan møbelsæt inkl. spejl - 60 cm" title="Viskan møbelsæt inkl. spejl - 60 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps109.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/viskan-vask-skab-i-hvid-mat-m-2-skuffer-og-spejl-9dansani43">
Viskan møbelsæt inkl. spejl - 60 cm </a>
<p class="text-xs"> 9DANSANI43 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Viskan porcelænsvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejl 637x597 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801a4509() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801a4509()" @update-prices-60098.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60098" data-price-box="product-id-60098"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60098" data-price-amount="3995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60098" data-price-amount="12995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">12.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/viskan-vask-skab-i-hvid-mat-m-2-skuffer-og-spejl-9dansani43" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60098)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60099/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60099/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60099">
<a href="https://www.vvs-eksperten.dk/mikro-menuet-vask-skab-1-lage-spejl-lys-i-top-9dansani44" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60099.window="$el.src = $event.detail" alt="Mikro Menuet møbelsæt inkl. spejl med integreret LED-lys - 41 cm" title="Mikro Menuet møbelsæt inkl. spejl med integreret LED-lys - 41 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-111.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/mikro-menuet-vask-skab-1-lage-spejl-lys-i-top-9dansani44">
Mikro Menuet møbelsæt inkl. spejl m/integreret lys - 41 cm </a>
<p class="text-xs"> 9DANSANI44 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Menuet porcelænsvask</li>
<li>Vaskeskab med 1 låge</li>
<li>Spejl 700x400 mm</li>
<li>Integreret LED-lys</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801a93df() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801a93df()" @update-prices-60099.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60099" data-price-box="product-id-60099"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60099" data-price-amount="2695" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.695,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60099" data-price-amount="9450.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">9.450,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/mikro-menuet-vask-skab-1-lage-spejl-lys-i-top-9dansani44" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60099)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60100/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60100/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60100">
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani45" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60100.window="$el.src = $event.detail" alt="Cappella møbelsæt 52 cm SPS-112" title="Cappella møbelsæt 52 cm SPS-112" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-112.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani45">
Cappella møbelsæt 52 cm </a>
<p class="text-xs"> 9DANSANI45 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Cappella porcelænvask</li>
<li>Vaskeskab med skuffe</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801ae570() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801ae570()" @update-prices-60100.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60100" data-price-box="product-id-60100"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60100" data-price-amount="1995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60100" data-price-amount="6995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">6.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani45" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60100)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60101/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60101/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60101">
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani46" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60101.window="$el.src = $event.detail" alt="Cappella møbelsæt 62 cm SPS-113" title="Cappella møbelsæt 62 cm SPS-113" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-113.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani46">
Cappella møbelsæt 62 cm </a>
<p class="text-xs"> 9DANSANI46 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Cappella porcelænvask</li>
<li>Vaskeskab med skuffe</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801b33a3() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801b33a3()" @update-prices-60101.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60101" data-price-box="product-id-60101"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60101" data-price-amount="2195" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.195,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60101" data-price-amount="7750.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">7.750,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani46" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60101)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60102/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60102/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60102">
<a href="https://www.vvs-eksperten.dk/amber-vask-skab-hvid-mat-m-1-lage-spejl-m-lys-9dansani47" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60102.window="$el.src = $event.detail" alt="Amber møbelsæt inkl. spejl med integreret LED-lys i top - 51 cm" title="Amber møbelsæt inkl. spejl med integreret LED-lys i top - 51 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-114.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/amber-vask-skab-hvid-mat-m-1-lage-spejl-m-lys-9dansani47">
Amber møbelsæt inkl. spejl m/integreret lys - 51 cm </a>
<p class="text-xs"> 9DANSANI47 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Amber mini porcelænsvask</li>
<li>Vaskeskab med låge</li>
<li>Spejl 700x500 mm</li>
<li>Integreret LED-lys i top</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801b8225() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801b8225()" @update-prices-60102.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60102" data-price-box="product-id-60102"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60102" data-price-amount="2495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60102" data-price-amount="8750.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">8.750,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/amber-vask-skab-hvid-mat-m-1-lage-spejl-m-lys-9dansani47" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60102)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60103/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60103/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 72% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60103">
<a href="https://www.vvs-eksperten.dk/cappella-vask-skab-m-2-skuffer-spejlskab-1-lage-9dansani48" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60103.window="$el.src = $event.detail" alt="Cappella møbelsæt inkl. spejl med integreret LED-lys i top - 52 cm" title="Cappella møbelsæt inkl. spejl med integreret LED-lys i top - 52 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-115.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/cappella-vask-skab-m-2-skuffer-spejlskab-1-lage-9dansani48">
Cappella møbelsæt inkl. spejl m/integreret lys - 52 cm </a>
<p class="text-xs"> 9DANSANI48 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Cappella porcelænsvask</li>
<li>Vaskeskab med skuffer</li>
<li>Spejl 700x500 mm</li>
<li>Integreret LED-lys</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801bd5b9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801bd5b9()" @update-prices-60103.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60103" data-price-box="product-id-60103"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60103" data-price-amount="4995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60103" data-price-amount="17995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">17.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/cappella-vask-skab-m-2-skuffer-spejlskab-1-lage-9dansani48" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60103)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56104/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56104/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 68% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="56104">
<a href="https://www.vvs-eksperten.dk/9dansani28" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-56104.window="$el.src = $event.detail" alt="Largo møbelsæt inkl. spejl med lodret integreret lys - 120 cm" title="Largo møbelsæt inkl. spejl med lodret integreret lys - 120 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9dansani28_sps-998_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/9dansani28">
Largo møbelsæt inkl. spejl m/integreret lys - 120 cm </a>
<p class="text-xs"> 9DANSANI28 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Largo glasvask</li>
<li>Vaskeskab med 1 skuffe</li>
<li>Spejl 700x1200 mm</li>
<li>Lodret integreret LED-lys</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801c26f9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801c26f9()" @update-prices-56104.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="56104" data-price-box="product-id-56104"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-56104" data-price-amount="4295" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.295,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-56104" data-price-amount="13550.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">13.550,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/9dansani28" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(56104)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56105/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56105/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 76% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="56105">
<a href="https://www.vvs-eksperten.dk/9dansani29" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-56105.window="$el.src = $event.detail" alt="Canto møbelsæt inkl. spejl med integreret LED-lys i top - 120 cm" title="Canto møbelsæt inkl. spejl med integreret LED-lys i top - 120 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9dansani29_sps-102_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/9dansani29">
Canto møbelsæt inkl. spejl m/integreret LED-lys - 120 cm </a>
<p class="text-xs"> 9DANSANI29 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Canto porcelænsvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejl 700x1200 mm</li>
<li>Integreret LED-lys i top</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801c79a2() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801c79a2()" @update-prices-56105.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="56105" data-price-box="product-id-56105"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-56105" data-price-amount="4495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-56105" data-price-amount="19435.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">19.435,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/9dansani29" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(56105)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13350/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13350/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #fcd116; color: #005a9c"> Weekend Basker - spar 15% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13350">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13350.window="$el.src = $event.detail" alt="Copmax Lomo varmepumpe luft/luft 3,5 kW" title="Copmax Lomo varmepumpe luft/luft 3,5 kW" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/2/a2fa1fb182c6f39690e5161319db17f3aabb9e66bf1944e55992dd579c5b5620.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10">
Copmax Lomo varmepumpe luft/luft 3,5 kW </a>
<p class="text-xs"> 346760A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>SCOP 4,10</li>
<li>R32 Kølemiddel</li>
<li>Inkl. fjernbetjening</li>
<li>Indbygget WiFi</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb5f608() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb5f608()" @update-prices-13350.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13350" data-price-box="product-id-13350"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-13350" data-price-amount="3795" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.795,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-13350" data-price-amount="4495.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">4.495,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/4/346760A10_Energimærke.png'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//T/e/TekniskDatabladLOMOLuftvarmepumper_2022_0.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-luft-luft-346760a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13350)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13374/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13374/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13374">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pillefyr-stoker-pillefyr-stoker-traepillefyr-biomax-green-power-1202gp-komplet-pillefyr-med-magasin-303004312" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13374.window="$el.src = $event.detail" alt="BioMax Green Power 1202GP komplet pillefyr med magasin og snegl" title="BioMax Green Power 1202GP komplet pillefyr med magasin og snegl" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/f/bf465edcfd9d356bb3b24a072b3f382db671d08ab5c0a335d7a7af37d8733d1a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pillefyr-stoker-pillefyr-stoker-traepillefyr-biomax-green-power-1202gp-komplet-pillefyr-med-magasin-303004312">
BioMax Green Power 1202GP Komplet pillefyr </a>
<p class="text-xs"> 303004312 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Dansk udviklet</li>
<li>Virkningsgrad på 95,5%</li>
<li>Effekt 3,4 - 12,8 kW</li>
<li>Automatisk askeudtræk</li>
<li>Kan styres via smartphone (wifi modul tilkøbes)</li>
<li><strong>Magasin til 160 Kg træpiller</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801e2cfa() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801e2cfa()" @update-prices-13374.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13374" data-price-box="product-id-13374"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13374" data-price-amount="26995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">26.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/E/n/Energilabel1200GP_303004012_1.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//D/a/Datablad_Biomax_3.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pillefyr-stoker-pillefyr-stoker-traepillefyr-biomax-green-power-1202gp-komplet-pillefyr-med-magasin-303004312" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13374)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12162/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12162/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12162">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-varmefordelingsplader-16-mm-varmefordelingsplade-m20-mm-isolering-4-spor-alu-xps-339410a10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12162.window="$el.src = $event.detail" alt="Alu-XPS Varmefordelingsplade 4 spor til 16 mm pex/alu-pex 20 mm isolering" title="Alu-XPS Varmefordelingsplade 4 spor til 16 mm pex/alu-pex 20 mm isolering" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/4/74ff701405c51a83fc3be1ca4e97eb55f730be27bb9ac13c3740f127f8cf7be2.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-varmefordelingsplader-16-mm-varmefordelingsplade-m20-mm-isolering-4-spor-alu-xps-339410a10">
Alu-XPS Varmefordelingsplade 4 spor til 16 mm pex/alu-pex 20 mm isolering </a>
<p class="text-xs"> 339410A10 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li><strong>Højde kun 20 mm</strong></li>
<li>Integreret vendespor</li>
<li>Isoleret gulvvarmeplade</li>
<li>Til pex m/indvendig iltbarriere</li>
<li>1 stk. 0,72m²</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801e790b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801e790b()" @update-prices-12162.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12162" data-price-box="product-id-12162"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-12162" data-price-amount="159.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">159,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-12162" data-price-amount="168.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">168,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-varmefordelingsplader-16-mm-varmefordelingsplade-m20-mm-isolering-4-spor-alu-xps-339410a10" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12162)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/20904/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/20904/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="20904">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-gulvvarmeslange-dvi-superflexible-gulvvarme-pex-mindvendig-iltbarriere-o16-mm-120-meter-087218416" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-20904.window="$el.src = $event.detail" alt="DVI gulvvarmeslange ø16mm m/indvendig iltbarriere 6 bar" title="DVI gulvvarmeslange ø16mm m/indvendig iltbarriere 6 bar" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/9/59c8b1b6d086846fab6caa5003aec9391c7c71c705899e427aa8cf8ae8701dbd.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/ror-og-fittings-pex-ror-gulvvarme-pex-fc728c64-dc02-419c-9b26-a44c030069c0">
DVI gulvvarmeslange ø16mm m/indvendig iltbarriere 6 bar </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Indvendig iltbarriere<br> Til varmefordelingsplader<br> Max 95° / 6 bar. Vælg mellem</p>
<ul>
<li>120 meter</li>
<li>240 meter</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_20904() {
const configurableOptionsComponent = initConfigurableOptions('20904', {
"attributes": {
"146": {
"id": "146",
"code": "length",
"label": "L\u00e6ngde",
"options": [{
"id": "3283",
"label": "120 m",
"products": ["20902"]
}, {
"id": "3387",
"label": "240 m",
"products": ["20903"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"20902": {
"baseOldPrice": {
"amount": 700.8
},
"oldPrice": {
"amount": 876.000001
},
"basePrice": {
"amount": 672
},
"finalPrice": {
"amount": 840.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"20903": {
"baseOldPrice": {
"amount": 1400.8
},
"oldPrice": {
"amount": 1751.000001
},
"basePrice": {
"amount": 1344
},
"finalPrice": {
"amount": 1680.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 700.8
},
"oldPrice": {
"amount": 876.000001
},
"basePrice": {
"amount": 672
},
"finalPrice": {
"amount": 840.000001
}
},
"productId": "20904",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"20902": {
"146": "3283"
},
"20903": {
"146": "3387"
}
},
"salable": {
"146": {
"3283": ["20902"],
"3387": ["20903"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"20902": "087218416",
"20903": "087218426"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-20904", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_20904()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec801eab30() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801eab30()" @update-prices-20904.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="20904" data-price-box="product-id-20904"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-20904" data-price-amount="840.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">840,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/ror-og-fittings-pex-ror-gulvvarme-pex-fc728c64-dc02-419c-9b26-a44c030069c0" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(20904)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25550/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25550/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25550">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-gulvvarmesaet-saswell-gulvvarme-system-2-kreds-max-2bar-046550a02" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25550.window="$el.src = $event.detail" alt="SASWELL gulvvarmesæt til centralvarme" title="SASWELL gulvvarmesæt til centralvarme" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/1/111fb5501fb4137900316a489d6c4aa0d4ca00f28d3a54c196cac3d07d8291e0.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-gulvvarmesaet-00cc6fd6-97ed-4b8c-a6aa-f3338c1101ae">
SASWELL gulvvarmesæt til centralvarme </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Saswell Trådløs styring</li>
<li>Fra 2-16 kredse</li>
<li>Til centralvarme (2bar)</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_25550() {
const configurableOptionsComponent = initConfigurableOptions('25550', {
"attributes": {
"174": {
"id": "174",
"code": "circuit_count",
"label": "Kreds",
"options": [{
"id": "11064",
"label": "10 Kreds",
"products": ["25543"]
}, {
"id": "11066",
"label": "11 Kreds",
"products": ["25544"]
}, {
"id": "11069",
"label": "12 Kreds",
"products": ["25545"]
}, {
"id": "11070",
"label": "13 Kreds",
"products": ["25546"]
}, {
"id": "11071",
"label": "14 Kreds",
"products": ["25547"]
}, {
"id": "11072",
"label": "15 Kreds",
"products": ["25548"]
}, {
"id": "11074",
"label": "16 Kreds",
"products": ["25549"]
}, {
"id": "11076",
"label": "2 Kreds",
"products": ["25535"]
}, {
"id": "11080",
"label": "3 Kreds",
"products": ["25536"]
}, {
"id": "11083",
"label": "4 Kreds",
"products": ["25537"]
}, {
"id": "11085",
"label": "5 Kreds",
"products": ["25538"]
}, {
"id": "11087",
"label": "6 Kreds",
"products": ["25539"]
}, {
"id": "11089",
"label": "7 Kreds",
"products": ["25540"]
}, {
"id": "11092",
"label": "8 Kreds",
"products": ["25541"]
}, {
"id": "11094",
"label": "9 Kreds",
"products": ["25542"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"25543": {
"baseOldPrice": {
"amount": 8796
},
"oldPrice": {
"amount": 10995.000001
},
"basePrice": {
"amount": 8796
},
"finalPrice": {
"amount": 10995.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25544": {
"baseOldPrice": {
"amount": 9436
},
"oldPrice": {
"amount": 11795.000001
},
"basePrice": {
"amount": 9436
},
"finalPrice": {
"amount": 11795.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25545": {
"baseOldPrice": {
"amount": 9991.2
},
"oldPrice": {
"amount": 12489.000001
},
"basePrice": {
"amount": 9991.2
},
"finalPrice": {
"amount": 12489.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25546": {
"baseOldPrice": {
"amount": 10396
},
"oldPrice": {
"amount": 12995.000001
},
"basePrice": {
"amount": 10396
},
"finalPrice": {
"amount": 12995.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25547": {
"baseOldPrice": {
"amount": 11036
},
"oldPrice": {
"amount": 13795.000001
},
"basePrice": {
"amount": 11036
},
"finalPrice": {
"amount": 13795.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25548": {
"baseOldPrice": {
"amount": 11436
},
"oldPrice": {
"amount": 14295.000001
},
"basePrice": {
"amount": 11436
},
"finalPrice": {
"amount": 14295.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25549": {
"baseOldPrice": {
"amount": 11996
},
"oldPrice": {
"amount": 14995.000001
},
"basePrice": {
"amount": 11996
},
"finalPrice": {
"amount": 14995.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25535": {
"baseOldPrice": {
"amount": 3756
},
"oldPrice": {
"amount": 4695.000001
},
"basePrice": {
"amount": 3643.2
},
"finalPrice": {
"amount": 4554.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25536": {
"baseOldPrice": {
"amount": 4308
},
"oldPrice": {
"amount": 5385.000001
},
"basePrice": {
"amount": 4178.4
},
"finalPrice": {
"amount": 5223.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25537": {
"baseOldPrice": {
"amount": 4796
},
"oldPrice": {
"amount": 5995.000001
},
"basePrice": {
"amount": 4652
},
"finalPrice": {
"amount": 5815.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25538": {
"baseOldPrice": {
"amount": 5420
},
"oldPrice": {
"amount": 6775.000001
},
"basePrice": {
"amount": 5256.8
},
"finalPrice": {
"amount": 6571.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25539": {
"baseOldPrice": {
"amount": 5974.4
},
"oldPrice": {
"amount": 7468.000001
},
"basePrice": {
"amount": 5794.4
},
"finalPrice": {
"amount": 7243.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25540": {
"baseOldPrice": {
"amount": 6399.2
},
"oldPrice": {
"amount": 7999.000001
},
"basePrice": {
"amount": 6207.2
},
"finalPrice": {
"amount": 7759.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25541": {
"baseOldPrice": {
"amount": 7028
},
"oldPrice": {
"amount": 8785.000001
},
"basePrice": {
"amount": 7028
},
"finalPrice": {
"amount": 8785.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"25542": {
"baseOldPrice": {
"amount": 8236
},
"oldPrice": {
"amount": 10295.000001
},
"basePrice": {
"amount": 8236
},
"finalPrice": {
"amount": 10295.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 3756
},
"oldPrice": {
"amount": 4695.000001
},
"basePrice": {
"amount": 3643.2
},
"finalPrice": {
"amount": 4554.000001
}
},
"productId": "25550",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"25543": {
"174": "11064"
},
"25544": {
"174": "11066"
},
"25545": {
"174": "11069"
},
"25546": {
"174": "11070"
},
"25547": {
"174": "11071"
},
"25548": {
"174": "11072"
},
"25549": {
"174": "11074"
},
"25535": {
"174": "11076"
},
"25536": {
"174": "11080"
},
"25537": {
"174": "11083"
},
"25538": {
"174": "11085"
},
"25539": {
"174": "11087"
},
"25540": {
"174": "11089"
},
"25541": {
"174": "11092"
},
"25542": {
"174": "11094"
}
},
"salable": {
"174": {
"11064": ["25543"],
"11066": ["25544"],
"11069": ["25545"],
"11070": ["25546"],
"11071": ["25547"],
"11072": ["25548"],
"11074": ["25549"],
"11076": ["25535"],
"11080": ["25536"],
"11083": ["25537"],
"11085": ["25538"],
"11087": ["25539"],
"11089": ["25540"],
"11092": ["25541"],
"11094": ["25542"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"25543": "046550A10",
"25544": "046550A11",
"25545": "046550A12",
"25546": "046550A13",
"25547": "046550A14",
"25548": "046550A15",
"25549": "046550A16",
"25535": "046550A02",
"25536": "046550A03",
"25537": "046550A04",
"25538": "046550A05",
"25539": "046550A06",
"25540": "046550A07",
"25541": "046550A08",
"25542": "046550A09"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-25550", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_25550()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec801f3181() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801f3181()" @update-prices-25550.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25550" data-price-box="product-id-25550"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-25550" data-price-amount="4554.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.554,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-gulvvarme-gulvvarmesaet-00cc6fd6-97ed-4b8c-a6aa-f3338c1101ae" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25550)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12548/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12548/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12548">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-luisa-hydro-pilleovn-til-centralvarme-12-kw-305500300" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12548.window="$el.src = $event.detail" alt="Luisa hydro pilleovn til centralvarme 12 kW" title="Luisa hydro pilleovn 3,4 - 12,6 kw" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/4/f/4f00269f6655bbef53077132ad47615775c0c4a5f1ff5f4166e8fd311317e75c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-luisa-hydro-pilleovn-til-centralvarme-12-kw-305500300">
Luisa hydro pilleovn til centralvarme 12 kW </a>
<p class="text-xs"> 305500300 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Effekt 3,4-12,6 kW</li>
<li>Vandret aftræk</li>
<li>20 kg Pillemagasin</li>
<li><strong>Til centralvarmeanlæg</strong></li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80213142() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80213142()" @update-prices-12548.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12548" data-price-box="product-id-12548"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-12548" data-price-amount="19995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">19.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/0/305500300_Energilabel.png'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/305500300_Prøvningsattest.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-pilleovn-pillebraendeovn-luisa-hydro-pilleovn-til-centralvarme-12-kw-305500300" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12548)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12049/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12049/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12049">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-fastbraendsel-orlan-gasogen-fastbraendselskedel-orlan-gasogen-fastbraendselskedel-super-25-kw-304006025" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12049.window="$el.src = $event.detail" alt="Orlán Gasogen Kedel Super 25kw" title="Orlan gasogen fastbrændselskedel super 25kw" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/c/ac6b93173167c005a79f3305be2252d0afd1e8368d78e6d4ccd088335abfff23.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-fastbraendsel-orlan-gasogen-fastbraendselskedel-orlan-gasogen-fastbraendselskedel-super-25-kw-304006025">
Orlán Gasogen Kedel Super 25kw </a>
<p class="text-xs"> 304006025 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Op til 50 cm brændestykker</li>
<li>Røgafgang ø 200mm</li>
<li>Tilslutning 2"</li>
<li>EN 303-5 klasse 5</li>
<li>Til ca. 140 m² hus</li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80218efc() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80218efc()" @update-prices-12049.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12049" data-price-box="product-id-12049"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-12049" data-price-amount="23995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">23.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/0/304006025_Energimærke_25kw.png'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/304006018_Datablad.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-fastbraendsel-orlan-gasogen-fastbraendselskedel-orlan-gasogen-fastbraendselskedel-super-25-kw-304006025" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12049)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59769/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59769/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59769">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-saet-copmax-h-p-4kw-varmepumpesaet-346150c25" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59769.window="$el.src = $event.detail" alt="CopMax High Power varmepumpesæt m/Multitank 180/100 L" title="CopMax High Power varmepumpesæt m/Multitank 180/100 L" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/4/346150c25_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/copmax-high-power-varmepumpesaet-m-multitank-180-100-l-346150c55-346150c25-346150c40">
CopMax High Power varmepumpesæt m/Multitank 180/100 L </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p><strong>Komplet varmepumpesæt</strong><br>Vælg mellem flere størrelser<br>med multitank 180/100L</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_59769() {
const configurableOptionsComponent = initConfigurableOptions('59769', {
"attributes": {
"167": {
"id": "167",
"code": "effect",
"label": "Effekt",
"options": [{
"id": "10227",
"label": "10 kW",
"products": ["59846"]
}, {
"id": "10283",
"label": "14 kW",
"products": ["26130"]
}, {
"id": "10484",
"label": "4 kW",
"products": ["26121"]
}, {
"id": "10559",
"label": "6 kW",
"products": ["60137"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"26121": {
"baseOldPrice": {
"amount": 31196
},
"oldPrice": {
"amount": 38995.000001
},
"basePrice": {
"amount": 31196
},
"finalPrice": {
"amount": 38995.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"26130": {
"baseOldPrice": {
"amount": 45700
},
"oldPrice": {
"amount": 57125.000001
},
"basePrice": {
"amount": 45700
},
"finalPrice": {
"amount": 57125.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"59846": {
"baseOldPrice": {
"amount": 36900
},
"oldPrice": {
"amount": 46125.000001
},
"basePrice": {
"amount": 36900
},
"finalPrice": {
"amount": 46125.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"60137": {
"baseOldPrice": {
"amount": 33700
},
"oldPrice": {
"amount": 42125.000001
},
"basePrice": {
"amount": 33700
},
"finalPrice": {
"amount": 42125.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 31196
},
"oldPrice": {
"amount": 38995.000001
},
"basePrice": {
"amount": 31196
},
"finalPrice": {
"amount": 38995.000001
}
},
"productId": "59769",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"26121": {
"167": "10484"
},
"26130": {
"167": "10283"
},
"59846": {
"167": "10227"
},
"60137": {
"167": "10559"
}
},
"salable": {
"167": {
"10484": ["26121"],
"10283": ["26130"],
"10227": ["59846"],
"10559": ["60137"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"26121": "346150C25",
"26130": "346150C70",
"59846": "346150D55",
"60137": "346150D40"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-59769", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_59769()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec8021d082() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8021d082()" @update-prices-59769.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59769" data-price-box="product-id-59769"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-59769" data-price-amount="38995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">38.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/4/346150a04_energim_rke.jpg'})">
<span>A</span><span class="text-sm">+++</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/4/346150a04_teknisk_datablad_copmax_high_power.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/copmax-high-power-varmepumpesaet-m-multitank-180-100-l-346150c55-346150c25-346150c40" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59769)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59774/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59774/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59774">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-saet-copmax-rs07v-l-v-varmepumpesaet-346149c10" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59774.window="$el.src = $event.detail" alt="CopMax RS m/Akku tank 140Liter Varmepumpesæt" title="CopMax RS m/Akku tank 140Liter Varmepumpesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/4/346149c10_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/copmax-rs-m-akku-tank-140liter-varmepumpesaet-346149c10-346149c25-346149c40">
CopMax RS varmepumpesæt m/Akku tank 140Liter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p><strong>Komplet varmepumpesæt</strong><br>Vælg mellem flere størrelser<br>med 140 liter akku tank</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_59774() {
const configurableOptionsComponent = initConfigurableOptions('59774', {
"attributes": {
"167": {
"id": "167",
"code": "effect",
"label": "Effekt",
"options": [{
"id": "10227",
"label": "10 kW",
"products": ["26133"]
}, {
"id": "10298",
"label": "15 kW",
"products": ["26137"]
}, {
"id": "10582",
"label": "7 kW",
"products": ["26128"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"26128": {
"baseOldPrice": {
"amount": 29596
},
"oldPrice": {
"amount": 36995.000001
},
"basePrice": {
"amount": 29596
},
"finalPrice": {
"amount": 36995.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"26133": {
"baseOldPrice": {
"amount": 30996
},
"oldPrice": {
"amount": 38745.000001
},
"basePrice": {
"amount": 30996
},
"finalPrice": {
"amount": 38745.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"26137": {
"baseOldPrice": {
"amount": 34956
},
"oldPrice": {
"amount": 43695.000001
},
"basePrice": {
"amount": 34956
},
"finalPrice": {
"amount": 43695.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 29596
},
"oldPrice": {
"amount": 36995.000001
},
"basePrice": {
"amount": 29596
},
"finalPrice": {
"amount": 36995.000001
}
},
"productId": "59774",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"26128": {
"167": "10582"
},
"26133": {
"167": "10227"
},
"26137": {
"167": "10298"
}
},
"salable": {
"167": {
"10582": ["26128"],
"10227": ["26133"],
"10298": ["26137"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"26128": "346149C10",
"26133": "346149C25",
"26137": "346149C40"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-59774", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_59774()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec802294a8() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802294a8()" @update-prices-59774.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59774" data-price-box="product-id-59774"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-59774" data-price-amount="36995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">36.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/r/s/rs07vl_energy_lable_202404.png'})">
<span>A</span><span class="text-sm">+++</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//r/s/rs07vl_produktblad_updated_202404.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/copmax-rs-m-akku-tank-140liter-varmepumpesaet-346149c10-346149c25-346149c40" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59774)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59766/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/59766/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="59766">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-varmepumpe-saet-varme-og-klima-varmepumpe-varmepumpe-saet-panasonic-5-kw-mmultitank-20037-l-varmepumpesaet-346771510" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-59766.window="$el.src = $event.detail" alt="Panasonic m/Multitank 200/37 L Varmepumpesæt" title="Panasonic m/Multitank 200/37 L Varmepumpesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/4/346775a10_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/panasonic-m-multitank-200-37-l-varmepumpesaet-346771510-346771530-346775a00">
Panasonic varmepumpesæt m/Multitank 200/37 liter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p><strong>Komplet varmepumpesæt</strong><br>Vælg mellem flere størrelser<br>med multitank 200/37L og 80L vvb</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_59766() {
const configurableOptionsComponent = initConfigurableOptions('59766', {
"attributes": {
"167": {
"id": "167",
"code": "effect",
"label": "Effekt",
"options": [{
"id": "10252",
"label": "12 kW",
"products": ["13389"]
}, {
"id": "10309",
"label": "16 kW",
"products": ["13390"]
}, {
"id": "10521",
"label": "5 kW",
"products": ["13285"]
}, {
"id": "10582",
"label": "7 kW",
"products": ["13287"]
}, {
"id": "10624",
"label": "9 kW",
"products": ["13388"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"13390": {
"baseOldPrice": {
"amount": 71996
},
"oldPrice": {
"amount": 89995.000001
},
"basePrice": {
"amount": 71996
},
"finalPrice": {
"amount": 89995.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13285": {
"baseOldPrice": {
"amount": 44420
},
"oldPrice": {
"amount": 55525.000001
},
"basePrice": {
"amount": 44420
},
"finalPrice": {
"amount": 55525.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13287": {
"baseOldPrice": {
"amount": 46720
},
"oldPrice": {
"amount": 58400.000001
},
"basePrice": {
"amount": 46720
},
"finalPrice": {
"amount": 58400.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13388": {
"baseOldPrice": {
"amount": 60800
},
"oldPrice": {
"amount": 76000.000001
},
"basePrice": {
"amount": 60800
},
"finalPrice": {
"amount": 76000.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"13389": {
"baseOldPrice": {
"amount": 67200
},
"oldPrice": {
"amount": 84000.000001
},
"basePrice": {
"amount": 67200
},
"finalPrice": {
"amount": 84000.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 44420
},
"oldPrice": {
"amount": 55525.000001
},
"basePrice": {
"amount": 44420
},
"finalPrice": {
"amount": 55525.000001
}
},
"productId": "59766",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"13390": {
"167": "10309"
},
"13285": {
"167": "10521"
},
"13287": {
"167": "10582"
},
"13388": {
"167": "10624"
},
"13389": {
"167": "10252"
}
},
"salable": {
"167": {
"10309": ["13390"],
"10521": ["13285"],
"10582": ["13287"],
"10624": ["13388"],
"10252": ["13389"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"13390": "346775A10",
"13285": "346771510",
"13287": "346771530",
"13388": "346775A00",
"13389": "346775A05"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-59766", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_59766()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec802343ff() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802343ff()" @update-prices-59766.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="59766" data-price-box="product-id-59766"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-59766" data-price-amount="55525.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">55.525,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/4/346771355_Energilabel_0.jpg'})">
<span>A</span><span class="text-sm">++</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/4/346771355_DatabladPanasonicAquareaMonoblokJ_0.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/panasonic-m-multitank-200-37-l-varmepumpesaet-346771510-346771530-346775a00" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(59766)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/26081/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/26081/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="26081">
<a href="https://www.vvs-eksperten.dk/copmax-rs07-l-v-varmepumpe-346149a07" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-26081.window="$el.src = $event.detail" alt="CopMax RS07 Luft til vand varmepumpe med inverter" title="CopMax RS07 Luft til vand varmepumpe med inverter" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/4/346149a07_keymark_1.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/copmax-rs07-l-v-varmepumpe-346149a07">
CopMax RS07 Luft til vand varmepumpe med inverter </a>
<p class="text-xs"> 346149A07 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ydelse på 7 kW</li>
<li>R32 kølemiddel</li>
<li>Cirkulationspumpe</li>
<li>3 kW el-patron</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80241c61() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80241c61()" @update-prices-26081.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="26081" data-price-box="product-id-26081"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-26081" data-price-amount="31995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">31.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/r/s/rs07vl_energy_lable_202404.png'})">
<span>A</span><span class="text-sm">+++</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//r/s/rs07vl_produktblad_updated_202404.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/copmax-rs07-l-v-varmepumpe-346149a07" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(26081)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25926/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25926/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25926">
<a href="https://www.vvs-eksperten.dk/copmax-high-power-4kw-346150a04" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25926.window="$el.src = $event.detail" alt="CopMax High Power 4 kW Luft til Vand varmepumpe" title="CopMax High Power 4 kW Luft til Vand varmepumpe" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/4/346150a04_5.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/copmax-high-power-4kw-346150a04">
CopMax High Power 4 kW Luft til Vand varmepumpe </a>
<p class="text-xs"> 346150A04 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Energimærke A +++</li>
<li>R32 Kølemiddel</li>
<li>m/ 3 kW el-patron</li>
<li>4 kW</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80246a57() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80246a57()" @update-prices-25926.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25926" data-price-box="product-id-25926"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-25926" data-price-amount="20995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">20.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/4/346150504_energim_rke.jpg'})">
<span>A</span><span class="text-sm">+++</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//t/e/teknisk_datablad_copmax_high_power_.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/copmax-high-power-4kw-346150a04" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25926)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13196/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13196/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13196">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-jordvarme-jordvarmepumpe-copmax-10kw-med-carel-styring-346019210" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13196.window="$el.src = $event.detail" alt="Jordvarmepumpe CopMax 10kW med Carel styring" title="Jordvarmepumpe CopMax 10kW med Carel styring" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/o/copmax_gs10_gs15_1_.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-jordvarme-jordvarmepumpe-copmax-10kw-med-carel-styring-346019210">
Jordvarmepumpe CopMax 10kW med Carel styring </a>
<p class="text-xs"> 346019210 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Med Carel kontrol</li>
<li>sCOP-værdi 3.07-4.04</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8024bbda() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8024bbda()" @update-prices-13196.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13196" data-price-box="product-id-13196"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13196" data-price-amount="33595.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">33.595,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/g/s/gs10_energy_lable_2019.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//c/o/copmax_gs10_prodoct_fiche_2023.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-jordvarme-jordvarmepumpe-copmax-10kw-med-carel-styring-346019210" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13196)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12321/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/12321/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="12321">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-jordvarme-saet-copmax-10kw-med-20037-tank-komplet-jordvarmesaet-346019430" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-12321.window="$el.src = $event.detail" alt="CopMax 10kW med 200/37 tank Komplet jordvarmesæt" title="CopMax 10kW med 200/37 tank Komplet jordvarmesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/a/da00614970d1d13e75faf2e555f493cb213e7304da024c64cf40923f222cac50.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-jordvarme-saet-copmax-10kw-med-20037-tank-komplet-jordvarmesaet-346019430">
CopMax 10kW med 200/37 tank Komplet jordvarmesæt </a>
<p class="text-xs"> 346019430 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p><strong>Kan ikke afhentes i butik. Bestilles til direkte levering.<br></strong><strong>Komplet sæt bestående af:</strong></p>
<ul>
<li>Copmax 200/37 akkutank</li>
<li>Copmax 10kW m/Carel styring</li>
<li>Copmax Monteringssæt</li>
<li>Jordvarmepakke 400 meter</li>
<li>Pannex Elvandvarmer 80 L</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80250bd4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80250bd4()" @update-prices-12321.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="12321" data-price-box="product-id-12321"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-12321" data-price-amount="59495.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">59.495,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/g/s/gs10_energy_lable_2019.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//c/o/copmax_gs10_prodoct_fiche_2023.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmepumpe-jordvarme-saet-copmax-10kw-med-20037-tank-komplet-jordvarmesaet-346019430" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(12321)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13136/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13136/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13136">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-kalorifere-til-traepiller-duna-kalorifer-pillefyr-18kw-305650120" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13136.window="$el.src = $event.detail" alt="Duna Kalorifer Pillefyr 18kW" title="Duna kalorifer til træpiller-305650120" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/9/3941345255493c905b1973d1f0384fd3b364be18f341aab5da2afd2fe2c881a3.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-kalorifere-til-traepiller-duna-kalorifer-pillefyr-18kw-305650120">
Duna Kalorifer Pillefyr 18kW </a>
<p class="text-xs"> 305650120 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>40 kg træpillebeholder</li>
<li>Opvarmer op til 400 m²</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80255d10() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80255d10()" @update-prices-13136.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13136" data-price-box="product-id-13136"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13136" data-price-amount="27995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">27.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/0/305650120EnergimærkeDuna.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/305650120DatabladDuna.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-varmekilder-kalorifere-til-traepiller-duna-kalorifer-pillefyr-18kw-305650120" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13136)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25931/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/25931/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="25931">
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-25931.window="$el.src = $event.detail" alt="Sargas 3 Brændeovn med sideglas" title="Sargas 3 Brændeovn med sideglas" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/0/306019a20_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20">
Sargas 3 Brændeovn </a>
<p class="text-xs"> 306019A20 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Op til 81% virkningsgrad</li>
<li>Flere tilslutningsmuligheder</li>
<li>Med side glas</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbdb5e1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbdb5e1()" @update-prices-25931.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="25931" data-price-box="product-id-25931"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-25931" data-price-amount="16553.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">16.553,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/0/306019a20_energim_rke.jpg'})">
<span>A</span><span class="text-sm">+</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/0/306019a20_datablad.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/braendeovn-sargas-3-306019a20" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(25931)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5193/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5193/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> Sommertilbud - spar 34% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5193">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5193.window="$el.src = $event.detail" alt="Mobil Aircondition 7000 BTU 780W" title="Mobil Aircondition 7000 BTU 780W" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/i/aircon7000_denne.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000">
Mobil Aircondition, affugter op til 19m² </a>
<p class="text-xs"> AIRCON7000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ventilation</li>
<li>24 timers-timer</li>
<li>Køling 10-15m²</li>
<li>Affugter op til 19m²</li>
<li>Energiklasse A</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fb8d217() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fb8d217()" @update-prices-5193.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5193" data-price-box="product-id-5193"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5193" data-price-amount="1449" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.449,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-5193" data-price-amount="2217.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">2.217,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--yellow w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/A/I/AIRCON7000_energimærke.jpg'})">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//m/a/manual_aircon7000.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-7000-btu-780w-aircon7000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5193)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13096/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13096/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13096">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsanlaeg-nilan-comfort-300lr-med-cts-602-light-styring-358944305" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13096.window="$el.src = $event.detail" alt="Nilan Comfort 300LR ventilationsanlæg med CTS602 styring " title="Nilan Comfort 300LR ventilationsanlæg med CTS602 styring " src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/f/6febeed9963e9d2c92f06b40b5438c99b544c363c7ac173018e7d0fa19839a65.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsanlaeg-nilan-comfort-300lr-med-cts-602-light-styring-358944305">
Nilan Comfort 300LR med CTS602 styring </a>
<p class="text-xs"> 358944305 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Styring via Nilan App</li>
<li>CTS602 styring</li>
<li>Tilslutning ø160 mm</li>
<li>Luftmængde 400 m³/h</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8026da9d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8026da9d()" @update-prices-13096.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13096" data-price-box="product-id-13096"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13096" data-price-amount="14950.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">14.950,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/5/358944305_Nilanenergilabelconfort300lr_1.jpg'})">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/5/358944305_ecodesign_datablad_-_comfort_300_lr_dk.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsanlaeg-nilan-comfort-300lr-med-cts-602-light-styring-358944305" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13096)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55620/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/55620/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="55620">
<a href="https://www.vvs-eksperten.dk/359545252" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-55620.window="$el.src = $event.detail" alt="Dantherm HCH 5 Loftmonterede boligventilationsanlæg" title="Dantherm HCH 5 Loftmonterede boligventilationsanlæg" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/5/359545252_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/359545252">
Dantherm HCH 5 ventilationsanlæg </a>
<p class="text-xs"> 359545252 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Styring via Dantherm app</li>
<li>HCP-kontrolpanel</li>
<li>Tilslutning ø160 mm</li>
<li>Luftmængde 300 m³/h</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80274f14() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80274f14()" @update-prices-55620.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="55620" data-price-box="product-id-55620"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-55620" data-price-amount="14849.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">14.849,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//d/a/datablad_hch5_1.pdf" target="_blank">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//d/a/datablad_hch5_1.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/359545252" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(55620)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/48293/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/48293/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="48293">
<a href="https://www.vvs-eksperten.dk/359548032" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-48293.window="$el.src = $event.detail" alt="Dantherm RCV 320 kompakt boligventilationsaggregat" title="Dantherm RCV 320 kompakt boligventilationsaggregat" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/5/359548032.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/359548032">
Dantherm RCV 320 ventilationsanlæg </a>
<p class="text-xs"> 359548032 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Styring via Dantherm app</li>
<li>Universal tilslutning</li>
<li>HCP-kontrolpanel</li>
<li>Tilslutning ø125 mm</li>
<li>Luftmængde 320 m³/h</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8027b510() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8027b510()" @update-prices-48293.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="48293" data-price-box="product-id-48293"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-48293" data-price-amount="13395.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">13.395,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/359548032" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(48293)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5280/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5280/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5280">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-genpak8" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5280.window="$el.src = $event.detail" alt="Genvindingsunit Dantherm HCH 5 pakke 150 m²" title="Genvindingsunit Dantherm HCH 5 pakke 150 m²" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/g/e/genpak8_1_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-genpak8">
Dantherm HCH 5 ventilationspakke 150 m² </a>
<p class="text-xs"> GENPAK8 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet til 150 m² </li>
<li>Styring via Dantherm app</li>
<li>Med faste spirorør</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80281784() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80281784()" @update-prices-5280.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5280" data-price-box="product-id-5280"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-5280" data-price-amount="21995.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">21.995,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel-- w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/5/359011140_dv82_energim_rke.jpg'})">
<span>A</span><span class="text-sm">+++</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/5/359011140_dv82_datablad.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-genpak8" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5280)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10656/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10656/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10656">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsanlaeg-mini-varmegenvindingsanlaeg-hr100r-unite100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10656.window="$el.src = $event.detail" alt="Mini Varmegenvindingsanlæg HR100R" title="Mini Varmegenvindingsanlæg HR100R" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/7/07f6dd213bafffda4fb4fdb9b0119222a22b5f578f7ece4bf29c4cd4caf21ca3.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsanlaeg-mini-varmegenvindingsanlaeg-hr100r-unite100">
Mini Varmegenvindingsanlæg HR100R </a>
<p class="text-xs"> UNITE100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Tilslutning ø100 mm</li>
<li>Luftmængde 77 m³/h</li>
<li>Til et enkelt rum</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80288476() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80288476()" @update-prices-10656.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10656" data-price-box="product-id-10656"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10656" data-price-amount="6019.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">6.019,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10656" data-price-amount="6206.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">6.206,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//U/N/UNITE100databladhr100r.pdf" target="_blank">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//U/N/UNITE100brochureHR100R.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsanlaeg-mini-varmegenvindingsanlaeg-hr100r-unite100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10656)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10161/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10161/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10161">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-1-rums-varmegenvinding-353425100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10161.window="$el.src = $event.detail" alt="1-rums varme genvinding" title="1-rums varme genvinding" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/1/f/1ff9b1229b2ef341119d72221df3dd4822b5b59b35aef1a5f6c3481ad5d3562a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-1-rums-varmegenvinding-353425100">
1-rums varmegenvinding </a>
<p class="text-xs"> 353425100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Boligventilation</p>
<ul>
<li>Støjniveau 10-29dB</li>
<li>Forbrug 1,2-2,6W</li>
<li>Varmegenvinding 25m³/h</li>
<li>Frisk luft - lavt varmetab</li>
<li>Skiftevis ind- og udsugning</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc2873c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc2873c()" @update-prices-10161.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10161" data-price-box="product-id-10161"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10161" data-price-amount="2046.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.046,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10161" data-price-amount="2109.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">2.109,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-1-rums-varmegenvinding-353425100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10161)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11437/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/11437/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="11437">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-vf3rum" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-11437.window="$el.src = $event.detail" alt="Varmeflytningssæt 3 rum m/kanalventilator 240 m³/h" title="Varmeflytningssæt 3 rum m/kanalventilator 240 m³/h" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/b/bbae250baa2cef6abceddf0c5adf9992893d5c055ff7308841492fd934d50a29.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-vf3rum">
Varmeflytningssæt 3 rum m/kanalventilator 240 m³/h </a>
<p class="text-xs"> VF3RUM </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Flytter overskudsvarmen</li>
<li>Kanalventilator 240 m³/h</li>
<li>4 stk. loftventiler</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8028f131() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8028f131()" @update-prices-11437.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="11437" data-price-box="product-id-11437"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-11437" data-price-amount="2492.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.492,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-11437" data-price-amount="2569.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">2.569,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-vf3rum" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(11437)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13116/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/13116/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="13116">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-duka-one-pro-50-1-rums-varmegenvinding-358881161" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-13116.window="$el.src = $event.detail" alt="DUKA ONE Pro 50+ 1-rums varmegenvinding" title="Duka One Pro 50+ 1-rumsvarmegenvinding Ø160mm-358881161" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/4/b4092f8d04e02681b514e05b896317a16ddb21b97019c6a7506166c5ec9057ba.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-duka-one-pro-50-1-rums-varmegenvinding-358881161">
DUKA ONE Pro 50+ 1-rums varmegenvinding </a>
<p class="text-xs"> 358881161 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Boligventilation</p>
<ul>
<li>Med fjernbetjening</li>
<li>Genvinding op til 95%</li>
<li>Støjniveau ned til 25dB</li>
<li>Forbrug ned til 1,7 W</li>
<li>Udluftning op til 60 m³/h</li>
<li>Varmegenvinding 30m³/h</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80295710() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80295710()" @update-prices-13116.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="13116" data-price-box="product-id-13116"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-13116" data-price-amount="3960.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.960,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-kanalventilator-rorventilator-og-vadrumsventilator-duka-one-pro-50-1-rums-varmegenvinding-358881161" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(13116)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4824/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/4824/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="4824">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-nilan-comfort-300lr-ventilationspakke-150-m2-genpaknilan1" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-4824.window="$el.src = $event.detail" alt="Nilan Comfort 300LR ventilationspakke 150 m²" title="GenpakNilan - ventilationspakke" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/e/ventilationspakke_nilan_-_genpaknilan.png">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-nilan-comfort-300lr-ventilationspakke-150-m2-genpaknilan1">
Nilan Comfort 300LR ventilationspakke 150 m² </a>
<p class="text-xs"> GENPAKNILAN1 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Komplet til 150m² </li>
<li>Luftmængde 400 m³/h</li>
<li>Nilan Comfort 300LR</li>
<li>Med faste spirorør</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8029be5c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8029be5c()" @update-prices-4824.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="4824" data-price-box="product-id-4824"> <span class="final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span id="product-price-4824" data-price-amount="25495.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">25.495,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--green w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/3/5/358944305_Nilanenergilabelconfort300lr_0.jpg'})">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//3/5/358944305_datablad_0.pdf" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-pakkelosninger-ventilationsanlaeg-nilan-comfort-300lr-ventilationspakke-150-m2-genpaknilan1" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(4824)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/19863/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/19863/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="19863">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsror-og-fittings-spiro-og-ventilationsror-ventilationsror-100-mm-2000-mm-ror1002" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-19863.window="$el.src = $event.detail" alt="Spirorør 2 meter" title="Ventilationsrør 100 mm a' 2000 mm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/r/_/r_r100.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsror-og-fittings-spiro-og-ventilationsror-ec710def-28a0-4aa1-aa1d-eb528268e93a">
Spirorør 2 meter </a>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø 100mm</li>
<li>ø 125mm</li>
<li>ø 160mm</li>
<li>ø 200mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_19863() {
const configurableOptionsComponent = initConfigurableOptions('19863', {
"attributes": {
"170": {
"id": "170",
"code": "dimension_1",
"label": "Dimension 1",
"options": [{
"id": "10853",
"label": "\u00f8 100 mm",
"products": ["19859"]
}, {
"id": "10854",
"label": "\u00f8 125 mm",
"products": ["19860"]
}, {
"id": "10857",
"label": "\u00f8 160 mm",
"products": ["19861"]
}, {
"id": "10859",
"label": "\u00f8 200 mm",
"products": ["19862"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"19859": {
"baseOldPrice": {
"amount": 90.4
},
"oldPrice": {
"amount": 113.000001
},
"basePrice": {
"amount": 85.6
},
"finalPrice": {
"amount": 107.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19860": {
"baseOldPrice": {
"amount": 109.6
},
"oldPrice": {
"amount": 137.000001
},
"basePrice": {
"amount": 104
},
"finalPrice": {
"amount": 130.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19861": {
"baseOldPrice": {
"amount": 140
},
"oldPrice": {
"amount": 175.000001
},
"basePrice": {
"amount": 132.8
},
"finalPrice": {
"amount": 166.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19862": {
"baseOldPrice": {
"amount": 173.6
},
"oldPrice": {
"amount": 217.000001
},
"basePrice": {
"amount": 164.8
},
"finalPrice": {
"amount": 206.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 90.4
},
"oldPrice": {
"amount": 113.000001
},
"basePrice": {
"amount": 85.6
},
"finalPrice": {
"amount": 107.000001
}
},
"productId": "19863",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"19859": {
"170": "10853"
},
"19860": {
"170": "10854"
},
"19861": {
"170": "10857"
},
"19862": {
"170": "10859"
}
},
"salable": {
"170": {
"10853": ["19859"],
"10854": ["19860"],
"10857": ["19861"],
"10859": ["19862"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"19859": "R\u00d8R1002",
"19860": "R\u00d8R1252",
"19861": "R\u00d8R1602",
"19862": "R\u00d8R2002"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-19863", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_19863()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec802a006b() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802a006b()" @update-prices-19863.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="19863" data-price-box="product-id-19863"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-19863" data-price-amount="107.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">107,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsror-og-fittings-spiro-og-ventilationsror-ec710def-28a0-4aa1-aa1d-eb528268e93a" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(19863)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/19895/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/19895/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="19895">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsror-og-fittings-ventilationsbojning-ventilation-bojning-o100mm-90-grader-boj10090" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-19895.window="$el.src = $event.detail" alt="Ventilations Bøjning 90°" title="Ventilation bøjning ø 100mm. 90 gr" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/_/b_j10090_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsror-og-fittings-ventilationsbojning-011156f3-eecd-4ba7-a9e7-3e6b4daf7836">
Ventilations Bøjning 90° </a>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Vælg mellem</p>
<ul>
<li>100 til 315 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initConfigurableSwatchOptions_19895() {
const configurableOptionsComponent = initConfigurableOptions('19895', {
"attributes": {
"141": {
"id": "141",
"code": "dimension",
"label": "Dimension",
"options": [{
"id": "1391",
"label": "100 mm",
"products": ["19889"]
}, {
"id": "1466",
"label": "125 mm",
"products": ["19890"]
}, {
"id": "1570",
"label": "160 mm",
"products": ["19891"]
}, {
"id": "1693",
"label": "200 mm",
"products": ["19892"]
}, {
"id": "1804",
"label": "250 mm",
"products": ["19893"]
}, {
"id": "1920",
"label": "315 mm",
"products": ["19894"]
}],
"position": "0"
}
},
"template": "<%- data.price %>",
"currencyFormat": "%s",
"optionPrices": {
"19889": {
"baseOldPrice": {
"amount": 46.4
},
"oldPrice": {
"amount": 58.000001
},
"basePrice": {
"amount": 43.2
},
"finalPrice": {
"amount": 54.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19890": {
"baseOldPrice": {
"amount": 59.2
},
"oldPrice": {
"amount": 74.000001
},
"basePrice": {
"amount": 55.2
},
"finalPrice": {
"amount": 69.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19891": {
"baseOldPrice": {
"amount": 77.6
},
"oldPrice": {
"amount": 97.000001
},
"basePrice": {
"amount": 73.6
},
"finalPrice": {
"amount": 92.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19892": {
"baseOldPrice": {
"amount": 112.8
},
"oldPrice": {
"amount": 141.000001
},
"basePrice": {
"amount": 106.4
},
"finalPrice": {
"amount": 133.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19893": {
"baseOldPrice": {
"amount": 224
},
"oldPrice": {
"amount": 280.000001
},
"basePrice": {
"amount": 212.8
},
"finalPrice": {
"amount": 266.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
},
"19894": {
"baseOldPrice": {
"amount": 253.6
},
"oldPrice": {
"amount": 317.000001
},
"basePrice": {
"amount": 239.2
},
"finalPrice": {
"amount": 299.000001
},
"tierPrices": [],
"msrpPrice": {
"amount": 0
}
}
},
"priceFormat": {
"pattern": "%s,-",
"precision": "2",
"requiredPrecision": "2",
"decimalSymbol": ",",
"groupSymbol": ".",
"groupLength": 3,
"integerRequired": false,
"currencyCode": null,
"showMinus": "before_value",
"symbol": ",-",
"minusSign": "-"
},
"prices": {
"baseOldPrice": {
"amount": 46.4
},
"oldPrice": {
"amount": 58.000001
},
"basePrice": {
"amount": 43.2
},
"finalPrice": {
"amount": 54.000001
}
},
"productId": "19895",
"chooseText": "V\u00e6lg en valgmulighed...",
"images": [],
"index": {
"19889": {
"141": "1391"
},
"19890": {
"141": "1466"
},
"19891": {
"141": "1570"
},
"19892": {
"141": "1693"
},
"19893": {
"141": "1804"
},
"19894": {
"141": "1920"
}
},
"salable": {
"141": {
"1391": ["19889"],
"1466": ["19890"],
"1570": ["19891"],
"1693": ["19892"],
"1804": ["19893"],
"1920": ["19894"]
}
},
"canDisplayShowOutOfStockStatus": true,
"channel": "website",
"salesChannelCode": "base",
"sku": {
"19889": "B\u00d8J10090",
"19890": "B\u00d8J12590",
"19891": "B\u00d8J16090",
"19892": "B\u00d8J20090",
"19893": "B\u00d8J25090",
"19894": "B\u00d8J31590"
}
});
const swatchOptionsComponent = initSwatchOptions([]);
return Object.assign(configurableOptionsComponent, swatchOptionsComponent, {
mediaCallback: "https\u003A\u002F\u002Fwww.vvs\u002Deksperten.dk\u002Fswatches\u002Fajax\u002Fmedia\u002F",
changeOption(optionId, value, skipUpdateGallery) {
if (value === '') {
this.selectedValues = this.removeAttrFromSelection(this.selectedValues, optionId)
} else {
this.selectedValues[optionId] = value;
}
this.findSimpleIndex();
this.findAllowedAttributeOptions();
this.updatePrices();
!skipUpdateGallery && this.updateGallery();
window.dispatchEvent(new CustomEvent('listing-configurable-selection-changed', {
detail: {
productId: this.productId,
optionId,
value,
productIndex: this.productIndex,
selectedValues: this.selectedValues,
candidates: this.findProductIdsForPartialSelection(this.selectedValues),
}
}));
},
updateGallery() {
if (!this.productIndex) {
return;
}
fetch(`${this.mediaCallback}?product_id=${this.productIndex}&isAjax=true`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
}).then(response => {
return response.json()
}).then(data => {
if (data.errors) {
// non critical failure only console logged
console.warn(data.errors);
} else {
const image = data && data.medium;
image && window.dispatchEvent(new CustomEvent("update-gallery-19895", {
detail: image
}));
}
}).catch(error => {
console.warn(error)
});
},
preselectQuerystringItems() {
// pre-select option like ?size=167
const urlQueryParams = new URLSearchParams(window.location.search.replace('?', ''));
Object.values(this.optionConfig.attributes).map(attribute => {
// Don't update images on load, since PLPs already set the main image to the selected options
const skipUpdateGallery = true;
urlQueryParams.get(attribute.code) && this.changeOption(attribute.id, urlQueryParams.get(attribute.code), skipUpdateGallery);
});
},
mouseDown: false,
startX: 0,
maxScroll: 0,
scrollLeft: null,
slider: null,
scrollEvents: {
['@mousedown'](e) {
this.slider = e.target.closest('.snap');
if (!this.slider) {
return;
}
this.maxScroll = this.slider.scrollWidth - this.slider.offsetWidth;
this.startX = e.pageX - this.slider.offsetLeft;
this.scrollLeft = this.slider.scrollLeft;
this.mouseDown = true;
},
['@mouseout.self']() {
this.mouseDown = false;
},
['@mouseup']() {
this.mouseDown = false;
},
['@mousemove'](e) {
e.preventDefault();
if (!this.mouseDown) {
return;
}
const x = e.pageX - this.slider.offsetLeft;
const scroll = x - this.startX;
const scrollLeft = this.scrollLeft - scroll;
if (scrollLeft > this.maxScroll) {
this.slider.scrollLeft = this.maxScroll;
return
}
this.slider.scrollLeft = this.scrollLeft - scroll;
},
['@onselectstart']() {
return false;
}
},
resizeEvent() {
Array.from(this.$root.querySelectorAll('.snap')).forEach(slider => {
slider.scrollLeft = 0;
})
}
});
}
</script>
<div x-data="initConfigurableSwatchOptions_19895()" x-init="findAllowedAttributeOptions(); initShowSwatchesIntersect();" @private-content-loaded.window="onGetCartData($event.detail.data)" @resize.window="resizeEvent()" class="mb-2 relative">
<div>
</div>
<template x-if="isTooltipVisible()">
<div class="absolute" :style="getTooltipPosition()">
<div class="shadow-lg">
<div class="absolute top-0 left-0 z-10 min-w-20 p-2 ml-4 -mt-6 text-sm leading-tight text-black
transform -translate-x-1/2 -translate-y-full bg-white rounded-lg shadow-lg text-center">
<template x-if="isVisualSwatch(activeTooltipItem.attribute, activeTooltipItem.item)">
<div class="inline-block border shadow-sm border-container" :style="getTooltipImageStyle(activeTooltipItem.attribute, activeTooltipItem.item)"></div>
</template>
<span class="mx-2 text-lg font-semibold whitespace-nowrap subtitle" x-html="getTooltipLabel()"></span>
</div>
<svg class="absolute z-10 w-8 h-8 text-white transform -translate-x-1/5
-translate-y-8 fill-current stroke-current" width="12" height="12">
<rect x="12" y="-12" width="12" height="12" transform="rotate(45)" class="shadow-xl"></rect>
</svg>
</div>
</div>
</template>
</div>
<script>
function initPriceBox__667ec802aa9ef() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802aa9ef()" @update-prices-19895.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="19895" data-price-box="product-id-19895"> <span class="configurable-final-price no-special no-catalog-price-rule">
<span class="price-container text-left ">
<span class="price-label">Pris fra: </span>
<span id="product-price-19895" data-price-amount="54.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">54,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-ventilationsror-og-fittings-ventilationsbojning-011156f3-eecd-4ba7-a9e7-3e6b4daf7836" class="button--grey-3 rounded w-full btn justify-center text-sm font-bold
mr-auto" aria-label="Flere varianter">
<span class="ml-2 inline md:ml-0 lg:ml-2 lg:inline">
Flere varianter </span>
</a>
<button x-data="initWishlist()" @click.prevent="addToWishlist(19895)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10339/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10339/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10339">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-bordventilator-med-3-hastigheder-og-rotations-mulighed-80000014010" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10339.window="$el.src = $event.detail" alt="Bordventilator med 3 hastigheder og rotations mulighed" title="Bordventilator ø30 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/b/8b54faffa22f4d627421f86d60450f15761ed276787cb18f222e0eab0350604c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-bordventilator-med-3-hastigheder-og-rotations-mulighed-80000014010">
Bordventilator </a>
<p class="text-xs"> 80000014010 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Nedkøling på en varm sommerdag</p>
<ul>
<li>3 Hastigheder</li>
<li>Med rotations mulighed</li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbac559() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbac559()" @update-prices-10339.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10339" data-price-box="product-id-10339"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10339" data-price-amount="151.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">151,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10339" data-price-amount="159.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">159,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-bordventilator-med-3-hastigheder-og-rotations-mulighed-80000014010" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10339)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5194/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5194/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5194">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-ventilator-tarn-45w-hojde-790-mm-80000014025" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5194.window="$el.src = $event.detail" alt="Ventilator tårn 45w - Højde 790 mm" title="Ventilator tårn air condition-80000014025" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/1/c1e20482c5d80a3ea242b77211250213571365e581034b5c77dd5d49acf675bb.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-ventilator-tarn-45w-hojde-790-mm-80000014025">
Ventilator tårn 45w - Højde 790 mm </a>
<p class="text-xs"> 80000014025 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Roterer 90º</li>
<li>Dækker op til 8 m</li>
<li>3 hastigheder</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbb32ba() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbb32ba()" @update-prices-5194.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5194" data-price-box="product-id-5194"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5194" data-price-amount="296.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">296,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5194" data-price-amount="312.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">312,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-ventilator-tarn-45w-hojde-790-mm-80000014025" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5194)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5320/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5320/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5320">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-9000-med-vindueskit-aircon9000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5320.window="$el.src = $event.detail" alt="Mobil Aircondition 9000 med vindueskit" title="Mobil Aircondition 9000 med vindueskit" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/i/aircon9000_4_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-9000-med-vindueskit-aircon9000">
Mobil Aircondition 9000 </a>
<p class="text-xs"> AIRCON9000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Ventilation</li>
<li>24 timers-timer</li>
<li>Køling 10-15m²</li>
<li>Affugte op til 19m²</li>
<li>Energiklasse A</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fba60fa() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fba60fa()" @update-prices-5320.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5320" data-price-box="product-id-5320"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5320" data-price-amount="2151.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.151,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-5320" data-price-amount="2217.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">2.217,-</span> </span>
</span>
</span>
</div>
<div class="flex flex-col">
<div class="enery-label flex justify-center items-center
energylabel--yellow w-min" x-data="">
<a class="text-3xl font-bold cursor-pointer w-auto h-10 flex flex-row items-center px-3 -ml-1 mr-1" @click="$dispatch('open-product-card-modal', {img: '/A/I/AIRCON9000_Energimærke.png'})">
<span>A</span> </a>
</div>
<div class="product-list-item__data-sheet mt-2">
<a class="link text-sm flex flex-grow justify-end items-center" href="https://www.vvs-eksperten.dk/media/energy_label/files/attachment//A/I/AIRCON9000_Datablad.png" target="_blank">
Produktdatablad </a>
</div>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-mobil-aircondition-9000-med-vindueskit-aircon9000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5320)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10872/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10872/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10872">
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-hi-line-plus-loftsventilator-1400mm-15000-m3h-354329980" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10872.window="$el.src = $event.detail" alt="Hi-Line Plus loftsventilator 1400mm - 15000 m³/h" title="Nwan56 loftsventilator - 12470 m3/h" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/0/90023544f6ee838db515bfa5316d72c6080ebf5236e06ce52694fe0a9e859b7d.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-hi-line-plus-loftsventilator-1400mm-15000-m3h-354329980">
Hi-Line Plus loftsventilator 1400mm - 15000 m³/h </a>
<p class="text-xs"> 354329980 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Vingediameter 1400 mm</li>
<li>Excl. styring </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fbb9113() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fbb9113()" @update-prices-10872.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10872" data-price-box="product-id-10872"> <span class="special-price simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10872" data-price-amount="1217.000001" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.217,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Pris i butik: </span>
<span id="old-price-10872" data-price-amount="1269.000001" data-price-type="oldPrice" class="price-wrapper ">
<span class="price">1.269,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/varme-og-klima-ventilation-loftsventilator-og-bordventilator-hi-line-plus-loftsventilator-1400mm-15000-m3h-354329980" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10872)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/664/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/664/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 54% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="664">
<a href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-sav-hulsav-knive-og-bajonetsav-hobbykniv-18mm-stanford-252414100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-664.window="$el.src = $event.detail" alt="Hobbykniv 18mm Stanford" title="Hobbykniv 18mm Stanford" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/4/a4b79e6c5ec4c8163857eefcdebdd7473f821896a5e383deaa3fd5aa24b30285.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-sav-hulsav-knive-og-bajonetsav-hobbykniv-18mm-stanford-252414100">
Hobbykniv 18mm Stanford </a>
<p class="text-xs"> 252414100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Bredde 18 mm</li>
<li>Med soft-grip</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec802d6e19() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802d6e19()" @update-prices-664.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="664" data-price-box="product-id-664"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-664" data-price-amount="10" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">10,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-664" data-price-amount="22.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">22,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-sav-hulsav-knive-og-bajonetsav-hobbykniv-18mm-stanford-252414100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(664)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56105/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56105/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 76% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="56105">
<a href="https://www.vvs-eksperten.dk/9dansani29" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-56105.window="$el.src = $event.detail" alt="Canto møbelsæt inkl. spejl med integreret LED-lys i top - 120 cm" title="Canto møbelsæt inkl. spejl med integreret LED-lys i top - 120 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9dansani29_sps-102_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/9dansani29">
Canto møbelsæt inkl. spejl m/integreret LED-lys - 120 cm </a>
<p class="text-xs"> 9DANSANI29 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Canto porcelænsvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejl 700x1200 mm</li>
<li>Integreret LED-lys i top</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801c79a2() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801c79a2()" @update-prices-56105.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="56105" data-price-box="product-id-56105"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-56105" data-price-amount="4495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-56105" data-price-amount="19435.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">19.435,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/9dansani29" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(56105)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60097/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60097/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 74% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60097">
<a href="https://www.vvs-eksperten.dk/mikado-vask-skab-2-skuffer-spejl-lys-i-top-9dansani42" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60097.window="$el.src = $event.detail" alt="Mikado møbelsæt inkl. spejl med integreret LED-lys - 100 cm" title="Mikado møbelsæt inkl. spejl med integreret LED-lys - 100 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-107.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/mikado-vask-skab-2-skuffer-spejl-lys-i-top-9dansani42">
Mikado møbelsæt inkl. spejl m/integreret lys - 100 cm </a>
<p class="text-xs"> 9DANSANI42 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Mikado marmorvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejl 700x1000 mm</li>
<li>Integreret LED-lys</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8019eff4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8019eff4()" @update-prices-60097.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60097" data-price-box="product-id-60097"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60097" data-price-amount="5495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">5.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60097" data-price-amount="21445.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">21.445,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/mikado-vask-skab-2-skuffer-spejl-lys-i-top-9dansani42" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60097)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60099/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60099/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60099">
<a href="https://www.vvs-eksperten.dk/mikro-menuet-vask-skab-1-lage-spejl-lys-i-top-9dansani44" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60099.window="$el.src = $event.detail" alt="Mikro Menuet møbelsæt inkl. spejl med integreret LED-lys - 41 cm" title="Mikro Menuet møbelsæt inkl. spejl med integreret LED-lys - 41 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-111.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/mikro-menuet-vask-skab-1-lage-spejl-lys-i-top-9dansani44">
Mikro Menuet møbelsæt inkl. spejl m/integreret lys - 41 cm </a>
<p class="text-xs"> 9DANSANI44 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Menuet porcelænsvask</li>
<li>Vaskeskab med 1 låge</li>
<li>Spejl 700x400 mm</li>
<li>Integreret LED-lys</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801a93df() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801a93df()" @update-prices-60099.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60099" data-price-box="product-id-60099"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60099" data-price-amount="2695" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.695,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60099" data-price-amount="9450.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">9.450,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/mikro-menuet-vask-skab-1-lage-spejl-lys-i-top-9dansani44" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60099)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8895/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8895/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8895">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-waterrain-brusestangsaet-med-hovedbruser-og-handbruser-722251110" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8895.window="$el.src = $event.detail" alt="Skv Water Rain Brusesæt" title="Skv Water Rain Brusesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/d/8dff5bab891f576097d4daf34ae9c581e5445b046593b6b8c940feac2c1de989.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-waterrain-brusestangsaet-med-hovedbruser-og-handbruser-722251110">
Skv Water Rain Brusesæt </a>
<p class="text-xs"> 722251110 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>190mm hovedbruser</li>
<li>Excl. termostat</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec802dcfdf() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802dcfdf()" @update-prices-8895.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8895" data-price-box="product-id-8895"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8895" data-price-amount="227" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">227,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8895" data-price-amount="454.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">454,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-waterrain-brusestangsaet-med-hovedbruser-og-handbruser-722251110" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8895)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60100/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60100/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60100">
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani45" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60100.window="$el.src = $event.detail" alt="Cappella møbelsæt 52 cm SPS-112" title="Cappella møbelsæt 52 cm SPS-112" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-112.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani45">
Cappella møbelsæt 52 cm </a>
<p class="text-xs"> 9DANSANI45 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Cappella porcelænvask</li>
<li>Vaskeskab med skuffe</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801ae570() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801ae570()" @update-prices-60100.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60100" data-price-box="product-id-60100"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60100" data-price-amount="1995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">1.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60100" data-price-amount="6995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">6.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani45" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60100)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60103/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60103/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 72% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60103">
<a href="https://www.vvs-eksperten.dk/cappella-vask-skab-m-2-skuffer-spejlskab-1-lage-9dansani48" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60103.window="$el.src = $event.detail" alt="Cappella møbelsæt inkl. spejl med integreret LED-lys i top - 52 cm" title="Cappella møbelsæt inkl. spejl med integreret LED-lys i top - 52 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-115.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/cappella-vask-skab-m-2-skuffer-spejlskab-1-lage-9dansani48">
Cappella møbelsæt inkl. spejl m/integreret lys - 52 cm </a>
<p class="text-xs"> 9DANSANI48 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Cappella porcelænsvask</li>
<li>Vaskeskab med skuffer</li>
<li>Spejl 700x500 mm</li>
<li>Integreret LED-lys</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801bd5b9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801bd5b9()" @update-prices-60103.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60103" data-price-box="product-id-60103"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60103" data-price-amount="4995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60103" data-price-amount="17995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">17.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/cappella-vask-skab-m-2-skuffer-spejlskab-1-lage-9dansani48" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60103)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60102/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60102/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60102">
<a href="https://www.vvs-eksperten.dk/amber-vask-skab-hvid-mat-m-1-lage-spejl-m-lys-9dansani47" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60102.window="$el.src = $event.detail" alt="Amber møbelsæt inkl. spejl med integreret LED-lys i top - 51 cm" title="Amber møbelsæt inkl. spejl med integreret LED-lys i top - 51 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-114.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/amber-vask-skab-hvid-mat-m-1-lage-spejl-m-lys-9dansani47">
Amber møbelsæt inkl. spejl m/integreret lys - 51 cm </a>
<p class="text-xs"> 9DANSANI47 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Amber mini porcelænsvask</li>
<li>Vaskeskab med låge</li>
<li>Spejl 700x500 mm</li>
<li>Integreret LED-lys i top</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801b8225() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801b8225()" @update-prices-60102.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60102" data-price-box="product-id-60102"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60102" data-price-amount="2495" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.495,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60102" data-price-amount="8750.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">8.750,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/amber-vask-skab-hvid-mat-m-1-lage-spejl-m-lys-9dansani47" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60102)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56104/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/56104/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 68% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="56104">
<a href="https://www.vvs-eksperten.dk/9dansani28" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-56104.window="$el.src = $event.detail" alt="Largo møbelsæt inkl. spejl med lodret integreret lys - 120 cm" title="Largo møbelsæt inkl. spejl med lodret integreret lys - 120 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9dansani28_sps-998_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/9dansani28">
Largo møbelsæt inkl. spejl m/integreret lys - 120 cm </a>
<p class="text-xs"> 9DANSANI28 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Largo glasvask</li>
<li>Vaskeskab med 1 skuffe</li>
<li>Spejl 700x1200 mm</li>
<li>Lodret integreret LED-lys</li>
<li>m/lysstyring</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801c26f9() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801c26f9()" @update-prices-56104.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="56104" data-price-box="product-id-56104"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-56104" data-price-amount="4295" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.295,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-56104" data-price-amount="13550.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">13.550,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/9dansani28" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(56104)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60098/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60098/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 69% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60098">
<a href="https://www.vvs-eksperten.dk/viskan-vask-skab-i-hvid-mat-m-2-skuffer-og-spejl-9dansani43" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60098.window="$el.src = $event.detail" alt="Viskan møbelsæt inkl. spejl - 60 cm" title="Viskan møbelsæt inkl. spejl - 60 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps109.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/viskan-vask-skab-i-hvid-mat-m-2-skuffer-og-spejl-9dansani43">
Viskan møbelsæt inkl. spejl - 60 cm </a>
<p class="text-xs"> 9DANSANI43 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Viskan porcelænsvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejl 637x597 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801a4509() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801a4509()" @update-prices-60098.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60098" data-price-box="product-id-60098"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60098" data-price-amount="3995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60098" data-price-amount="12995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">12.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/viskan-vask-skab-i-hvid-mat-m-2-skuffer-og-spejl-9dansani43" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60098)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60101/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60101/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 71% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60101">
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani46" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60101.window="$el.src = $event.detail" alt="Cappella møbelsæt 62 cm SPS-113" title="Cappella møbelsæt 62 cm SPS-113" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/v/s/vsps-113.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani46">
Cappella møbelsæt 62 cm </a>
<p class="text-xs"> 9DANSANI46 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Cappella porcelænvask</li>
<li>Vaskeskab med skuffe</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec801b33a3() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec801b33a3()" @update-prices-60101.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60101" data-price-box="product-id-60101"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60101" data-price-amount="2195" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">2.195,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60101" data-price-amount="7750.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">7.750,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/cappella-vask-og-vaskeskab-i-hvid-mat-med-1-skuffe-9dansani46" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60101)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8656/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8656/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8656">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-cosima-3-f-brusehoved-200mm-med-3-brusefunktioner-736010100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8656.window="$el.src = $event.detail" alt="Skv cosima 3-F brusehoved 200mm med 3 brusefunktioner" title="Skv cosima 3-f brusehoved-736010100" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/f/7/f7da7e70aad7871e980f0b945b0bf75473dff55d6df110be5a97aba426625875.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-cosima-3-f-brusehoved-200mm-med-3-brusefunktioner-736010100">
Skv cosima 3-F brusehoved 200mm med 3 brusefunktioner </a>
<p class="text-xs"> 736010100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø 200mm</li>
<li>1/2" kugleled</li>
<li>3 bruse funktioner</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec802e275f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802e275f()" @update-prices-8656.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8656" data-price-box="product-id-8656"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8656" data-price-amount="119" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">119,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8656" data-price-amount="238.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">238,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-cosima-3-f-brusehoved-200mm-med-3-brusefunktioner-736010100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8656)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6292/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/6292/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="6292">
<a href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-saebedispenser-skv-saebedispenser-med-batteri-til-vaeg-handsprit-dispenser-774550100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-6292.window="$el.src = $event.detail" alt="SKV Sæbedispenser med batteri til væg / Håndsprit Dispenser" title="Skv sæbedispenser automatisk væghængt-774550100" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/4/845853f917fb95d16b5b45a51eeb48b9798a0b1f5369a82ee24978f94b747b17.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-saebedispenser-skv-saebedispenser-med-batteri-til-vaeg-handsprit-dispenser-774550100">
SKV Sæbedispenser med batteri til væg / Håndsprit Dispenser </a>
<p class="text-xs"> 774550100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Excl. 4 x AA batterier</li>
<li><strong>Til flydende sæbe</strong></li>
<li><strong>Til håndsprit</strong></li>
</ul>
<p> </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec802e78d1() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802e78d1()" @update-prices-6292.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="6292" data-price-box="product-id-6292"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-6292" data-price-amount="115" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">115,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-6292" data-price-amount="230.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">230,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-saebedispenser-skv-saebedispenser-med-batteri-til-vaeg-handsprit-dispenser-774550100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(6292)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8653/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8653/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8653">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-clemente-5-f-handbruser-738462170" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8653.window="$el.src = $event.detail" alt="Skv Clemente 5-F håndbruser" title="Skv clemente 5-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/3/23dcde61034e6bc09237d9b3cfec09cfd253d8d35e2be0ef1f4b85cbcd4b1ae9.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-clemente-5-f-handbruser-738462170">
Skv Clemente 5-F håndbruser </a>
<p class="text-xs"> 738462170 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>5 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec802ec5f3() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802ec5f3()" @update-prices-8653.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8653" data-price-box="product-id-8653"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8653" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8653" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-clemente-5-f-handbruser-738462170" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8653)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8654/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8654/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8654">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-concetta-5-f-handbruser-738462180" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8654.window="$el.src = $event.detail" alt="Skv Concetta 5-F håndbruser" title="Skv concetta 5-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/e/b/ebcf50bcda3956d6cf0aa52411122eb7659d3c56069584a151d0ecb0e1297e3d.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-concetta-5-f-handbruser-738462180">
Skv Concetta 5-F håndbruser </a>
<p class="text-xs"> 738462180 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>5 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec802f16ad() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec802f16ad()" @update-prices-8654.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8654" data-price-box="product-id-8654"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8654" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8654" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-concetta-5-f-handbruser-738462180" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8654)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8029/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8029/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 39% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8029">
<a href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-toiletpapirholder-huay-square-wc-papirholder-775211010" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8029.window="$el.src = $event.detail" alt="Huay square wc papirholder" title="Huay square wc papirholder" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/7/775211010.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-toiletpapirholder-huay-square-wc-papirholder-775211010">
Huay square wc papirholder </a>
<p class="text-xs"> 775211010 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Krom</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80302152() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80302152()" @update-prices-8029.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8029" data-price-box="product-id-8029"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8029" data-price-amount="104.0375" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">104,04</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8029" data-price-amount="172.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">172,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-toiletpapirholder-huay-square-wc-papirholder-775211010" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8029)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/65/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/65/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 30% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="65">
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-udsalg-haven-karcher-borste-til-hojtryksrenser-273050520" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-65.window="$el.src = $event.detail" alt="Kärcher børste til højtryksrenser" title="Kärcher vaskebørste|273050520" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/f/8f4761c38b2037ffc2f9e521d8c9ea33d20c218df135e84bc2caea6713584a1e.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-udsalg-haven-karcher-borste-til-hojtryksrenser-273050520">
Kärcher børste til højtryksrenser </a>
<p class="text-xs"> 273050520 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Tilbehør til Kärcher højtryksrenser</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80306db4() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80306db4()" @update-prices-65.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="65" data-price-box="product-id-65"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-65" data-price-amount="77.7" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">77,70</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-65" data-price-amount="111.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">111,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-haven-terrassevarmer-regnvandsbeholder-udsalg-haven-karcher-borste-til-hojtryksrenser-273050520" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(65)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8462/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8462/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 20% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8462">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-oras-optima-rain-7192-brusesaet-722274804" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8462.window="$el.src = $event.detail" alt="Oras optima rain 7192 brusesæt" title="Oras optima rain 7192 brusesæt - 722274804" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/0/1/010b1e4ec25e5d96a4ee95cc5846c114c06e17a930bbd0b232b8f906e3cbbc4d.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-oras-optima-rain-7192-brusesaet-722274804">
Oras optima rain 7192 brusesæt </a>
<p class="text-xs"> 722274804 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Termostatbatteri</li>
<li>257x197mm Hovedbruser</li>
<li>Håndbruser</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8030ba7f() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8030ba7f()" @update-prices-8462.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8462" data-price-box="product-id-8462"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8462" data-price-amount="3868.8" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.868,80</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8462" data-price-amount="4836.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">4.836,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesystem-oras-optima-rain-7192-brusesaet-722274804" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8462)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8652/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8652/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8652">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-ciro-5-f-handbruser-738462160" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8652.window="$el.src = $event.detail" alt="Skv Ciro 5-F håndbruser" title="Skv ciro 5-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/5/1/510becab87900e17dbb91bd2fec4cb1deb042e0832516fd31fc04967cb30b24e.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-ciro-5-f-handbruser-738462160">
Skv Ciro 5-F håndbruser </a>
<p class="text-xs"> 738462160 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>5 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec803107da() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec803107da()" @update-prices-8652.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8652" data-price-box="product-id-8652"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8652" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8652" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-ciro-5-f-handbruser-738462160" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8652)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8645/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8645/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8645">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-callisto-1-f-handbruser-738462100" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8645.window="$el.src = $event.detail" alt="Skv Callisto 1-F håndbruser" title="Skv callisto 1-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/7/6/76a350a8b357db3edc1648bb51d5c623b02b51585c3d9790f6402ec17ccdd828.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-callisto-1-f-handbruser-738462100">
Skv Callisto 1-F håndbruser </a>
<p class="text-xs"> 738462100 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>1 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec803154aa() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec803154aa()" @update-prices-8645.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8645" data-price-box="product-id-8645"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8645" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8645" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-callisto-1-f-handbruser-738462100" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8645)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8646/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8646/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8646">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-carla-1-f-handbruser-738462110" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8646.window="$el.src = $event.detail" alt="Skv Carla 1-F håndbruser" title="Skv carla 1-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/3/c38e8a055fed46e05e9675dbab547c255bc585d59108e68fae87eae1fbef8860.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-carla-1-f-handbruser-738462110">
Skv Carla 1-F håndbruser </a>
<p class="text-xs"> 738462110 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>1 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8031a163() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8031a163()" @update-prices-8646.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8646" data-price-box="product-id-8646"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8646" data-price-amount="36.5" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">36,50</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8646" data-price-amount="73.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">73,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-carla-1-f-handbruser-738462110" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8646)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8647/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8647/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8647">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-carola-1-f-handbruser-738462120" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8647.window="$el.src = $event.detail" alt="Skv Carola 1-F håndbruser" title="Skv carola 1-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/7/a7fc89de76c6c8702bbfa1d5a1c9dd1f9480b4129413e249d7e42bc1a4fcda1f.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-carola-1-f-handbruser-738462120">
Skv Carola 1-F håndbruser </a>
<p class="text-xs"> 738462120 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>1 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8031ed7a() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8031ed7a()" @update-prices-8647.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8647" data-price-box="product-id-8647"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8647" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8647" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-carola-1-f-handbruser-738462120" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8647)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8648/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8648/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8648">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-celeste-3-f-handbruser-738462130" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8648.window="$el.src = $event.detail" alt="Skv Celeste 3-F håndbruser" title="Skv celeste 3-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/a/ca2b71b4759bc18fea293480d30a760c71c8375dfd006d99c3bd97dd2b5f1e44.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-celeste-3-f-handbruser-738462130">
Skv Celeste 3-F håndbruser </a>
<p class="text-xs"> 738462130 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80323933() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80323933()" @update-prices-8648.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8648" data-price-box="product-id-8648"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8648" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8648" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-celeste-3-f-handbruser-738462130" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8648)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8649/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8649/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8649">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-cesare-3-f-handbruser-738462140" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8649.window="$el.src = $event.detail" alt="Skv Cesare 3-f Håndbruser" title="Skv cesare 3-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/a/ca1ab70416dae7a4bf2cda06896f57921d3a228c6795ee257244463158992dde.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-cesare-3-f-handbruser-738462140">
Skv Cesare 3-f Håndbruser </a>
<p class="text-xs"> 738462140 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80328621() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80328621()" @update-prices-8649.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8649" data-price-box="product-id-8649"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8649" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8649" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-cesare-3-f-handbruser-738462140" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8649)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8651/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8651/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8651">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-cinzia-5-f-handbruser-738462150" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8651.window="$el.src = $event.detail" alt="Skv Cinzia 5-F håndbruser" title="Skv cinzia 5-f håndbruser" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/9/c9b3ea69eda2f193b7ac4ef34f47054f2b68e148392af6ed8d29a5098ae611d9.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-cinzia-5-f-handbruser-738462150">
Skv Cinzia 5-F håndbruser </a>
<p class="text-xs"> 738462150 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø100mm brusehoved</li>
<li>5 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8032d42c() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8032d42c()" @update-prices-8651.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8651" data-price-box="product-id-8651"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8651" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8651" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-handbruser-skv-cinzia-5-f-handbruser-738462150" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8651)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8659/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8659/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8659">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-danilo-brusestangsaet-737709230" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8659.window="$el.src = $event.detail" alt="Skv Danilo brusestangsæt" title="Skv danilo brusesæt krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/4/345f32aa5e91f28c2a399d2f38cf672c86ce217e1f202fc56f103e6c7e8e1226.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-danilo-brusestangsaet-737709230">
Skv Danilo brusestangsæt </a>
<p class="text-xs"> 737709230 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø110mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec803327ee() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec803327ee()" @update-prices-8659.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8659" data-price-box="product-id-8659"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8659" data-price-amount="119" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">119,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8659" data-price-amount="238.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">238,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-danilo-brusestangsaet-737709230" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8659)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10135/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/10135/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 22% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="10135">
<a href="https://www.vvs-eksperten.dk/badevaerelse-rengoring-til-badevaerelse-513000000" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-10135.window="$el.src = $event.detail" alt="Håndsprit med glycerin 85% 250 ml" title="Håndsprit med glycerin 85% 250 ml" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/2/62c9fb9dcc5b27b6b7312c03db3eae393d538ee0c825ce97f1ea2c2aa3c92629.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-rengoring-til-badevaerelse-513000000">
Håndsprit med glycerin 85% 250 ml </a>
<p class="text-xs"> 513000000 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>God håndhygiejne vigtigt</p>
<p>Med glycerin</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec7fc4ed23() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec7fc4ed23()" @update-prices-10135.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="10135" data-price-box="product-id-10135"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-10135" data-price-amount="34.95" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">34,95</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-10135" data-price-amount="45.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">45,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-rengoring-til-badevaerelse-513000000" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(10135)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8664/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8664/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8664">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-eligio-brusesaet-737709270" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8664.window="$el.src = $event.detail" alt="Skv Eligio brusesæt" title="Skv eligio brusesæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/6/a60352b3f1cb62320ee9b7f60b72989ea03c27998903d1d4764b0e495ae2cfb5.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-eligio-brusesaet-737709270">
Skv Eligio brusesæt </a>
<p class="text-xs"> 737709270 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>90x85mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec803387bb() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec803387bb()" @update-prices-8664.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8664" data-price-box="product-id-8664"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8664" data-price-amount="136" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">136,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8664" data-price-amount="272.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">272,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-eligio-brusesaet-737709270" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8664)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8687/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8687/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8687">
<a href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-hylde-til-badevaerelse-hylde-til-brusestang-skv-hylde-til-brusestang-universal-o19-25mm-737709410" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8687.window="$el.src = $event.detail" alt="SKV hylde til brusestang - Universal ø19-25mm" title="Skv sæbeskål, universal" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/3/b37e9d7b31455f0ec2440fc28e25a29e0a109b6251fcf50b730a5edf94009147.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-hylde-til-badevaerelse-hylde-til-brusestang-skv-hylde-til-brusestang-universal-o19-25mm-737709410">
SKV hylde til brusestang - Universal ø19-25mm </a>
<p class="text-xs"> 737709410 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Universal</li>
<li>Krom</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8033dca0() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8033dca0()" @update-prices-8687.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8687" data-price-box="product-id-8687"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8687" data-price-amount="30" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">30,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8687" data-price-amount="60.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">60,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-badevaerelsestilbehor-interior-hylde-til-badevaerelse-hylde-til-brusestang-skv-hylde-til-brusestang-universal-o19-25mm-737709410" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8687)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8657/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8657/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8657">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-crocetta-5-f-brusehoved-m5-bruse-funktioner-o100mm-736010120" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8657.window="$el.src = $event.detail" alt="Skv Crocetta 5-F brusehoved m/5 bruse funktioner ø100mm" title="Skv crocetta 4-f brusehoved-736010120" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/b/6/b66b7810466cf7f865472c6451e031d6563b07d01e86a5dd3d93a8a42805c6e5.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-crocetta-5-f-brusehoved-m5-bruse-funktioner-o100mm-736010120">
Skv Crocetta 5-F brusehoved m/5 bruse funktioner ø100mm </a>
<p class="text-xs"> 736010120 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø 100mm</li>
<li>1/2" kugleled</li>
<li>5 bruse funktioner</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8034367d() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8034367d()" @update-prices-8657.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8657" data-price-box="product-id-8657"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8657" data-price-amount="58" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">58,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8657" data-price-amount="116.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">116,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-crocetta-5-f-brusehoved-m5-bruse-funktioner-o100mm-736010120" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8657)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60095/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/60095/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 73% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="60095">
<a href="https://www.vvs-eksperten.dk/badevaerelse-dansani-baderumsmobler-9dansani40" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-60095.window="$el.src = $event.detail" alt="Menuet møbelsæt inkl. spejlskab med integreret LED-lys i top - 51 cm" title="Menuet møbelsæt inkl. spejlskab med integreret LED-lys i top - 51 cm" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/9/d/9dansani40_sps-103.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-dansani-baderumsmobler-9dansani40">
Menuet møbelsæt inkl. spejl m/integreret lys - 51 cm </a>
<p class="text-xs"> 9DANSANI40 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Møbelpakke excl. armatur</p>
<ul>
<li>Mini Menuet porcelænsvask</li>
<li>Vaskeskab med 2 skuffer</li>
<li>Spejlskab 700x500 mm</li>
<li>Integreret LED-lys i top</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80199e76() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80199e76()" @update-prices-60095.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="60095" data-price-box="product-id-60095"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-60095" data-price-amount="4995" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">4.995,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-60095" data-price-amount="18995.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">18.995,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-dansani-baderumsmobler-9dansani40" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(60095)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8655/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8655/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8655">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-cono-1-f-brusehoved-240-x-170-mm-736010130" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8655.window="$el.src = $event.detail" alt="Skv Cono 1-F brusehoved 240 x 170 mm" title="Skv Cono 1-f brusehoved-736010130" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/2/7/272d3ff43fcc0c587cae13c0c3003d4cb8c256c1058e50c8950748103d96c4d9.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-cono-1-f-brusehoved-240-x-170-mm-736010130">
Skv Cono 1-F brusehoved 240 x 170 mm </a>
<p class="text-xs"> 736010130 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Hvid / krom</li>
<li>240 x 170 mm</li>
<li>1/2" kugleled</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80348e81() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80348e81()" @update-prices-8655.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8655" data-price-box="product-id-8655"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8655" data-price-amount="119" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">119,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8655" data-price-amount="238.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">238,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-cono-1-f-brusehoved-240-x-170-mm-736010130" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8655)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8650/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8650/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8650">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-christoforo-1-f-brusehoved-250mm-736010110" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8650.window="$el.src = $event.detail" alt="Skv Christoforo 1-F brusehoved 250mm" title="Skv christoforo 1-f brusehoved" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/8/c/8c0f021bba44f1fc63a5f219879794cff2f5e7744d558439a85a9cb6b2190d6c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-christoforo-1-f-brusehoved-250mm-736010110">
Skv Christoforo 1-F brusehoved 250mm </a>
<p class="text-xs"> 736010110 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>250 mm</li>
<li>1/2" kugleled</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8034e4b2() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8034e4b2()" @update-prices-8650.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8650" data-price-box="product-id-8650"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8650" data-price-amount="271.5" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">271,50</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8650" data-price-amount="543.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">543,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusehoved-skv-christoforo-1-f-brusehoved-250mm-736010110" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8650)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/36259/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/36259/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 16% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="36259">
<a href="https://www.vvs-eksperten.dk/central-stovsuger-alene-303955450" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-36259.window="$el.src = $event.detail" alt="Central Støvsuger" title="Central Støvsuger" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/3/0/303955450_1.jpg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/central-stovsuger-alene-303955450">
Central Støvsuger </a>
<p class="text-xs"> 303955450 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Uden tilbehør</li>
<li>Tilslutning ø50 mm</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80354167() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80354167()" @update-prices-36259.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="36259" data-price-box="product-id-36259"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-36259" data-price-amount="3057.825" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">3.057,83</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-36259" data-price-amount="3662.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">3.662,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/central-stovsuger-alene-303955450" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(36259)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2673/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2673/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 35% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2673">
<a href="https://www.vvs-eksperten.dk/hus-og-have-smart-home-zigbee-wi-fi-smart-stik-app-fjernstyr-alle-dine-elektriske-apparater-dognur-80009917026" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2673.window="$el.src = $event.detail" alt="Wi-Fi Smart stik via App - Fjernstyr alle dine elektriske apparater døgnur" title="Wi-Fi Smart Plug-9917026-80009917026" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/0/d0a8822435a9cc43038d5acaee3f2769ce49e755c7a68ecb1e54de4a6acd78bc.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-smart-home-zigbee-wi-fi-smart-stik-app-fjernstyr-alle-dine-elektriske-apparater-dognur-80009917026">
Wi-Fi Smart stik via App - Fjernstyr alle dine elektriske apparater døgnur </a>
<p class="text-xs"> 80009917026 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Fjernstyr dine apparater</p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80359c58() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80359c58()" @update-prices-2673.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2673" data-price-box="product-id-2673"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2673" data-price-amount="164.45" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">164,45</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2673" data-price-amount="253.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">253,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-smart-home-zigbee-wi-fi-smart-stik-app-fjernstyr-alle-dine-elektriske-apparater-dognur-80009917026" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2673)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/665/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/665/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 57% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="665">
<a href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-sav-hulsav-knive-og-bajonetsav-hobbyknive-blade-18mm-10stk-252414105" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-665.window="$el.src = $event.detail" alt="Hobbyknive Blade 18mm 10stk." title="Hobbyknive Blade 18mm 10stk." src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/d/7/d730fe5cc9e8221d141c0c953103826dc09d69e041e551fb64565ebbe5da902a.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-sav-hulsav-knive-og-bajonetsav-hobbyknive-blade-18mm-10stk-252414105">
Knivblade til hobbykniv </a>
<p class="text-xs"> 252414105 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Bredde 18 mm</li>
<li>Pakke med 10 stk.</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8035ff83() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8035ff83()" @update-prices-665.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="665" data-price-box="product-id-665"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-665" data-price-amount="8" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">8,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-665" data-price-amount="19.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">19,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-vaerktoj-sav-hulsav-knive-og-bajonetsav-hobbyknive-blade-18mm-10stk-252414105" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(665)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5798/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/5798/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="5798">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-tilbehor-til-bruser-bruseholder-skv-glider-til-brusestang-handbruser-o19-25-mm-737709420" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-5798.window="$el.src = $event.detail" alt="Skv glider til brusestang / håndbruser ø19-25 mm" title="Skv glider t/brusestang" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/0/a0b9a41c620f34ef5e3b7af97e6bdfd83b9cc7e9319ca094d881820af60a21e1.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-tilbehor-til-bruser-bruseholder-skv-glider-til-brusestang-handbruser-o19-25-mm-737709420">
Skv glider til brusestang / håndbruser ø19-25 mm </a>
<p class="text-xs"> 737709420 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<p>Universal </p>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80366338() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80366338()" @update-prices-5798.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="5798" data-price-box="product-id-5798"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-5798" data-price-amount="30.5" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">30,50</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-5798" data-price-amount="61.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">61,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-tilbehor-til-bruser-bruseholder-skv-glider-til-brusestang-handbruser-o19-25-mm-737709420" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(5798)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2021/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/2021/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="2021">
<a href="https://www.vvs-eksperten.dk/hus-og-have-mobil-tilbehor-bil-oplader-12v-til-iphone-5-6-og-7-245200125" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-2021.window="$el.src = $event.detail" alt="Bil oplader 12v til Iphone 5, 6 og 7" title="12V lader til mobil-245200125" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/6/7/672369d66fdeb7a69da3b66ce29f8c195ef94f49c6e184573bc48400153a8c1c.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/hus-og-have-mobil-tilbehor-bil-oplader-12v-til-iphone-5-6-og-7-245200125">
Bil oplader 12v til Iphone 5, 6 og 7 </a>
<p class="text-xs"> 245200125 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>Bil oplader 12v</li>
<li>Lightning USB kabel </li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec8036bc4e() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec8036bc4e()" @update-prices-2021.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="2021" data-price-box="product-id-2021"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-2021" data-price-amount="49.5" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">49,50</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-2021" data-price-amount="99.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">99,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/hus-og-have-mobil-tilbehor-bil-oplader-12v-til-iphone-5-6-og-7-245200125" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(2021)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8663/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8663/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8663">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-durante-brusestangsaet-737709220" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8663.window="$el.src = $event.detail" alt="Skv Durante brusestangsæt" title="Skv Durante brusestangsæt" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/c/a/caeaa7c5464ca82baa370cc3e207fc36a6b298a76ab3121c186aeab7938e43ba.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-durante-brusestangsaet-737709220">
Skv Durante brusestangsæt </a>
<p class="text-xs"> 737709220 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø110mm brusehoved</li>
<li>2 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec803712f0() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec803712f0()" @update-prices-8663.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8663" data-price-box="product-id-8663"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8663" data-price-amount="119" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">119,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8663" data-price-amount="238.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">238,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-durante-brusestangsaet-737709220" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8663)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8661/
<form method="post" action="https://www.vvs-eksperten.dk/checkout/cart/add/uenc/aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kay8~/product/8661/"
class="relative product-w transform transition hover:-translate-y-1 duration-300 ease-in-out item rounded product product-item product_addtocart_form card flex flex-col h-full hover:shadow-xl ">
<div class="absolute top-2 left-0 text-black text-sm flex flex-col gap-1 mb-1">
<p class="w-fit py-0.5 px-3 rounded-r font-medium" style="background-color: #FCD116; color: #282828"> SÅ LÆNGE LAGER HAVES - spar 50% </p>
</div>
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <input type="hidden" name="product" value="8661">
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-donata-brusesaet-krom-737709210" class="product photo product-item-photo block mx-auto mb-3 " tabindex="-1">
<img class="" loading="lazy" x-data="" @update-gallery-8661.window="$el.src = $event.detail" alt="Skv Donata brusesæt krom" title="Skv donata brusesæt krom" src="https://www.vvs-eksperten.dk/media/catalog/product/cache/702cd904041cab0c287cac1b30a32cba/a/2/a2ab9f30004b4c29ed73e30e23d628c4984fa9265f72bf4596728e3da754b895.jpeg">
</a>
<div class="product-info flex flex-col flex-grow relative">
<div class="items-center justify-center text-primary min-h-60 text-left ">
<a class="product-item-link font-semibold text-lg block h-12 leading-6 overflow-hidden mb-2" href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-donata-brusesaet-krom-737709210">
Skv Donata brusesæt krom </a>
<p class="text-xs"> 737709210 </p>
<div class="mb-5 mt-4 product-card-short-desc">
<ul>
<li>ø90mm brusehoved</li>
<li>3 indstillinger</li>
</ul>
</div>
</div>
<div class="py-1 mx-auto hidden ">
</div>
<script>
function initPriceBox__667ec80376715() {
return {
updatePrice(priceData) {
const regularPriceLabel = this.$el.querySelector('.normal-price .price-label');
const regularPriceElement = this.$el.querySelector('.normal-price .price-wrapper .price');
if (priceData.finalPrice.amount < priceData.oldPrice.amount) {
regularPriceLabel.classList.add('hidden');
} else {
regularPriceLabel.classList.remove('hidden');
}
regularPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount);
}
}
}
</script>
<div class="mt-auto text-vvs-green flex justify-between items-end w-full" x-data="initPriceBox__667ec80376715()" @update-prices-8661.window="updatePrice($event.detail);">
<div class="price-box price-final_price" data-role="priceBox" data-product-id="8661" data-price-box="product-id-8661"> <span class="catalog-price-rule simple-final-price">
<span class="price-container text-left ">
<span id="product-price-8661" data-price-amount="113" data-price-type="finalPrice" class="price-wrapper ">
<span class="price">113,-</span> </span>
</span>
</span>
<span class="old-price simple-special-price">
<span class="price-container text-left ">
<span class="price-label">Førpris: </span>
<span id="old-price-8661" data-price-amount="226.000001" data-price-type="oldPrice" class="price-wrapper line-through">
<span class="price">226,-</span> </span>
</span>
</span>
</div>
</div>
<div class="pt-3 flex justify-center items-center mb-1">
<!-- Item Card Buttons -->
<!-- Not Configurable Product -->
<a href="https://www.vvs-eksperten.dk/badevaerelse-bruser-brusesaet-skv-donata-brusesaet-krom-737709210" class="button--grey-3 rounded w-auto btn justify-center text-sm font-bold w-1/2
mr-auto" aria-label="Læs mere">
<span class="px-2 inline lg:inline">
Læs mere </span>
</a>
<button class="button-cart w-auto btn bg-vvs-green hover:bg-vvs-greenHover shadow-green-btn justify-center text-base font-bold w-1/2 ml-2 rounded
ml-auto" aria-label="Køb">
<span class="inline lg:inline"> Køb </span>
</button>
<button x-data="initWishlist()" @click.prevent="addToWishlist(8661)" aria-label="Tilføj til ønske liste" type="button"
class="hidden rounded-full w-9 h-9 bg-gray-200 p-0 border-0 inline-flex flex-shrink-0 items-center justify-center text-gray-500 hover:text-red-600 ml-2">
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="w-5 h-5" width="25" height="25" role="img">
<path fill-rule="evenodd" d="M3.172 5.172a4 4 0 0 1 5.656 0L10 6.343l1.172-1.171a4 4 0 1 1 5.656 5.656L10 17.657l-6.828-6.829a4 4 0 0 1 0-5.656Z" clip-rule="evenodd"></path>
<title>heart</title>
</svg>
</button>
</div>
</div>
</form>
POST https://www.vvs-eksperten.dk/newsletter/subscriber/new/
<form class="form subscribe w-full md:ml-10 form subscribe w-full flex flex-col justify-center" action="https://www.vvs-eksperten.dk/newsletter/subscriber/new/" method="post" x-data="initNewsletterForm()" @submit.prevent="submitForm()"
id="newsletter-validate-detail">
<div class="md:flex md:items-center">
<label for="newsletter-subscribe-name" class="sr-only"> Navn </label>
<input name="name" type="text" required="" id="newsletter-subscribe-name" class="form-input inline-flex w-full py-2.5 md:mr-2 mt-3 md:mt-0 mb-3 md:mb-0" placeholder="Navn">
<label for="newsletter-subscribe-email" class="sr-only"> Email </label>
<input name="email" type="email" required="" id="newsletter-subscribe-email" class="form-input inline-flex w-full py-2.5 md:mr-2 mt-3 md:mt-0 mb-3 md:mb-0" placeholder="E-mail">
<input name="form_key" type="hidden" value="AV89OlvgnGfjlkaJ"> <button class="newsletter-subscribe__submit h-11 inline-flex flex-shrink-0 ml-auto xl:mt-0 btn bg-vvs-green hover:bg-vvs-greenHover shadow-3xl font-bold rounded-sm shadow-green-btn">
Tilmeld </button>
</div>
<div class="newsletter-subscribe__validate flex md:justify-end mt-3 md:mt-4 overflow-auto">
<div id="grecaptcha-container-X" class="g-recaptcha">
<div style="width: 304px; height: 78px;">
<div><iframe title="reCAPTCHA" width="304" height="78" role="presentation" name="a-4hxp8g80aubt" frameborder="0" scrolling="no"
sandbox="allow-forms allow-popups allow-same-origin allow-scripts allow-top-navigation allow-modals allow-popups-to-escape-sandbox allow-storage-access-by-user-activation"
src="https://www.google.com/recaptcha/api2/anchor?ar=1&k=6LepBwInAAAAAGC_8iv0Um6Q7KHeNCdvM6fInVi1&co=aHR0cHM6Ly93d3cudnZzLWVrc3BlcnRlbi5kazo0NDM.&hl=da&v=rKbTvxTxwcw5VqzrtN-ICwWt&size=normal&cb=pv5s0shlnrjk"></iframe>
</div><textarea id="g-recaptcha-response" name="g-recaptcha-response" class="g-recaptcha-response"
style="width: 250px; height: 40px; border: 1px solid rgb(193, 193, 193); margin: 10px 25px; padding: 0px; resize: none; display: none;"></textarea>
</div><iframe style="display: none;"></iframe>
</div>
<script>
'use strict';
document.addEventListener('DOMContentLoaded', () => {
const containerId = 'grecaptcha\u002Dcontainer\u002DX';
grecaptchaV2LoadCallbacks.push(() => {
grecaptcha.render(containerId, {
sitekey: '6LepBwInAAAAAGC_8iv0Um6Q7KHeNCdvM6fInVi1'
});
});
const container = document.getElementById(containerId);
if (container && !container.closest) {
container.closest = function(s) {
let el = container;
do {
if (el.matches(s)) return el;
el = el.parentElement || el.parentNode;
} while (el !== null && el.nodeType === 1);
}
}
forceLoadRecaptchaScript(document.getElementById(containerId).closest('form'));
})
</script>
</div>
<div>
<template x-if="displayErrorMessage">
<p class="flex items-center text-red">
<span class="inline-block w-8 h-8 mr-3">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
</svg>
</span>
<template x-for="errorMessage in errorMessages">
<span x-html="errorMessage"></span>
</template>
</p>
</template>
</div>
</form>
Text Content
VI PASSER GODT PÅ DINE DATA Vi benytter cookies og andre teknologier til at forbedre din shoppingoplevelse, til at levere vores indhold, forstå hvordan kunder bruger vores hjemmeside, så vi kan foretage forbedringer og vise annoncer. Godkendte tredjeparter bruger også disse værktøjer i forbindelse med vores visning af annoncer. Fortrolighedspolitik Tilpas cookies Accepter cookies TILPAS DINE COOKIE PRÆFERENCER x Her kan du tillade eller deaktivere tracking og analyseværktøjer, der bruges på dette websted. Klik på gem indstillinger for at gemme dine tilpassede cookie præferencer. CHEVRON-UP CHEVRON-DOWN AFGØRENDE Cookie list: CART CATEGORY_INFO COMPARE CUSTOMER CUSTOMER_AUTH CUSTOMER_INFO CHEVRON-UP CHEVRON-DOWN MARKEDSFØRING Cookie list: CUSTOMER_SEGMENT_IDS EXTERNAL_NO_CACHE FRONTEND GUEST-VIEW LAST_CATEGORY LAST_PRODUCT NEWMESSAGE NO_CACHE PERSISTENT_SHOPPING_CART CHEVRON-UP CHEVRON-DOWN FUNKTIONEL Cookie list: RECENTLYCOMPARED STF STORE USER_ALLOWED_SAVE_COOKIE VIEWED_PRODUCT_IDS WISHLIST WISHLIST_CNT GA Gem indstillinger Kun essentielle Accepter cookies Nu kan du søge tilskud på 17.000,-kr. når du skifter til en luft til vand varmepumpe! Varmepumpepuljen er åben. Se vores varmepumper! Nu kan du søge tilskud på 17.000,-kr. når du skifter til en luft til vand varmepumpe! Varmepumpepuljen er åben. Se vores varmepumper! Skip to Content FAGLÆRTE RÅDGIVERE GRATIS LEVERING TIL ALLE BUTIKKER DANMARKS BEDSTE PRISER VVS FOR ALLE Søg Søg Search SØGERESULTATER KATEGORIER PRODUKTER Varenummer: Pris i butik Se alle resultater () KATEGORIER Search scale Sammenlign produkter 0 vare varer Search SØGERESULTATER KATEGORIER PRODUKTER Varenummer: Pris i butik Se alle resultater () KATEGORIER Search Butikker Log ind Luk LOG IND PÅ VVS-EKSPERTEN WEBSHOP Hvis du har allerede har en konto, login med din email adresse. E-mail Adgangskode Log ind Glemt din adgangskode? Opret en konto Indkøbskurv Kurv 0 Varer ... 0 I alt inkl. moms: Indlæser... 0,- + Fragt: 0,- Eller gratis afhentning! Menu Butikker Log ind Søg Søg Indkøbskurv Kurv 0 Luk Søg Søg KATEGORIER Afløb - kloak Stål og metaller Rør og fittings Køkken Hus og have Belysning El Artikler Badeværelse Varme og klima Solceller Nyhed Tilbud INFORMATION Jobs (0) Kundeservice Clik and Collect Åbningstider Billig VVS Webpay Handelsbetingelser KONTAKT OS VVS-Eksperten A / S Mimersvej 2 8722 Hedensted CVR no .: 25189000 Tel. 75 89 03 03 salg@vvs-eksperten.dk Afløb - kloak * Kloak arrow-right Kloakrør og fittings Kloak overgange Brønde Rensebrønd Dæksler og riste Opføringsrør Rottestop Nedsivning Højvandslukke * Afløb arrow-right Grå afløbsrør og grå afløbsfittings Hvid afløbsrør Lyddæmpet afløb Blücher rør Overgang til afløbsrør * Gulvafløb arrow-right Gulvafløb Lodret Gulvafløb Vandret Purus linjeafløb og hjørneafløb Blueline linjeafløb - Easy Drain hjørneafløb hansgrohe RainDrain Unidrain linje-, Kvadrat- og Hjørneafløb Blücher linjeafløb WaterLine & Art Deco Vandlås til gulvafløb Gulvriste Tilbehør til gulvafløb * Dræn arrow-right Dræn rør Dræn fittings Sokkel affugter * Faskine arrow-right * Afløbsrende arrow-right * Opsamling af regnvand arrow-right * Dykpumper arrow-right * Afløbspumpe arrow-right * Tilbehør til kloak og afløb arrow-right Stål og metaller * Stål arrow-right * Gevindrør arrow-right * Rustfrit stål arrow-right * Aluminium arrow-right Rør og fittings * Pex rør arrow-right Gulvvarme pex Isoleret pex rør Universal pex rør-i-rør Varmefordelingsplader Rionet - Armeringsnet Tilbehør til pex-rør * Pex Fittings arrow-right Pex-fittings Fordelerrør til pex-rør Koblingsdåse - Pex-dåse Tilbehør til koblingsdåse Roset til koblingsdåse * Alupex Rør og Fittings arrow-right Alupex Rør Wavin Tigris K5 Presfittings Wavin Tigris M5 Presfittings Alupex fittings Wavin Tigris K1 Presfittings Wavin Tigris M1 Presfittings Pres værktøj til Alupex * Press Rør og Fittings arrow-right Forzinket Press fittings Rustfrit Press fittings Press værktøj O-ringe til Press fittings * PEM Rør og Fittings arrow-right PEM Rør PP Fittings Messing Fittings til PEM rør Camkobling * Præisoleret Pex arrow-right * Kuglehaner og Ventiler arrow-right Kuglehaner - Mini kuglehane - Ballofix Snavssamler Udendørshaner - posteventiler Skydeventiler Reguleringsventiler Sikkerhedsventiler Overtryksventil Kontraventiler * Sort Fittings arrow-right * Galvaniseret Fittings arrow-right * Gevindrør - Jernrør arrow-right * Rødgods Fittings arrow-right * Messing Fittings arrow-right * Kobberrør og Kobber fittings arrow-right Kobberrør - Wicurør Kompressionsfittings til kobberrør og Pex-rør Loddefittings til kobberrør - Kobberfittings Tilbehør til kobberrør og kobberfittings * Rustfri Fittings arrow-right * Slange - Armeret slange - Industrislange arrow-right * Tilslutningsslanger - Flexibel slange arrow-right * Tilbehør til rør og fittings arrow-right Pakmidler Rørværktøj * Gabotherm arrow-right * Pipe Clamps arrow-right * Reparationsfittings arrow-right * PVC Limfittings arrow-right * Primofit og Rørsamler arrow-right * Spændebånd, slangeforskruning og slangekobling arrow-right * Gummipakninger arrow-right * Rørholder arrow-right * Rosetter arrow-right Køkken * Køkkenarmatur arrow-right Køkkenarmatur med C-tud Køkkenarmatur med L-tud Køkkenarmatur med U-tud Køkkenarmatur med lav tud Køkkenarmatur professionel Armatur vægmonteret Trykløst køkkenarmatur Kogende Armatur Armatur med Isvand og Brus Udløbstud svingtud Tilbehør til køkkenarmatur Reservedele til Køkkenarmatur * Køkkenvaske arrow-right * Udslagsvaske arrow-right * Vandlås, strainer og tilbehør til køkkenvask arrow-right * Sæbedispenser arrow-right * Kroge til viskestykker arrow-right * Køkkenkværn arrow-right * Stænkplader arrow-right * Emhætter arrow-right Skabsmodeller Væghængt emhætte Frithængende emhætter Loft modeller Emhætte til centralventilation Tilbehør til emhætter * Affaldsspand - Pedalspand arrow-right Solceller * Solcelle pakke, Solcelleanlæg arrow-right * Solcelle pakke til erhverv arrow-right * Solcellepanel til båd og autocamper arrow-right * Solcelle pakke med batteri, hybrid 3-faset solcelleanlæg arrow-right * Solcelle inverter og solcelle batteri arrow-right * Solcelle panel og solcelle tilbehør arrow-right * Solcelle tilslutning til solcellepaneler og inverter arrow-right * Solcelle beslag til solpaneler arrow-right * Manual til solcelleanlæg arrow-right Hus og have * Batterier arrow-right * Tagrender og Tag arrow-right Zink Tagrende Stål Tagrende Kobber Tagrende Plast Tagrende Tilbehør til tagrender Loddeværktøj og blikværktøj Vandtætning Inddækning Ovenbelysning Tagpap Taghætte * Vandforsyning arrow-right PEM Rør og fittings Vandmåler Blødgøringsanlæg Husvandværk Centrifugalpumpe og Dykpumpe Regnvandsopsamling Hydroforer Cirkulationspumpe til brugsvand Vand sikring Jordstopventil, Stophanedæksel og t-nøgle Kalkspalter Vandfiltre * Udendørshane arrow-right Reservedele til udendørshaner * Pool og tilbehør arrow-right * Haven - Terrassevarmer - Regnvandsbeholder arrow-right Opsamling regnvand Havevanding - Haveredskaber Regnvandsbeholder Terrassevarmer Øl køler - Køleboks Gasregulator - Gasbrænder - Gasvandvarmer * Sokkelaffugter - Sokkelrende arrow-right * Fugemasse og Lim arrow-right * Smart Home ZigBee arrow-right * Trafik og afspærring arrow-right * Havebelysning arrow-right * Udendørs sensor - Bevægelsesensor arrow-right * Værktøj arrow-right El-værktøj Sav, Hulsav, knive og Bajonetsav Skæreskiver Bits og Bor Håndværktøj Tænger værktøj Arbejdslamper - LED belysning Befæstigelse - Strips - Rawplugs Elektrikerværktøj Murerværktøj Værnemidler Olie og kemi * Luftværktøj og kompressor arrow-right * Rengøring og pleje arrow-right * Mobil Tilbehør arrow-right * Dørklokke - Røgalarm - Gasalarm - Vandalarm arrow-right Gas Alarm - Kulilte Alarm Dørklokke Vand Alarm Røgalarm Tyverialarm * Industri- og askestøvsugere arrow-right * Støvsugerposer arrow-right * Centralstøvsuger arrow-right Sistem Air Centralstøvsuger Nilfisk Centralstøvsuger og Nilfisk tilbehør Belysning * Lamper arrow-right Loftlamper og væglamper Pendel lamper Læselampe Badeværelsesbelysning Bordlamper Gulvlamper Klemlamper og Klemspots Tilbehør til lamper * LED Lys Skinne arrow-right Nordlux Strømskinne LED flexible strip Kronos LED skinne LED Skinne Indbygning Square 1F Strømskinne * Lysarmatur arrow-right * Lyskilder arrow-right T8 og T5 Lysstofrør T8 LED Lysrør E14 Pærer E27 pærer G9 pærer GU10 LED PL rør - kompaktrør LED pære 12V med G4, GU4, MR16 eller GU5.3 fatning * Spot - Downlight - Indbygningsspot arrow-right * Spot tilbehør og reservedele arrow-right * LED Projektør arrow-right * Spots IP44 Udendørs arrow-right * Væglamper udendørsbelysning arrow-right * Havelamper arrow-right * Tilbehør til havelamper arrow-right El Artikler * Lauritz Knudsen arrow-right LK FUGA LK OPUS 66 LK OPUS 73 LK OPUS 74 LK Mini Moduler LK CLIC'LINE IHC Control IHC Wireless LK Drejeafbryder IP44-55 Fuga Loftdåse Komfurudtag Lampeudtag * Stikkontakter og afbryder arrow-right Nordic Udendørs OPUS 73 Udendørs Stikkontakt for udvendig montage * El håndklædevarmer arrow-right * Føringsveje - Elektrikerrør arrow-right * El-radiator arrow-right * El Gulvvarme arrow-right * Installationskabler - Netværkskabler - Downlightledninger arrow-right Installationskabel - Jordkabel - Armeret kabel - PVL Lampeledning - Komfurkabel - Downlight - Gummikabel Patchkabel - Netværkskabel Antennekabel Varmekabel - Frostsikring Tilbehør til ledninger og kabel * Installation arrow-right Færdiglavet Boligtavler Gruppe og Målertavler Tavlemateriel 380/400V afbrydermateriel CEE materiel Befæstigelse Jordingsmateriel Samledåser og PG Forskruninger Data / EDB / Patchkabel * Bevægelsessensor arrow-right * Antenne arrow-right * El tilbehør - Stikprop, fatning og samlemuffer arrow-right Fatning Afbryder Forlængerledning - Forlængerled Stikprop Samlemuffe Stikdåser * Byggestrøm arrow-right * Kabelkanaler arrow-right * Dørklokker arrow-right * Columbus Tryk arrow-right * Batterier arrow-right * Motorværn arrow-right Badeværelse * Toilet arrow-right Gulvstående WC Væghængt toilet Douche Toilet Toiletsæder Bidét og tilbehør Toilet tilslutning Toilet tilbehør Reservedele til indbygningscisterne Toilet Reservedele Reservedele til toiletsæde * Håndvask arrow-right Håndvask til væg Håndvask til bordplade Stål håndvask Vaskemaskine med håndvask Bundventil til håndvask Vinkelstopventil og haner Bæring til håndvask Afløb til håndvask Vandlås til håndvask Tilslutningsslanger * Håndvaskarmatur arrow-right Håndvask Armatur Armatur med sensor - Elektronisk Høj håndvaskarmatur 2-grebs armatur Bidetarmatur Indbygningsarmatur Servantehane og standhane Tilbehør til håndvaskarmatur Reservedele til håndvaskarmatur * Bruser arrow-right Brusesæt Brusetermostat Brusesystem Badekar armatur Håndbruser Brusehoved Bruseslange Bidet Bruser Forskruninger og Rosetter Vandsparer Tilbehør til bruser Reservedele til bruser * Badekar arrow-right Bette badekar til indbygning Ifö badekar Fritstående badekar Kar armatur Tilbehør til badekar * Spabad arrow-right Tilbehør til Spabade * Bruseafskærmning på specialmål arrow-right Niche 1 - Svingdør Niche 2 - Saloondøre Niche 3 - dør/væg Niche 4 - dør på væg Niche 5 - væg/dør/dør Niche 6 - væg/dør/væg Niche 7 - væg/dør/dør/væg Hjørne 8 - væg/dør/væg Hjørne 9 - væg/dør Hjørne 10 - Svingdøre Hjørne 11 - væg/dør/dør Hjørne 12 - væg/dør/væg Hjørne 13 - væg/døre/væg Hjørne 14 - væg Lige væg 15 - Fritstående væg Væg til lige væg 16 - Fritstående væg * Brusekabine - Bruseniche - Brusedør arrow-right Brusekabine Brusedør - Nichedør Foldedør - Skydedør Brusevæg - Glasvæg Tilbehør til bruserum * Badeforhæng, Forhængsstænger og Bademåtter arrow-right Badeforhæng Forhængsstænger Måtte til bruser Ringe til badeforhæng Vand-Stop liste * Dansani Baderumsmøbler arrow-right * Baderumsmøbler arrow-right * Badeværelsestilbehør - Interiør arrow-right Badeværelsestilbehør selvklæbende eller lim Badeværelsestilbehør Håndklædekrog Håndklædestang Toiletpapirholder Toiletbørste Hylde til badeværelse Bruseskraber - Badeskraber - Vægskraber Sæbedispenser Sæbeskål, Sæbemagnet og Sæbeholder Tand krus Greb - støttegreb - badekarsgreb Papir dispenser touchfree hansgrohe WallStoris hansgrohe XtraStoris hansgrohe AddStoris * Toiletspand - Pedalspand arrow-right * Spejle på mål arrow-right * Spejl, spejlskabe og spejle på specialmål arrow-right Rundt spejl Spejl med LED Spejl til badeværelse Spejlbeslag Spejl med skab Kosmetikspejl, makeupspejl og barberspejl * Håndklædetørrer arrow-right Håndklædetørrer El håndklædetørrer Varmelegeme til håndklædetørrer Ventilsæt til håndklædetørre * Badestol - taburet - klapsæde arrow-right * Afløbspumper arrow-right * Rengøring til badeværelse arrow-right * Urinaler arrow-right * Børne Sanitet arrow-right * Vaskemaskine arrow-right Varme og klima * Radiatorventiler og Termostater arrow-right Smart varme Saswell Smart varme Danfoss Ally Termostat Danfoss Ventiler Danfoss Termostat Honeywell Termostat TRV Nordic Termostat Wavin Tilslutning til radiator Ventil og Termostat Ventil tilbehør Danfoss Prop og Luftskrue Roset til radiator Rørskjuler til radiator * Varmepumpe arrow-right Varmepumpe Luft/Luft Varmepumpe sæt Varmepumpe Luft/Vand Jordvarme sæt Jordvarme Jordvarmeslange Akku tank og varmtvandsbeholder Tilbehør til luft/luft varmepumpe Tilbehør til luft/vand varmepumpe Tilbehør til jordvarme Pool Varmepumpe Kabelkanal til varmepumpe * Varmtvandsbeholder arrow-right Gennemstrømningsvandvarmer el Gennemstrømsvandvarmer til gas Varmtvandsbeholder til centralvarme Varmtvandsbeholder til fjernvarme Combi varmtvandsbeholder El Vandvarmer Gennemstrømningsvandvarmer fjernvarme Tilbehør til varmtvandsbeholder * Radiator arrow-right Bæringer til radiator Radiator Heizrad Søjleradiator Lavkonvektor Vertikal Radiator - Design Radiator - Lodret Radiator Luft Radiator EL-radiator Håndklædetørrer * Varmekilder arrow-right Pillefyr - Stoker kalorifere til træpiller Fastbrændsel Pilleovn - Pillebrændeovn Varmevekslere Gaskedler Bosch El-unit Oliebrænder og tilbehør Brændeovn * Gulvvarme arrow-right Gulvvarmesæt Rumtermostat Fortrådet Rumtermostat Trådløs Tilbehør til gulvvarmeslange Gulvvarmeslange Varmefordelingsplader MiniHeat El Gulvvarme Pumpeshunt Fordelerrør Gulvvarme Telestat - Termomotor Styreboks til gulvvarme * Cirkulationspumpe arrow-right * Ventilation arrow-right Ventilationsrør og Fittings Montage og fastgørelse Taghætter, Inddækning og gennemføring Friskluftventiler, udsugnings- og indblæsningsventiler Ventilationsanlæg Pakkeløsninger - Ventilationsanlæg Kanalventilator, rørventilator og vådrumsventilator Loftsventilator og Bordventilator Mobil Aircondition Varmeflader Tilbehør til ventilation Filter til ventilationsanlæg * Solenergi solvarme arrow-right Solfangersæt Solfanger og vacuum solpanel Solvarme vvb og solpanel styring Solvarme tilbehør og reservedele * Skorsten arrow-right Stålforing til skorstenen Komplette skorstenspakker Røgrør Stålskorsten Schiedel Isokern Tilbehør til skorsten * Glassnor arrow-right * Rørisolering arrow-right Rørskåle Isoleringskappe til fordelerrør Isoleringskappe til fjernvarmerør Lamelmåtter Tilbehør til isolering * Ekspansionsbeholder arrow-right Tryk Ekspansion Åben Ekspansion * Akku tanke arrow-right * Kalorifere arrow-right * Fleksibel slanger arrow-right * Ventiler arrow-right Automat udlufter - Luftudlader Reguleringsventil - Strengreguleringsventil Laddomat Ladeventil Termostatisk Ventil Trykreduktionsventil Zone-, Shunt- og blandeventil * Varme Automatik arrow-right * Energimåler arrow-right * Termo- og manometer arrow-right * Olietanke - Kontakt kundeservice vedr. bestilling arrow-right * Ildfast sten Skamol arrow-right * Sprinklerdyse arrow-right * Frostsikring arrow-right Nyhed Tilbud MIN INDKØBSKURV x Subtotal: Til kassen | VVS-Eksperten eller Se og rediger indkøbskurv x Logind og bestil Email Adgangskode Log ind Glemt din adgangskode? Bestil som ny kunde Oprettelse af en konto har mange fordele: * Se ordre og leveringsstatus * Følg dine ordrer * Bestil hurtigere Opret en konto Menu Butikker Log ind Søg Søg Indkøbskurv Kurv 0 Luk Søg Søg KATEGORIER Afløb - kloak Stål og metaller Rør og fittings Køkken Hus og have Belysning El Artikler Badeværelse Varme og klima Solceller Nyhed Tilbud INFORMATION Jobs (0) Kundeservice Clik and Collect Åbningstider Billig VVS Webpay Handelsbetingelser KONTAKT OS VVS-Eksperten A / S Mimersvej 2 8722 Hedensted CVR no .: 25189000 Tel. 75 89 03 03 salg@vvs-eksperten.dk Afløb - kloak * Kloak arrow-right Kloakrør og fittings Kloak overgange Brønde Rensebrønd Dæksler og riste Opføringsrør Rottestop Nedsivning Højvandslukke * Afløb arrow-right Grå afløbsrør og grå afløbsfittings Hvid afløbsrør Lyddæmpet afløb Blücher rør Overgang til afløbsrør * Gulvafløb arrow-right Gulvafløb Lodret Gulvafløb Vandret Purus linjeafløb og hjørneafløb Blueline linjeafløb - Easy Drain hjørneafløb hansgrohe RainDrain Unidrain linje-, Kvadrat- og Hjørneafløb Blücher linjeafløb WaterLine & Art Deco Vandlås til gulvafløb Gulvriste Tilbehør til gulvafløb * Dræn arrow-right Dræn rør Dræn fittings Sokkel affugter * Faskine arrow-right * Afløbsrende arrow-right * Opsamling af regnvand arrow-right * Dykpumper arrow-right * Afløbspumpe arrow-right * Tilbehør til kloak og afløb arrow-right Stål og metaller * Stål arrow-right * Gevindrør arrow-right * Rustfrit stål arrow-right * Aluminium arrow-right Rør og fittings * Pex rør arrow-right Gulvvarme pex Isoleret pex rør Universal pex rør-i-rør Varmefordelingsplader Rionet - Armeringsnet Tilbehør til pex-rør * Pex Fittings arrow-right Pex-fittings Fordelerrør til pex-rør Koblingsdåse - Pex-dåse Tilbehør til koblingsdåse Roset til koblingsdåse * Alupex Rør og Fittings arrow-right Alupex Rør Wavin Tigris K5 Presfittings Wavin Tigris M5 Presfittings Alupex fittings Wavin Tigris K1 Presfittings Wavin Tigris M1 Presfittings Pres værktøj til Alupex * Press Rør og Fittings arrow-right Forzinket Press fittings Rustfrit Press fittings Press værktøj O-ringe til Press fittings * PEM Rør og Fittings arrow-right PEM Rør PP Fittings Messing Fittings til PEM rør Camkobling * Præisoleret Pex arrow-right * Kuglehaner og Ventiler arrow-right Kuglehaner - Mini kuglehane - Ballofix Snavssamler Udendørshaner - posteventiler Skydeventiler Reguleringsventiler Sikkerhedsventiler Overtryksventil Kontraventiler * Sort Fittings arrow-right * Galvaniseret Fittings arrow-right * Gevindrør - Jernrør arrow-right * Rødgods Fittings arrow-right * Messing Fittings arrow-right * Kobberrør og Kobber fittings arrow-right Kobberrør - Wicurør Kompressionsfittings til kobberrør og Pex-rør Loddefittings til kobberrør - Kobberfittings Tilbehør til kobberrør og kobberfittings * Rustfri Fittings arrow-right * Slange - Armeret slange - Industrislange arrow-right * Tilslutningsslanger - Flexibel slange arrow-right * Tilbehør til rør og fittings arrow-right Pakmidler Rørværktøj * Gabotherm arrow-right * Pipe Clamps arrow-right * Reparationsfittings arrow-right * PVC Limfittings arrow-right * Primofit og Rørsamler arrow-right * Spændebånd, slangeforskruning og slangekobling arrow-right * Gummipakninger arrow-right * Rørholder arrow-right * Rosetter arrow-right Køkken * Køkkenarmatur arrow-right Køkkenarmatur med C-tud Køkkenarmatur med L-tud Køkkenarmatur med U-tud Køkkenarmatur med lav tud Køkkenarmatur professionel Armatur vægmonteret Trykløst køkkenarmatur Kogende Armatur Armatur med Isvand og Brus Udløbstud svingtud Tilbehør til køkkenarmatur Reservedele til Køkkenarmatur * Køkkenvaske arrow-right * Udslagsvaske arrow-right * Vandlås, strainer og tilbehør til køkkenvask arrow-right * Sæbedispenser arrow-right * Kroge til viskestykker arrow-right * Køkkenkværn arrow-right * Stænkplader arrow-right * Emhætter arrow-right Skabsmodeller Væghængt emhætte Frithængende emhætter Loft modeller Emhætte til centralventilation Tilbehør til emhætter * Affaldsspand - Pedalspand arrow-right Solceller * Solcelle pakke, Solcelleanlæg arrow-right * Solcelle pakke til erhverv arrow-right * Solcellepanel til båd og autocamper arrow-right * Solcelle pakke med batteri, hybrid 3-faset solcelleanlæg arrow-right * Solcelle inverter og solcelle batteri arrow-right * Solcelle panel og solcelle tilbehør arrow-right * Solcelle tilslutning til solcellepaneler og inverter arrow-right * Solcelle beslag til solpaneler arrow-right * Manual til solcelleanlæg arrow-right Hus og have * Batterier arrow-right * Tagrender og Tag arrow-right Zink Tagrende Stål Tagrende Kobber Tagrende Plast Tagrende Tilbehør til tagrender Loddeværktøj og blikværktøj Vandtætning Inddækning Ovenbelysning Tagpap Taghætte * Vandforsyning arrow-right PEM Rør og fittings Vandmåler Blødgøringsanlæg Husvandværk Centrifugalpumpe og Dykpumpe Regnvandsopsamling Hydroforer Cirkulationspumpe til brugsvand Vand sikring Jordstopventil, Stophanedæksel og t-nøgle Kalkspalter Vandfiltre * Udendørshane arrow-right Reservedele til udendørshaner * Pool og tilbehør arrow-right * Haven - Terrassevarmer - Regnvandsbeholder arrow-right Opsamling regnvand Havevanding - Haveredskaber Regnvandsbeholder Terrassevarmer Øl køler - Køleboks Gasregulator - Gasbrænder - Gasvandvarmer * Sokkelaffugter - Sokkelrende arrow-right * Fugemasse og Lim arrow-right * Smart Home ZigBee arrow-right * Trafik og afspærring arrow-right * Havebelysning arrow-right * Udendørs sensor - Bevægelsesensor arrow-right * Værktøj arrow-right El-værktøj Sav, Hulsav, knive og Bajonetsav Skæreskiver Bits og Bor Håndværktøj Tænger værktøj Arbejdslamper - LED belysning Befæstigelse - Strips - Rawplugs Elektrikerværktøj Murerværktøj Værnemidler Olie og kemi * Luftværktøj og kompressor arrow-right * Rengøring og pleje arrow-right * Mobil Tilbehør arrow-right * Dørklokke - Røgalarm - Gasalarm - Vandalarm arrow-right Gas Alarm - Kulilte Alarm Dørklokke Vand Alarm Røgalarm Tyverialarm * Industri- og askestøvsugere arrow-right * Støvsugerposer arrow-right * Centralstøvsuger arrow-right Sistem Air Centralstøvsuger Nilfisk Centralstøvsuger og Nilfisk tilbehør Belysning * Lamper arrow-right Loftlamper og væglamper Pendel lamper Læselampe Badeværelsesbelysning Bordlamper Gulvlamper Klemlamper og Klemspots Tilbehør til lamper * LED Lys Skinne arrow-right Nordlux Strømskinne LED flexible strip Kronos LED skinne LED Skinne Indbygning Square 1F Strømskinne * Lysarmatur arrow-right * Lyskilder arrow-right T8 og T5 Lysstofrør T8 LED Lysrør E14 Pærer E27 pærer G9 pærer GU10 LED PL rør - kompaktrør LED pære 12V med G4, GU4, MR16 eller GU5.3 fatning * Spot - Downlight - Indbygningsspot arrow-right * Spot tilbehør og reservedele arrow-right * LED Projektør arrow-right * Spots IP44 Udendørs arrow-right * Væglamper udendørsbelysning arrow-right * Havelamper arrow-right * Tilbehør til havelamper arrow-right El Artikler * Lauritz Knudsen arrow-right LK FUGA LK OPUS 66 LK OPUS 73 LK OPUS 74 LK Mini Moduler LK CLIC'LINE IHC Control IHC Wireless LK Drejeafbryder IP44-55 Fuga Loftdåse Komfurudtag Lampeudtag * Stikkontakter og afbryder arrow-right Nordic Udendørs OPUS 73 Udendørs Stikkontakt for udvendig montage * El håndklædevarmer arrow-right * Føringsveje - Elektrikerrør arrow-right * El-radiator arrow-right * El Gulvvarme arrow-right * Installationskabler - Netværkskabler - Downlightledninger arrow-right Installationskabel - Jordkabel - Armeret kabel - PVL Lampeledning - Komfurkabel - Downlight - Gummikabel Patchkabel - Netværkskabel Antennekabel Varmekabel - Frostsikring Tilbehør til ledninger og kabel * Installation arrow-right Færdiglavet Boligtavler Gruppe og Målertavler Tavlemateriel 380/400V afbrydermateriel CEE materiel Befæstigelse Jordingsmateriel Samledåser og PG Forskruninger Data / EDB / Patchkabel * Bevægelsessensor arrow-right * Antenne arrow-right * El tilbehør - Stikprop, fatning og samlemuffer arrow-right Fatning Afbryder Forlængerledning - Forlængerled Stikprop Samlemuffe Stikdåser * Byggestrøm arrow-right * Kabelkanaler arrow-right * Dørklokker arrow-right * Columbus Tryk arrow-right * Batterier arrow-right * Motorværn arrow-right Badeværelse * Toilet arrow-right Gulvstående WC Væghængt toilet Douche Toilet Toiletsæder Bidét og tilbehør Toilet tilslutning Toilet tilbehør Reservedele til indbygningscisterne Toilet Reservedele Reservedele til toiletsæde * Håndvask arrow-right Håndvask til væg Håndvask til bordplade Stål håndvask Vaskemaskine med håndvask Bundventil til håndvask Vinkelstopventil og haner Bæring til håndvask Afløb til håndvask Vandlås til håndvask Tilslutningsslanger * Håndvaskarmatur arrow-right Håndvask Armatur Armatur med sensor - Elektronisk Høj håndvaskarmatur 2-grebs armatur Bidetarmatur Indbygningsarmatur Servantehane og standhane Tilbehør til håndvaskarmatur Reservedele til håndvaskarmatur * Bruser arrow-right Brusesæt Brusetermostat Brusesystem Badekar armatur Håndbruser Brusehoved Bruseslange Bidet Bruser Forskruninger og Rosetter Vandsparer Tilbehør til bruser Reservedele til bruser * Badekar arrow-right Bette badekar til indbygning Ifö badekar Fritstående badekar Kar armatur Tilbehør til badekar * Spabad arrow-right Tilbehør til Spabade * Bruseafskærmning på specialmål arrow-right Niche 1 - Svingdør Niche 2 - Saloondøre Niche 3 - dør/væg Niche 4 - dør på væg Niche 5 - væg/dør/dør Niche 6 - væg/dør/væg Niche 7 - væg/dør/dør/væg Hjørne 8 - væg/dør/væg Hjørne 9 - væg/dør Hjørne 10 - Svingdøre Hjørne 11 - væg/dør/dør Hjørne 12 - væg/dør/væg Hjørne 13 - væg/døre/væg Hjørne 14 - væg Lige væg 15 - Fritstående væg Væg til lige væg 16 - Fritstående væg * Brusekabine - Bruseniche - Brusedør arrow-right Brusekabine Brusedør - Nichedør Foldedør - Skydedør Brusevæg - Glasvæg Tilbehør til bruserum * Badeforhæng, Forhængsstænger og Bademåtter arrow-right Badeforhæng Forhængsstænger Måtte til bruser Ringe til badeforhæng Vand-Stop liste * Dansani Baderumsmøbler arrow-right * Baderumsmøbler arrow-right * Badeværelsestilbehør - Interiør arrow-right Badeværelsestilbehør selvklæbende eller lim Badeværelsestilbehør Håndklædekrog Håndklædestang Toiletpapirholder Toiletbørste Hylde til badeværelse Bruseskraber - Badeskraber - Vægskraber Sæbedispenser Sæbeskål, Sæbemagnet og Sæbeholder Tand krus Greb - støttegreb - badekarsgreb Papir dispenser touchfree hansgrohe WallStoris hansgrohe XtraStoris hansgrohe AddStoris * Toiletspand - Pedalspand arrow-right * Spejle på mål arrow-right * Spejl, spejlskabe og spejle på specialmål arrow-right Rundt spejl Spejl med LED Spejl til badeværelse Spejlbeslag Spejl med skab Kosmetikspejl, makeupspejl og barberspejl * Håndklædetørrer arrow-right Håndklædetørrer El håndklædetørrer Varmelegeme til håndklædetørrer Ventilsæt til håndklædetørre * Badestol - taburet - klapsæde arrow-right * Afløbspumper arrow-right * Rengøring til badeværelse arrow-right * Urinaler arrow-right * Børne Sanitet arrow-right * Vaskemaskine arrow-right Varme og klima * Radiatorventiler og Termostater arrow-right Smart varme Saswell Smart varme Danfoss Ally Termostat Danfoss Ventiler Danfoss Termostat Honeywell Termostat TRV Nordic Termostat Wavin Tilslutning til radiator Ventil og Termostat Ventil tilbehør Danfoss Prop og Luftskrue Roset til radiator Rørskjuler til radiator * Varmepumpe arrow-right Varmepumpe Luft/Luft Varmepumpe sæt Varmepumpe Luft/Vand Jordvarme sæt Jordvarme Jordvarmeslange Akku tank og varmtvandsbeholder Tilbehør til luft/luft varmepumpe Tilbehør til luft/vand varmepumpe Tilbehør til jordvarme Pool Varmepumpe Kabelkanal til varmepumpe * Varmtvandsbeholder arrow-right Gennemstrømningsvandvarmer el Gennemstrømsvandvarmer til gas Varmtvandsbeholder til centralvarme Varmtvandsbeholder til fjernvarme Combi varmtvandsbeholder El Vandvarmer Gennemstrømningsvandvarmer fjernvarme Tilbehør til varmtvandsbeholder * Radiator arrow-right Bæringer til radiator Radiator Heizrad Søjleradiator Lavkonvektor Vertikal Radiator - Design Radiator - Lodret Radiator Luft Radiator EL-radiator Håndklædetørrer * Varmekilder arrow-right Pillefyr - Stoker kalorifere til træpiller Fastbrændsel Pilleovn - Pillebrændeovn Varmevekslere Gaskedler Bosch El-unit Oliebrænder og tilbehør Brændeovn * Gulvvarme arrow-right Gulvvarmesæt Rumtermostat Fortrådet Rumtermostat Trådløs Tilbehør til gulvvarmeslange Gulvvarmeslange Varmefordelingsplader MiniHeat El Gulvvarme Pumpeshunt Fordelerrør Gulvvarme Telestat - Termomotor Styreboks til gulvvarme * Cirkulationspumpe arrow-right * Ventilation arrow-right Ventilationsrør og Fittings Montage og fastgørelse Taghætter, Inddækning og gennemføring Friskluftventiler, udsugnings- og indblæsningsventiler Ventilationsanlæg Pakkeløsninger - Ventilationsanlæg Kanalventilator, rørventilator og vådrumsventilator Loftsventilator og Bordventilator Mobil Aircondition Varmeflader Tilbehør til ventilation Filter til ventilationsanlæg * Solenergi solvarme arrow-right Solfangersæt Solfanger og vacuum solpanel Solvarme vvb og solpanel styring Solvarme tilbehør og reservedele * Skorsten arrow-right Stålforing til skorstenen Komplette skorstenspakker Røgrør Stålskorsten Schiedel Isokern Tilbehør til skorsten * Glassnor arrow-right * Rørisolering arrow-right Rørskåle Isoleringskappe til fordelerrør Isoleringskappe til fjernvarmerør Lamelmåtter Tilbehør til isolering * Ekspansionsbeholder arrow-right Tryk Ekspansion Åben Ekspansion * Akku tanke arrow-right * Kalorifere arrow-right * Fleksibel slanger arrow-right * Ventiler arrow-right Automat udlufter - Luftudlader Reguleringsventil - Strengreguleringsventil Laddomat Ladeventil Termostatisk Ventil Trykreduktionsventil Zone-, Shunt- og blandeventil * Varme Automatik arrow-right * Energimåler arrow-right * Termo- og manometer arrow-right * Olietanke - Kontakt kundeservice vedr. bestilling arrow-right * Ildfast sten Skamol arrow-right * Sprinklerdyse arrow-right * Frostsikring arrow-right Nyhed Tilbud WEEKEND BASKER! chevron-left chevron-right chevron-left chevron-right Weekend Basker - spar 15% Outfit terrassevarmer 317210520 * Stor reflektorskærm * Elektronisk tænding * Med hjul 1.948,- Førpris: 2.298,- Læs mere Køb heart Weekend Basker - spar 15% Copmax montagesæt t/ 3,5 kW 346761400 Varmepumpe montagepakke: * Copmax rørsæt 5 meter * Jordstativ regulerbart lav model * Kondensslange 5 meter * Kabelkanal vægtilslutning * Kabelkanal 2 meter * Vibrationsdæmpersæt * Murgennemføring 1.249,- Førpris: 1.470,- Læs mere Køb heart Weekend Basker - spar 15% Nmt Sani 25-40N-130mm cirkulationspumpe 380634002 * Kort byggelængde 130mm * Messing pumpehus * Til brugsvand * 5 års garanti 1.347,- Førpris: 1.585,- Læs mere Køb heart Weekend Basker - spar 15% Copmax Lomo varmepumpe luft/luft 3,5 kW 346760A10 * SCOP 4,10 * R32 Kølemiddel * Inkl. fjernbetjening * Indbygget WiFi 3.795,- Førpris: 4.495,- A+ Produktdatablad Læs mere Køb heart Weekend Basker - spar 15% Pannex ECO El vandvarmer Til både 230V samt 400V * 80 Liter * 100 Liter * 140 Liter Pris fra: 2.937,- Førpris: 3.456,- C Produktdatablad Flere varianter heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 chevron-right SKARPE SOMMERTILBUD FRA VVS-EKSPERTEN - KUN KORT TID! chevron-left chevron-right chevron-left chevron-right Sommertilbud - spar 16% Whisky Regnvandstønde 273044055 * Inkl. aftapshane og låg * 240 Liter 1.149,- Førpris: 1.372,- Læs mere Køb heart Sommertilbud - spar 24% Garden Solbruser 273042189 * Vandbeholder 20 liter * Med blandingsbatteri * Højde 227 cm * Udendørsbruser 995,- Førpris: 1.315,- Læs mere Køb heart Sommertilbud - spar 15% Cool Well Øl køler 273046000 * Til 24 dåser og 1 flaske vin * Hurtig vej til kolde drikke * Udnytte jordens køling 389,- Førpris: 459,- Læs mere Køb heart Sommertilbud - spar 30% Swim & Fun komplet poolpakke 669994660 * 17450 Liter * Diameter 4,6 m * Komplet poolpakke 3.495,- Førpris: 4.999,- Læs mere Køb heart Sommertilbud - spar 36% Bestway familiepool 669994650 * Oppustelig * 450 Liter 159,- Førpris: 249,- Læs mere Køb heart Sommertilbud - spar 34% Mobil Aircondition, affugter op til 19m² AIRCON7000 * Ventilation * 24 timers-timer * Køling 10-15m² * Affugter op til 19m² * Energiklasse A 1.449,- Førpris: 2.217,- A Produktdatablad Læs mere Køb heart Sommertilbud - spar 21% Atlanta udendørsbruser med hovedbruser & kartud 722255A10 * ø200mm Hovedbruser * ø100mm Håndbruser 695,- Førpris: 888,- Læs mere Køb heart Sommertilbud - spar 20% Swim & Fun Solvarme XP2 til Pool 669994700 * Gratis miljøvenlig varme * Hæver temperaturen 3-5° 395,- Førpris: 499,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 chevron-right HAR DU BRUG FOR NEDKØLING PÅ EN VARM SOMMERDAG? chevron-left chevron-right Mobil Aircondition 9000 AIRCON9000 * Ventilation * 24 timers-timer * Køling 10-15m² * Affugte op til 19m² * Energiklasse A 2.151,- Pris i butik: 2.217,- A Produktdatablad Læs mere Køb heart Bordventilator 80000014010 Nedkøling på en varm sommerdag * 3 Hastigheder * Med rotations mulighed 151,- Pris i butik: 159,- Læs mere Køb heart Ventilator tårn 45w - Højde 790 mm 80000014025 * Roterer 90º * Dækker op til 8 m * 3 hastigheder 296,- Pris i butik: 312,- Læs mere Køb heart Hi-Line Plus loftsventilator 1400mm - 15000 m³/h 354329980 * Vingediameter 1400 mm * Excl. styring 1.217,- Pris i butik: 1.269,- Læs mere Køb heart chevron-left chevron-right OPVARMNING AF SOMMERHUS! SE UDVALGET VED VVS-EKSPERTEN chevron-left chevron-right DVI Mini gulvvarmshunt til fjernvarme og centralvarme 046558430 * Manuel styring * Til centralvarme (2bar) * Til fjernvarme (10bar) 3.137,- Pris i butik: 3.235,- Læs mere Køb heart Weekend Basker - spar 15% Copmax Lomo varmepumpe luft/luft 3,5 kW 346760A10 * SCOP 4,10 * R32 Kølemiddel * Inkl. fjernbetjening * Indbygget WiFi 3.795,- Førpris: 4.495,- A+ Produktdatablad Læs mere Køb heart Elsa pilleovn m/14 kg pillemagasin 305502A10 * Effekt 2,5 - 8,0 kW * Vandret aftræk 8.245,- A+ Produktdatablad Læs mere Køb heart Sargas 3 Brændeovn 306019A20 * Op til 81% virkningsgrad * Flere tilslutningsmuligheder * Med side glas 16.553,- A+ Produktdatablad Læs mere Køb heart Blæser til brændeovn 306021A10 Virker ved ca. 60 °C 255,- Pris i butik: 269,- Læs mere Køb heart Vento Pellet skorstenspakke udvendig - 3 meter ø150mm 317332E10 * Udvendig gennem væg * I soleret skorsten * ø150/250mm * Total 3 meter 11.425,- Læs mere Køb heart Glas gulvplade til brændeovn fladbue 306020000 M/ poleret kant 950,- Pris i butik: 1.004,- Læs mere Køb heart ADAX VPS Varmepanel IP24 * Vælg mellem 400W til 1000W * m/ledning og vægbeslag * Digital termostat * Højde 325 mm Pris fra: 899,- Flere varianter heart Varmeflytningssæt 2 rum m/Kanalventilator 240 m³/h VF2RUM * Flytter overskudsvarmen * Kanalventilator 240 m³/h * 3 stk. loftventiler 2.280,- Pris i butik: 2.351,- Læs mere Køb heart Sommertilbud - spar 34% Mobil Aircondition, affugter op til 19m² AIRCON7000 * Ventilation * 24 timers-timer * Køling 10-15m² * Affugter op til 19m² * Energiklasse A 1.449,- Førpris: 2.217,- A Produktdatablad Læs mere Køb heart 1-rums varmegenvinding 353425100 Boligventilation * Støjniveau 10-29dB * Forbrug 1,2-2,6W * Varmegenvinding 25m³/h * Frisk luft - lavt varmetab * Skiftevis ind- og udsugning 2.046,- Pris i butik: 2.109,- Læs mere Køb heart Dantherm RCV 320 ventilationspakke 100 m² GENPAK6 * Komplet til 100 m² * Dantherm RCV 320 * Med faste spirorør 19.995,- Læs mere Køb heart chevron-left chevron-right NØDBEREDSKAB, KAN DU KLARE DIG UDEN STRØM? chevron-left chevron-right SÅ LÆNGE LAGER HAVES - spar 50% Pandelampe LED 245010120 * Med 4 indstillinger * Excl. 3 stk. AAA batteri 39,50 Førpris: 79,- Læs mere Køb heart Maxell Batteri Aa - 32 Stk 80000019107 Super Alkaline LR6 99,- Pris i butik: 105,- Læs mere Køb heart Skarp pris! Solar Panel Swp50w 902015050 * Ideel til båddæk og autocamper * 50 Watt solpanel * Excl. batteri 399,- Pris i butik: 420,- Læs mere Køb heart Pannex Gasvandvarmer & udebruser 345010A10 * Kun til udendørs brug * Tilsluttes flaskegas 1.519,- Pris i butik: 1.582,- Læs mere Køb heart Sommertilbud - spar 15% Cool Well Øl køler 273046000 * Til 24 dåser og 1 flaske vin * Hurtig vej til kolde drikke * Udnytte jordens køling 389,- Førpris: 459,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 22% Håndsprit med glycerin 85% 250 ml 513000000 God håndhygiejne vigtigt Med glycerin 34,95 Førpris: 45,- Læs mere Køb heart Outfit terrassevarmer til gas 317210500 * Stor reflektorskærm * Trinløs varmeregulering * Elektronisk tænding * Sort * 13 kW 1.399,- Pris i butik: 1.458,- Læs mere Køb heart Engangshandsker 252414175 * Pakning med 100 stk. * Universal 19,- Læs mere Køb heart 112 Brandslukker 400ml 245011112 * Sikkerhed ved havegrill og brændeovn * Nem at bruge * Meget effektiv 219,- Læs mere Køb heart Røgalarm 300 Value med 9v batteri 80277100000 * Incl. 9V batteri * Optisk røgalarm 47,- Pris i butik: 50,- Læs mere Køb heart Blæser til brændeovn 306021A10 Virker ved ca. 60 °C 255,- Pris i butik: 269,- Læs mere Køb heart Sargas 1 Brændeovn 306019A10 * Op til 81% virkningsgrad * Flere tilslutningsmuligheder * Moderne design 15.788,- A+ Produktdatablad Læs mere Køb heart Fejebakkesæt 000000030 Til rengøring 24,- Læs mere Køb heart Ugens Skarpe - spar 15% Vandalarm Inkl. 9v Batteri 340150325 Responstid >7 sek. 68,- Førpris: 80,- Læs mere Køb heart Tec7 Powerwipes renseservietter med glycerin - 50 stk. 271449008 * Ekstremt kraftige * Renseservietter * Med glycerin * 50 stk. 160,- Pris i butik: 169,- Læs mere Køb heart Smart Lommelygte Kit 3-in-1 80000075020 * Smart lommelygte kit * Zoom lygtehoved * Slim LED stav * Fleksibel LED 460,- Læs mere Køb heart Maxell LR03 Batteri AAA - Pakke med 32 stk. 80000019103 Super Alkaline LR03 99,- Pris i butik: 105,- Læs mere Køb heart Arbejdslampe Led Foldbar 80000075000 Excl. batteri 4x AA 94,- Pris i butik: 99,- Læs mere Køb heart LED Arbejdslampe med krog 245010045 Magnet og krog på bagsiden 20,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 37% Lommelygte led 140 lumen 245010130 Excl. 3 stk. aaa batteri 14,95 Førpris: 24,- Læs mere Køb heart Lommelygte led 300 lumen 245010140 Excl. 4 stk. aaa batteri 79,- Pris i butik: 85,- Læs mere Køb heart Sargas 3 Brændeovn 306019A20 * Op til 81% virkningsgrad * Flere tilslutningsmuligheder * Med side glas 16.553,- A+ Produktdatablad Læs mere Køb heart Weekend Basker - spar 15% Outfit terrassevarmer 317210520 * Stor reflektorskærm * Elektronisk tænding * Med hjul 1.948,- Førpris: 2.298,- Læs mere Køb heart Skarp pris! Solar panel SWP100W solcellepanel 902015100 * Ideel til båddæk og autocamper * 100 Watt solpanel * Excl. batteri 792,- Pris i butik: 825,- Læs mere Køb heart Skarp pris! Solar panelstyring MPPT 30A 902015330 * Laderegulator til solcelle * Incl. 2 stk. USB-A oplader 599,- Pris i butik: 625,- Læs mere Køb heart Skarp pris! Solar panelstyring 10A PWM 902015310 * Laderegulator til solcelle * Incl. 2 stk. USB-A oplader 270,- Pris i butik: 285,- Læs mere Køb heart Pulverslukker Ildslukker Vælg mellem * 1 Kg * 2 Kg * 6 Kg Pris fra: 113,- Flere varianter heart Tec7 Powerwipes renseservietter med glycerin - 70 stk. 271447470 * Ekstremt kraftige * Renseservietter * Med glycerin * 70 stk. 222,- Pris i butik: 234,- Læs mere Køb heart chevron-left chevron-right STORT UDVALG AF ELARTIKLER TIL LAVE PRISER! chevron-left chevron-right El-Max Gruppetavle Stænktæt Stænktæt IP65 Pris fra: 46,- Flere varianter heart Automatsikring 1p+n 13a/c 85322428099 Type C 24,- Pris i butik: 26,- Læs mere Køb heart Ugens Skarpe - spar 10% Installationskabel 3G1,5 mm² 89833586998 * 50 meter 289,- Førpris: 324,- Læs mere Køb heart Forgreningsdåse ø65mm 80000040005 IP65 8,- Pris i butik: 9,- Læs mere Køb heart Kabelrør PEH rør - Metermål * Vælg mellem flere størrelser * Metermål, ingen returret Pris fra: 17,- Flere varianter heart Loftdåse Pl F/pladeloft 55mm 81020007516 Velegnet til * Lampeudtag * Lampestikkontakt * På- eller indbygning af armatur 67,- Pris i butik: 72,- Læs mere Køb heart Fuga AIR forfradåse til Teknisk monteringsramme * Til Teknisk monteringsramme * Passer på Fuga rammer Pris fra: 28,- Flere varianter heart Fuga AIR indmuringsdåse til Teknisk monteringsramme * Til Teknisk monteringsramme * Passer på Fuga rammer Pris fra: 15,- Flere varianter heart LK Fuga indmuringsdåse Dybde 37,5 mm * Til Teknisk monteringsramme * Passer på Fuga rammer * Dybde 37,5 mm Pris fra: 16,- Flere varianter heart Stikk Fuga 1m 2p+j Hvid Tp1 81017041679 * Hvid * 1 modul * Indsats og front * 2-pol med jord 98,- Pris i butik: 104,- Læs mere Køb heart LK FUGA indsats 16 A afbryder 1-pol Indsats og front Vælg mellem * Hvid * Koksgrå * Lysegrå Pris fra: 61,- Flere varianter heart Fuga lysdæmper LED-S 120 VA korrespondance Vælg mellem * Hvid * Lysegrå * Koksgrå Pris fra: 658,- Flere varianter heart LK Fuga SOFT 63 designramme 1 modul Vælg mellem * Hvid * Lysegrå * Koksgrå * Stålmetallic Pris fra: 12,- Flere varianter heart 5G2,5mm² Installationskabel halogenfri Vælg mellem * Metermål, ingen returret * 100 meter rulle Pris fra: 23,- Flere varianter heart Kabelforskruning - Forskruninger * Størrelser fra M16 til M25 Pris fra: 7,- Flere varianter heart Sikkerhedsafbryder 20A IP54 4 polet afbryder + jord 80003166271 * IP54 * 4 polet * 4 x M25 gevind, * 2 i top og 2 i bund 141,- Pris i butik: 149,- Læs mere Køb heart chevron-left chevron-right STORT UDVALG AF HAVESLANGER OG HAVETILBEHØR TIL FORDELAGTIGE PRISER! chevron-left chevron-right chevron-left chevron-right Fm mattsson udendørshane m/ greb - Se vores udvalg Pris fra: 533,- Flere varianter heart Vertland slangeopruller 233050100 20 meter PVC haveslange 633,- Pris i butik: 660,- Læs mere Køb heart Garden vandingspistol med 10 Varianter 273042241 * Sprøjtepistol * 10 dysefunktioner * 3 koblinger 99,- Pris i butik: 105,- Læs mere Køb heart Komplet nedløbsventil Speedy 273044080 Egnet til nedløbsrør ø70-100 mm 441,- Pris i butik: 460,- Læs mere Køb heart Garden drypvandingssæt m/spyd 273043300 Komplet sæt * 20 spyd og T-stykker * 15 meter slange 140,- Pris i butik: 147,- Læs mere Køb heart Garden stangpistol til havevanding 75 cm 273042198 * 8 strålemuligheder * 75 cm stang 149,- Pris i butik: 158,- Læs mere Køb heart Garden Hanekobling 1/2-3/4 273042031 15,- Pris i butik: 16,- Læs mere Køb heart Garden Slangekobling 1/2 273042061 uden stop 15,- Pris i butik: 16,- Læs mere Køb heart Regnvandstønde 273044000 * Incl. aftapshane og låg * 210 liter 191,- Pris i butik: 201,- Læs mere Køb heart Garden Hanekobling 1-3/4-1/2 273042033 Universal hanekobling * 1" * 3/4" * 1/2" 18,- Pris i butik: 21,- Læs mere Køb heart Garden Slangekobling 3/4 273042071 uden stop 15,- Pris i butik: 16,- Læs mere Køb heart Aftapshane med L-greb Pris fra: 66,- Flere varianter heart NTS Yellow vandslange PVC 273042005 * 25 meter fleksibel vandslange * Godkendt til kontakt med fødevarer 290,- Pris i butik: 306,- Læs mere Køb heart Garden drypvandingssæt m/dyser 273043310 Komplet sæt * 20 spyd og dyser * 15 meter slange 140,- Pris i butik: 147,- Læs mere Køb heart Garden vandingsur Automatisk havevanding 273043360 * Forbrug 1-120 minutter * Interval 1-72 timer 211,- Pris i butik: 222,- Læs mere Køb heart Garden 1/2" slangekoblingssæt 4 dele 273042221 Strålespids og 3 koblinger 68,- Pris i butik: 73,- Læs mere Køb heart Grouw holder til haveslange 273042100 Til 30 meter slange 51,- Pris i butik: 55,- Læs mere Køb heart Garden 1/2" slangekoblingssæt med 4 dele 273042081 Strålespids og 3 koblinger 59,- Pris i butik: 63,- Læs mere Køb heart Flexslange 7,5-22,5 Meter 273042165 Incl. sprøjtepistol og hanekobling Farven kan variere, afhængig af hvad der er disponibelt. 99,- Pris i butik: 107,- Læs mere Køb heart Garden 3/4" slangekoblingssæt med 4 dele 273042086 Strålespids og 3 koblinger 59,- Pris i butik: 63,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5 3.75 4 4.25 4.5 4.75 5 5.25 5.5 5.75 chevron-right STORT SORTIMENT AF STÅLPLADER OG RØR I ALUMINIUM, RUSTFRIT, GALVANISERET STÅL OG SORT JERN! chevron-left chevron-right Galvaniseret stålrør 2 meter * Størrelser fra 1/2" til 1" Pris fra: 145,- Flere varianter heart Rundstål sort - Stangstål 2 meter * Længder af 2 meter * Diameter fra 6-12 mm Pris fra: 21,- Flere varianter heart Kamstål ribbet 2 meter Armeringsstål * Længder af 2 meter * Diameter fra 8-16 mm * B550 DS/EN10080 Pris fra: 17,- Flere varianter heart Aluminium profilrør Hulprofil kvadratisk 2 meter * Længder af 2 meter * Tykkelse 2-3mm * Bredde/højde fra 20-40mm Pris fra: 128,- Flere varianter heart Hulprofil kvadratisk stålrør * Længder af 2 meter * Tykkelse fra 2-3mm * Bredde/højde fra 20-50mm Pris fra: 103,- Flere varianter heart Aluminium fladstål 2 meter * Længder af 2 meter * Tykkelse fra 2-4 mm * Bredde fra 20-50 mm Pris fra: 48,- Flere varianter heart Sort Fladstål stangstål 2 meter * Længder af 2 meter * Tykkelser fra 4-5 mm * Bredder fra 20-50 mm Pris fra: 105,- Flere varianter heart Sort båndstål 2 meter Stangstål Græskanter eller bedkanter i stål * Længder af 2 meter * Tykkelser fra 3-4mm * Bredder fra 20 - 50 mm Pris fra: 48,- Flere varianter heart Galvaniseret vinkelstål - Stangstål 2 meter * Længder af 2 meter * Tykkelse fra 3 - 4 mm * Bredde/højde fra 30 - 40 mm Pris fra: 148,- Flere varianter heart Aluminiuml Vinkelstål ligesidet - Aluminiumprofil 2 meter * Længder af 2 meter * Tykkelse fra 2-4 mm * Bredde/højde fra 20-40 mm Pris fra: 83,- Flere varianter heart Vinkelstål sort ligesidet - Stangstål 2 meter * Længder af 2 meter * Tykkelse fra 3-5 mm * Bredde/højde fra 20-50 mm Pris fra: 75,- Flere varianter heart T-stål sort 20/20/3mm 52T20203 * Længde 2 meter * Tykkelse 3 mm * Bredde/højde 20/20 mm 98,- Læs mere Køb heart Aluminiumsstang * Længde 2 meter * Diameter 8-12 mm Pris fra: 85,- Flere varianter heart Aluminiumsplade 1x1 meter * Tykkelse fra 0,5-2,0 mm * Bredde 1000 mm * Længde 1000 mm Pris fra: 135,- Flere varianter heart Varmtgalvaniseret Finplade - Stålplade 1 x 1 meter * Tykkelse fra 0,5-2,0 mm * Bredde 1000 mm * Længde 000 mm Pris fra: 161,- Flere varianter heart Varmtvalsede sort plade - Stålplade 1 x 1 meter * Tykkelse fra 0,5 - 3,0 mm * Bredde 1000 mm * Længde 1000 mm Pris fra: 141,- Flere varianter heart chevron-left chevron-right NYD POOL I HAVEN HELE SOMMEREN! ALT TIL DIN UDENDØRS POOL VED VVS-EKSPERTEN! chevron-left chevron-right chevron-left chevron-right Sommertilbud - spar 30% Swim & Fun komplet poolpakke 669994660 * 17450 Liter * Diameter 4,6 m * Komplet poolpakke 3.495,- Førpris: 4.999,- Læs mere Køb heart Sommertilbud - spar 36% Bestway familiepool 669994650 * Oppustelig * 450 Liter 159,- Førpris: 249,- Læs mere Køb heart Sommertilbud - spar 20% Swim & Fun Solvarme XP2 til Pool 669994700 * Gratis miljøvenlig varme * Hæver temperaturen 3-5° 395,- Førpris: 499,- Læs mere Køb heart Sommertilbud - spar 24% Garden Solbruser 273042189 * Vandbeholder 20 liter * Med blandingsbatteri * Højde 227 cm * Udendørsbruser 995,- Førpris: 1.315,- Læs mere Køb heart Swim & Fun Termometer 669994680 * Flyder i poolen * Påhæftet snor 34,95 Læs mere Køb heart Swim & Fun Basic Care poolpakke 669994685 Basis sæt pooltilbehør 249,- Læs mere Køb heart Swim & Fun Pool cover Termodækken til pool 669994710 * Flyder på vandet * Holder på varmen * Diameter 4,6 meter * Tykkelse 200 μm 499,- Læs mere Køb heart Swim & Fun dispenser til klortabletter 669994555 Til langsomtopløselige klortabletter 129,- Læs mere Køb heart Swim & Fun Pool Test Strips klorværdi/pH-balance 669994565 * Måler pH-balance og klor * Indeholder 50 stk. test strips 99,- Læs mere Køb heart Swim & Fun Pool pH Up 669994625 * pH-regulerende middel * 1 kg 99,- Læs mere Køb heart Swim & Fun Pool pH Down 669994630 * pH-regulerende middel * 1,5 kg 99,- Læs mere Køb heart Sommertilbud - spar 21% Atlanta udendørsbruser med hovedbruser & kartud 722255A10 * ø200mm Hovedbruser * ø100mm Håndbruser 695,- Førpris: 888,- Læs mere Køb heart Swim & Fun Pool Klor LongTabs 669994640 * Desinfektionsmiddel til vand * Løbende klor vedligeholdelse * 1 kg (Tabs 20 gram) 199,- Læs mere Køb heart Swim & Fun KiddyPool 669994620 * Til ca. 400-600 L vand pr. pose * 5 poser med 25 ml 99,- Læs mere Køb heart Swim & Fun Spa LongTab 20 669994585 * Desinfektionsmiddel til vand * Løbende klor vedligeholdelse * 1 kg (Tabs 20 gram) 199,- Læs mere Køb heart Swim & Fun Spa Pipe Cleaner 669994675 Rengøring af rørsystem 129,- Læs mere Køb heart Swim & Fun Spa Teststrips - Klorfri 669994575 Måler pH-balancen, alkaliteten, bromin og klorindholdet 99,- Læs mere Køb heart Udespa opstartsæt - Klorfri 669994550 * Klorfri Oxy Aktiv * Dispenser * PH-minus * Teststrips klorfri 689,- Pris i butik: 719,- Læs mere Køb heart Badekar fritstående 666200A10 * Plast badekar * Afløbsstuds i siden * Længde 1200 mm 496,- Pris i butik: 517,- Læs mere Køb heart Varmeveksler 40 kW til swimmingpool 375941140 * Effektiv hede flade 0,34 m² * Nominel effekt 30 kW * S4A-IT 6.141,- Pris i butik: 6.331,- Læs mere Køb heart Calderas Solfanger 379997000 * Varmt vand direkte fra solen * Højeffektiv solfangerpanel * 1 stk. 3.245,- Pris i butik: 3.295,- Læs mere Køb heart Swim & Fun bunddækken 669994705 * Diameter 4,6 meter 549,- Læs mere Køb heart Swim & Fun Pool Vinter cover 669994715 Diameter 4,6 meter 549,- Læs mere Køb heart Sommertilbud - spar 15% Cool Well Øl køler 273046000 * Til 24 dåser og 1 flaske vin * Hurtig vej til kolde drikke * Udnytte jordens køling 389,- Førpris: 459,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5 3.75 4 4.25 4.5 4.75 5 5.25 5.5 5.75 6 6.25 6.5 6.75 chevron-right FÅ EN FANTASTISK BRUSEOPLEVELSE MED VORES NYE SERIE FRA NORH! chevron-left chevron-right NORH Helga Bruseslange 738384A02 * Længde 1500 mm * Anti-twist teknologi 89,- Læs mere Køb heart NORH Vigdis All-round Brusesæt Krom 722251A06 * Bruseadapter * Håndbruser * Slange 169,- Læs mere Køb heart NORH Erika Topbrusesæt 1&3 Spray med termostat 722251A26 * ø260mm hovedbruser * ø120mm håndbruser 1.525,- Læs mere Køb heart NORH Liv Håndbrusersæt m/easy clean 722251A01 * ø95mm brusehoved * 1 indstillinger * Bruseslange 119,- Læs mere Køb heart NORH Gro brusehoved 722251A23 * ø 260mm * 1/2" kugleled 299,- Læs mere Køb heart NORH Torun Topbrusesæt 722251A24 * ø200mm hovedbruser * ø110mm håndbruser * Excl. termostat 699,- Læs mere Køb heart NORH Sif glider ø25mm 737809A25 Universal 69,- Læs mere Køb heart NORH Sigrid Håndbruser 738408A05 * ø105mm brusehoved * 5 indstillinger 109,- Læs mere Køb heart NORH Solveig Håndbruser 738408A06 * ø115mm brusehoved * 5 indstillinger 119,- Læs mere Køb heart NORH Hildur Bruseslange 738384A03 * Længde 2000 mm * Anti-twist teknologi 99,- Læs mere Køb heart NORH Birla Håndbruser 738408A03 * ø110mm brusehoved * 3 indstillinger 129,- Læs mere Køb heart NORH Herdis Bruseslange 722251A18 * Længde 1500 mm * Anti-twist teknologi 99,- Læs mere Køb heart NORH Runa sort brusestangssæt 722251A17 * ø120mm brusehoved * 3 indstillinger 449,- Læs mere Køb heart NORH Aud Brusesæt m/easy clean 722251A13 * ø100mm brusehoved * 5 indstillinger * Bruseslange 149,- Læs mere Køb heart NORH Frida Håndbruser 738408A07 * ø120mm brusehoved * 3 indstillinger 179,- Læs mere Køb heart NORH Edda Håndbruser 738408A04 * ø115mm brusehoved * 4 indstillinger 149,- Læs mere Køb heart Norh Asfrid Brusestangssæt 722251A16 * ø120mm brusehoved * 3 indstillinger 399,- Læs mere Køb heart Norh Alva Brusestangssæt 722251A15 * ø115mm brusehoved * 4 indstillinger 349,- Læs mere Køb heart NORH Aldis Brusestangssæt 722251A14 * ø110mm brusehoved * 3 indstillinger 299,- Læs mere Køb heart NORH Haldis Bruseslange 738384A01 Længde 1500 mm 79,- Læs mere Køb heart NORH Signe Håndbruser 738408A01 * ø95mm brusehoved * 1 indstillinger 99,- Læs mere Køb heart NORH Siv glider ø18mm 737809A18 Universal 69,- Læs mere Køb heart NORH Ingun Brusestangssæt 722251A03 * ø110mm brusehoved * 5 indstillinger 199,- Læs mere Køb heart NORH Ingrid Brusestangssæt 722251A02 * ø95mm brusehoved * 1 indstillinger 169,- Læs mere Køb heart chevron-left chevron-right NEDGRAVNING AF DRÆN VED HUS OG HAVE - VVS-EKSPERTEN HAR LØSNINGEN! chevron-left chevron-right DIY Linjedræn m/galv. rist 221512A10 * Med galvaniseret rist * 1 meter * 1,5 ton belastning - klasse A 170,- Pris i butik: 179,- Læs mere Køb heart Drænrør 50 meter * Størrelse fra ø50-ø160 mm Pris fra: 412,- Flere varianter heart Ugens Skarpe - spar 15% Pumpmax Dykpumpe Spw400 391210040 * Niveauvippe * Partikler op til 30 mm * 10 meter kabel * Løftehøjde 5 meter * 125 L/min 254,- Førpris: 299,- Læs mere Køb heart Aquablok 190196400 * Kan tilsluttes fra alle flader * Nedsivning af regnvand 529,- Pris i butik: 552,- Læs mere Køb heart Fiberdug 190196450 * T/ aquablok 256 lilter Vægt 100 g/m² 122,- Pris i butik: 129,- Læs mere Køb heart Plastmo Faskine M/110mm Studs 223171200 * Ingen geotekstil nødvendig * Grave- og installationstid halveres * Udledning af regnvand i jorden 554,- Pris i butik: 577,- Læs mere Køb heart Basic Regnvandstank komplet m/dykpumpe og opføringsrør 225600700 2100 liter regnvandstank Max jorddække 99 cm Anvend regnvand til * Toiletskylning * Tøjvask & Bilvask * Havevanding 14.779,- Læs mere Køb heart Tagnedløbsbrønd ø 200 mm 192925195 * ø200 mm * 1442 mm * Tilslutning ø110 mm * Vandlås og sandfang * Incl. bund 1.103,- Pris i butik: 1.149,- Læs mere Køb heart Kloakrør Ø110mm - flere forskellige længder Vælg mellem længde fra 500 mm til 6000 mm Pris fra: 34,- Flere varianter heart Betonkegle til opføringsrør ø315 mm 192057044 * Til opføringsrør * Excl. dæksel 116,- Pris i butik: 122,- Læs mere Køb heart Betondæksel 315mm 192057064 * Uden armering * Anvendes på betonkegle 99,- Pris i butik: 110,- Læs mere Køb heart Plastdæksel Lauridsen 315 Mm 195585315 * Brønddæksel med fals * PVC-genbrugsplast * Belastning 1500 kg 298,- Pris i butik: 314,- Læs mere Køb heart Pumpmax Dykpumpe 391210050 * Indvendig flyder * Partikler op til 3 mm * 10 meter kabel * Løftehøjde 6,5 meter * 165 L/min 435,- Pris i butik: 454,- Læs mere Køb heart Spule- og afgangsslange metermål * Vælg mellem 1" eller 11/2" * -10/+60 gr. * 8 bar Pris fra: 36,- Flere varianter heart Komplet nedløbsventil Speedy 273044080 Egnet til nedløbsrør ø70-100 mm 441,- Pris i butik: 460,- Læs mere Køb heart Regnvandstønde 273044000 * Incl. aftapshane og låg * 210 liter 191,- Pris i butik: 201,- Læs mere Køb heart chevron-left chevron-right CHOK TILBUD HOS VVS-EKSPERTEN - KUN KORT TID! chevron-left chevron-right chevron-left chevron-right Chokpris - kun kort tid! - spar 57% Ulica Solar Solcelle UL-365W - Sort monokrystallinske solcelle 902000370 * Sort overflade * Monokrystallinske * 365 W 599,- Førpris: 1.425,- Læs mere Køb heart Chokpris - kun kort tid! - spar 37% Radiatornøgle "juletræ" 405001999 Kapacitet: 3/8"- 1" 99,95 Førpris: 160,- Læs mere Køb heart Chokpris - kun kort tid! - spar 21% Growatt APX HV 5.0P batteri modul 5 kWh 902007110 * Til Growatt Hybrid inverter * Kan udvides, stabelbare * Incl. Kabelsæt til forbindelse * Excl. Base modul og Power modul 12.995,- Førpris: 16.599,- Læs mere Køb heart Chokpris - kun kort tid! - spar 31% LED Arbejdslampe 10W 80000075010 * 1 meter kabel * Inkl. stander * (farven kan varierer) 99,95 Førpris: 145,- Læs mere Køb heart Chokpris - kun kort tid! - spar 30% Growatt hybrid solcelleanlæg t/tegl 17,5 kWp 3-faset 902001161 * Komplet anlæg * Til tegl tag * Batteri til overskudsproduktion 127.400,- Førpris: 182.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 30% Growatt hybrid solcelleanlæg t/eternit 17,5 kWp 3-faset 902001160 * Komplet anlæg * Til eternit tag * Batteri til overskudsproduktion 127.400,- Førpris: 182.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 32% Growatt hybrid solcelleanlæg t/tegl 14,6 kWp 3-faset 902001151 * Komplet anlæg * Til tegl tag * Batteri til overskudsproduktion 95.995,01 Førpris: 143.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 32% Growatt hybrid solcelleanlæg t/eternit 14,6 kWp 3-faset 902001150 * Komplet anlæg * Til eternit tag * Batteri til overskudsproduktion 95.995,01 Førpris: 143.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 30% Growatt hybrid solcelleanlæg t/tegl 11,7 kWp 3-faset 902001141 * Komplet anlæg * Til tegl tag * Batteri til overskudsproduktion 75.250,- Førpris: 109.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 30% Growatt hybrid solcelleanlæg t/eternit 11,7 kWp 3-faset 902001140 * Komplet anlæg * Til eternit tag * Batteri til overskudsproduktion 75.250,- Førpris: 109.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 30% Growatt hybrid solcelleanlæg t/tegl 8,7 kWp 3-faset 902001131 * Komplet anlæg * Til tegl tag * Batteri til overskudsproduktion 68.995,- Førpris: 99.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 30% Growatt hybrid solcelleanlæg t/eternit 8,7 kWp 3-faset 902001130 * Komplet anlæg * Til eternit tag * Batteri til overskudsproduktion 68.995,- Førpris: 99.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 36% Growatt hybrid solcelleanlæg t/tegl 5,8 kWp 3-faset 902001101 * Komplet anlæg * Til tegl tag * Batteri til overskudsproduktion 43.250,- Førpris: 68.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 36% Growatt hybrid solcelleanlæg t/eternit 5,8 kWp 3-faset 902001100 * Komplet anlæg * Til eternit tag * Batteri til overskudsproduktion 43.250,- Førpris: 68.000,- Læs mere Køb heart Chokpris - kun kort tid! - spar 33% Growatt solcelleanlæg t/tegl 1,85 kWp 902000014 * Komplet anlæg * Til tegl tag 7.995,- Førpris: 11.995,- Læs mere Køb heart Chokpris - kun kort tid! - spar 33% Growatt solcelleanlæg til eternit 1,85 kWp 902000013 * Komplet anlæg * Til eternit tag 7.995,- Førpris: 11.995,- Læs mere Køb heart Chokpris - kun kort tid! - spar 37% Growatt solcelleanlæg til tegl 3,65 kWp 902000021 * Komplet anlæg * Til tegl tag 12.495,- Førpris: 19.995,- Læs mere Køb heart Chokpris - kun kort tid! - spar 37% Growatt solcelleanlæg til eternit 3,65 kWp 902000020 * Komplet anlæg * Til eternit tag 12.495,- Førpris: 19.995,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5 3.75 4 4.25 4.5 4.75 5 5.25 chevron-right NYD SOMMEREN I DIN HAVE! chevron-left chevron-right Fm mattsson udendørshane m/ greb - Se vores udvalg Pris fra: 533,- Flere varianter heart Sommertilbud - spar 24% Garden Solbruser 273042189 * Vandbeholder 20 liter * Med blandingsbatteri * Højde 227 cm * Udendørsbruser 995,- Førpris: 1.315,- Læs mere Køb heart Sommertilbud - spar 16% Whisky Regnvandstønde 273044055 * Inkl. aftapshane og låg * 240 Liter 1.149,- Førpris: 1.372,- Læs mere Køb heart Sommertilbud - spar 30% Swim & Fun komplet poolpakke 669994660 * 17450 Liter * Diameter 4,6 m * Komplet poolpakke 3.495,- Førpris: 4.999,- Læs mere Køb heart Vertland slangeopruller 233050100 20 meter PVC haveslange 633,- Pris i butik: 660,- Læs mere Køb heart Sommertilbud - spar 36% Bestway familiepool 669994650 * Oppustelig * 450 Liter 159,- Førpris: 249,- Læs mere Køb heart Test klorværdi - pool test 669994560 Til udespa tester for * pH-værdi/alkalinitet * Klorværdi 193,- Pris i butik: 203,- Læs mere Køb heart DIY Linjedræn m/galv. rist 221512A10 * Med galvaniseret rist * 1 meter * 1,5 ton belastning - klasse A 170,- Pris i butik: 179,- Læs mere Køb heart Aquablok 190196400 * Kan tilsluttes fra alle flader * Nedsivning af regnvand 529,- Pris i butik: 552,- Læs mere Køb heart Fiberdug 190196450 * T/ aquablok 256 lilter Vægt 100 g/m² 122,- Pris i butik: 129,- Læs mere Køb heart Plastmo Faskine M/110mm Studs 223171200 * Ingen geotekstil nødvendig * Grave- og installationstid halveres * Udledning af regnvand i jorden 554,- Pris i butik: 577,- Læs mere Køb heart InnoCare Algefjerner 231290024 * Godkendt af Miljøstyrelsen * Fjerner effektiv alger * Let at påføre 99,- Pris i butik: 105,- Læs mere Køb heart InnoCare Flise- og murimprægnering 231290032 * Til ubehandlede fliser, muværk og beton * Vand- og smudsafvisende 269,- Pris i butik: 279,- Læs mere Køb heart InnoCare Trærens 231290026 * Til ubehandlet træ udendørs * Klar-til-brug 189,- Pris i butik: 199,- Læs mere Køb heart InnoCare Træimprægnering 231290028 * Til ubehandlet træ udendørs * Forlænger træets levetid 269,- Pris i butik: 279,- Læs mere Køb heart Zink tagrende 3 meter Til limning og lodning Pris fra: 251,- Flere varianter heart Konsoljern til halvrund tagrende * Bredde: 25 mm * Godstykkelse: 4 mm Pris fra: 43,- Flere varianter heart Garden vandingspistol med 10 Varianter 273042241 * Sprøjtepistol * 10 dysefunktioner * 3 koblinger 99,- Pris i butik: 105,- Læs mere Køb heart Garden drypvandingssæt m/spyd 273043300 Komplet sæt * 20 spyd og T-stykker * 15 meter slange 140,- Pris i butik: 147,- Læs mere Køb heart Weekend Basker - spar 15% Outfit terrassevarmer 317210520 * Stor reflektorskærm * Elektronisk tænding * Med hjul 1.948,- Førpris: 2.298,- Læs mere Køb heart Sommertilbud - spar 15% Cool Well Øl køler 273046000 * Til 24 dåser og 1 flaske vin * Hurtig vej til kolde drikke * Udnytte jordens køling 389,- Førpris: 459,- Læs mere Køb heart Komplet nedløbsventil Speedy 273044080 Egnet til nedløbsrør ø70-100 mm 441,- Pris i butik: 460,- Læs mere Køb heart Tagnedløbsbrønd ø 200 mm 192925195 * ø200 mm * 1442 mm * Tilslutning ø110 mm * Vandlås og sandfang * Incl. bund 1.103,- Pris i butik: 1.149,- Læs mere Køb heart Garden 3/4" slangekoblingssæt med 4 dele 273042086 Strålespids og 3 koblinger 59,- Pris i butik: 63,- Læs mere Køb heart Terrassevarmer til vægmontage med fjernbetjening og app 2000w 80000014045 * Fjernbetjening * Golden tube rør * Vægbeslag * 1,7 m ledning 799,- Pris i butik: 844,- Læs mere Køb heart Rheinzink regnvandssamler m/Gardenastik Vælg mellem * ø76 mm * ø87 mm Pris fra: 446,- Flere varianter heart Haveslange 25 meter 1/2" 273042010 * Tåler lukket tryk * Kuldeflexibel 121,- Pris i butik: 127,- Læs mere Køb heart Terrassevarmer gulvmodel 2000w med Carbonrør 80000014035 * Højde 900mm * Carbonrør * 2000 W * Mobil 894,- Pris i butik: 932,- Læs mere Køb heart Grouw holder til haveslange 273042100 Til 30 meter slange 51,- Pris i butik: 55,- Læs mere Køb heart Basic Regnvandstank komplet m/dykpumpe og opføringsrør 225600700 2100 liter regnvandstank Max jorddække 99 cm Anvend regnvand til * Toiletskylning * Tøjvask & Bilvask * Havevanding 14.779,- Læs mere Køb heart Garden drypvandingssæt m/dyser 273043310 Komplet sæt * 20 spyd og dyser * 15 meter slange 140,- Pris i butik: 147,- Læs mere Køb heart Garden vandingsur Automatisk havevanding 273043360 * Forbrug 1-120 minutter * Interval 1-72 timer 211,- Pris i butik: 222,- Læs mere Køb heart Garden stangpistol til havevanding 75 cm 273042198 * 8 strålemuligheder * 75 cm stang 149,- Pris i butik: 158,- Læs mere Køb heart Flexslange 7,5-22,5 Meter 273042165 Incl. sprøjtepistol og hanekobling Farven kan variere, afhængig af hvad der er disponibelt. 99,- Pris i butik: 107,- Læs mere Køb heart Grouw 3/4 Haveslange 25 Meter 273042020 3/4" 251,- Pris i butik: 264,- Læs mere Køb heart chevron-left chevron-right UGENS SKARPE! chevron-left chevron-right chevron-left chevron-right Ugens Skarpe - spar 15% Cee Vægudtag Kombi 3p & 5p 80000014582 * 16A / 400V * 2 x M25 top/bund 96,- Førpris: 114,- Læs mere Køb heart Ugens Skarpe - spar 15% Industristøvsuger 50 liter 245010060 * Våd og tør * 50 Liter * 1400W 857,- Førpris: 1.009,- Læs mere Køb heart Ugens Skarpe - spar 16% Nordic Stænktæt udtag IP44 80001893211 * Hvid * Udendørs IP44 * Stikkontakt med dansk jord 35,- Førpris: 42,- Læs mere Køb heart Ugens Skarpe - spar 15% Kabeltromle med vægophæng 80000021535 * Automatisk oprulning * 25 meter kabel * 1 udtag 469,- Førpris: 553,- Læs mere Køb heart Ugens Skarpe - spar 10% Installationskabel 3G1,5 mm² 89833586998 * 50 meter 289,- Førpris: 324,- Læs mere Køb heart Ugens Skarpe - spar 15% Tec7 Spray Tætner 500 Ml 230004930 * Til inde/ude * Vand- og vindtæt * Beskyttelse mod rust 178,- Førpris: 210,- Læs mere Køb heart Ugens Skarpe - spar 15% Vandalarm Inkl. 9v Batteri 340150325 Responstid >7 sek. 68,- Førpris: 80,- Læs mere Køb heart Ugens Skarpe - spar 15% Pumpmax Dykpumpe Spw400 391210040 * Niveauvippe * Partikler op til 30 mm * 10 meter kabel * Løftehøjde 5 meter * 125 L/min 254,- Førpris: 299,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 chevron-right KOMPLETTE SOLVARMESÆT MED SOLFANGERE OG SOLVARME BEHOLDER TIL SKARPE PRISER! chevron-left chevron-right chevron-left chevron-right Solfangersæt 18 rør og solvarmebeholder 200 liter 9SOL18-200 * Kampagnesæt * Solarterm vvb 200 liter * 18 rør Vakuum solfanger 15.835,- Læs mere Køb heart Solarterm Solfangersæt 300liter og 30 rør Taghældning eller til fladt tag * Solarterm vvb 300 liter * 30 rør Vakuum solfanger * Inkl. fittingspakke Pris fra: 27.900,- Flere varianter heart Solarterm Solfangersæt 200liter og 30 rør Taghældning eller til fladt tag * Solarterm vvb 200 liter * 30 rør Vakuum solfanger * Inkl. fittingspakke Pris fra: 24.900,- Flere varianter heart Solarterm Solfangersæt 300liter og 18 rør Taghældning eller til fladt tag * Solarterm vvb 300 liter * 18 rør Vakuum solfanger * Inkl. fittingspakke Pris fra: 23.500,- Flere varianter heart Solarterm Solfangersæt 200liter og 18 rør Taghældning eller til fladt tag * Solarterm vvb 200 liter * 18 rør Vakuum solfanger * Inkl. fittingspakke Pris fra: 22.250,- Flere varianter heart Deluxe Solfangersæt med Calderas Solfanger Vælg mellem 200 og 300 liter * Solarterm solvarmebeholder * 2 x Calderas Solfanger * Inkl. fittingspakke Pris fra: 18.295,- Flere varianter heart Solarterm Solfangersæt 500Liter og 60 rør 379997690 * Solarterm 500 liter * 60 rør Vakuum solfanger * Inkl. fittingspakke 37.900,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 chevron-right FLOTTE MØBELSÆT FRA DANSANI TIL SKARPE PRISER - KUN SÅ LÆNGE LAGER HAVES! chevron-left chevron-right chevron-left chevron-right SÅ LÆNGE LAGER HAVES - spar 73% Menuet møbelsæt inkl. spejl m/integreret lys - 51 cm 9DANSANI40 Møbelpakke excl. armatur * Mini Menuet porcelænsvask * Vaskeskab med 2 skuffer * Spejlskab 700x500 mm * Integreret LED-lys i top 4.995,- Førpris: 18.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 74% Mikado møbelsæt inkl. spejl m/integreret lys - 100 cm 9DANSANI42 Møbelpakke excl. armatur * Mikado marmorvask * Vaskeskab med 2 skuffer * Spejl 700x1000 mm * Integreret LED-lys * m/lysstyring 5.495,- Førpris: 21.445,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 69% Viskan møbelsæt inkl. spejl - 60 cm 9DANSANI43 Møbelpakke excl. armatur * Viskan porcelænsvask * Vaskeskab med 2 skuffer * Spejl 637x597 mm 3.995,- Førpris: 12.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Mikro Menuet møbelsæt inkl. spejl m/integreret lys - 41 cm 9DANSANI44 Møbelpakke excl. armatur * Menuet porcelænsvask * Vaskeskab med 1 låge * Spejl 700x400 mm * Integreret LED-lys * m/lysstyring 2.695,- Førpris: 9.450,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Cappella møbelsæt 52 cm 9DANSANI45 Møbelpakke excl. armatur * Cappella porcelænvask * Vaskeskab med skuffe 1.995,- Førpris: 6.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Cappella møbelsæt 62 cm 9DANSANI46 Møbelpakke excl. armatur * Cappella porcelænvask * Vaskeskab med skuffe 2.195,- Førpris: 7.750,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Amber møbelsæt inkl. spejl m/integreret lys - 51 cm 9DANSANI47 Møbelpakke excl. armatur * Amber mini porcelænsvask * Vaskeskab med låge * Spejl 700x500 mm * Integreret LED-lys i top * m/lysstyring 2.495,- Førpris: 8.750,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 72% Cappella møbelsæt inkl. spejl m/integreret lys - 52 cm 9DANSANI48 Møbelpakke excl. armatur * Cappella porcelænsvask * Vaskeskab med skuffer * Spejl 700x500 mm * Integreret LED-lys 4.995,- Førpris: 17.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 68% Largo møbelsæt inkl. spejl m/integreret lys - 120 cm 9DANSANI28 Møbelpakke excl. armatur * Largo glasvask * Vaskeskab med 1 skuffe * Spejl 700x1200 mm * Lodret integreret LED-lys * m/lysstyring 4.295,- Førpris: 13.550,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 76% Canto møbelsæt inkl. spejl m/integreret LED-lys - 120 cm 9DANSANI29 Møbelpakke excl. armatur * Canto porcelænsvask * Vaskeskab med 2 skuffer * Spejl 700x1200 mm * Integreret LED-lys i top * m/lysstyring 4.495,- Førpris: 19.435,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 chevron-right ALT TIL DIN VARMEINSTALLATION FINDER DU VED VVS-EKSPERTEN.DK chevron-left chevron-right chevron-left chevron-right Weekend Basker - spar 15% Copmax Lomo varmepumpe luft/luft 3,5 kW 346760A10 * SCOP 4,10 * R32 Kølemiddel * Inkl. fjernbetjening * Indbygget WiFi 3.795,- Førpris: 4.495,- A+ Produktdatablad Læs mere Køb heart BioMax Green Power 1202GP Komplet pillefyr 303004312 * Dansk udviklet * Virkningsgrad på 95,5% * Effekt 3,4 - 12,8 kW * Automatisk askeudtræk * Kan styres via smartphone (wifi modul tilkøbes) * Magasin til 160 Kg træpiller 26.995,- A+ Produktdatablad Læs mere Køb heart Alu-XPS Varmefordelingsplade 4 spor til 16 mm pex/alu-pex 20 mm isolering 339410A10 * Højde kun 20 mm * Integreret vendespor * Isoleret gulvvarmeplade * Til pex m/indvendig iltbarriere * 1 stk. 0,72m² 159,- Pris i butik: 168,- Læs mere Køb heart DVI gulvvarmeslange ø16mm m/indvendig iltbarriere 6 bar Indvendig iltbarriere Til varmefordelingsplader Max 95° / 6 bar. Vælg mellem * 120 meter * 240 meter Pris fra: 840,- Flere varianter heart SASWELL gulvvarmesæt til centralvarme * Saswell Trådløs styring * Fra 2-16 kredse * Til centralvarme (2bar) Pris fra: 4.554,- Flere varianter heart Luisa hydro pilleovn til centralvarme 12 kW 305500300 * Effekt 3,4-12,6 kW * Vandret aftræk * 20 kg Pillemagasin * Til centralvarmeanlæg 19.995,- A+ Produktdatablad Læs mere Køb heart Orlán Gasogen Kedel Super 25kw 304006025 * Op til 50 cm brændestykker * Røgafgang ø 200mm * Tilslutning 2" * EN 303-5 klasse 5 * Til ca. 140 m² hus 23.995,- A+ Produktdatablad Læs mere Køb heart CopMax High Power varmepumpesæt m/Multitank 180/100 L Komplet varmepumpesæt Vælg mellem flere størrelser med multitank 180/100L Pris fra: 38.995,- A+++ Produktdatablad Flere varianter heart CopMax RS varmepumpesæt m/Akku tank 140Liter Komplet varmepumpesæt Vælg mellem flere størrelser med 140 liter akku tank Pris fra: 36.995,- A+++ Produktdatablad Flere varianter heart Panasonic varmepumpesæt m/Multitank 200/37 liter Komplet varmepumpesæt Vælg mellem flere størrelser med multitank 200/37L og 80L vvb Pris fra: 55.525,- A++ Produktdatablad Flere varianter heart CopMax RS07 Luft til vand varmepumpe med inverter 346149A07 * Ydelse på 7 kW * R32 kølemiddel * Cirkulationspumpe * 3 kW el-patron 31.995,- A+++ Produktdatablad Læs mere Køb heart CopMax High Power 4 kW Luft til Vand varmepumpe 346150A04 * Energimærke A +++ * R32 Kølemiddel * m/ 3 kW el-patron * 4 kW 20.995,- A+++ Produktdatablad Læs mere Køb heart Jordvarmepumpe CopMax 10kW med Carel styring 346019210 * Med Carel kontrol * sCOP-værdi 3.07-4.04 33.595,- A+ Produktdatablad Læs mere Køb heart CopMax 10kW med 200/37 tank Komplet jordvarmesæt 346019430 Kan ikke afhentes i butik. Bestilles til direkte levering. Komplet sæt bestående af: * Copmax 200/37 akkutank * Copmax 10kW m/Carel styring * Copmax Monteringssæt * Jordvarmepakke 400 meter * Pannex Elvandvarmer 80 L 59.495,- A+ Produktdatablad Læs mere Køb heart Duna Kalorifer Pillefyr 18kW 305650120 * 40 kg træpillebeholder * Opvarmer op til 400 m² 27.995,- A+ Produktdatablad Læs mere Køb heart Sargas 3 Brændeovn 306019A20 * Op til 81% virkningsgrad * Flere tilslutningsmuligheder * Med side glas 16.553,- A+ Produktdatablad Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5 3.75 4 4.25 4.5 4.75 chevron-right Luft til luft varmepumpen er en enkel måde at opnå besparelser på i huse med direkte elvarme eller som supplement til din eksisterende varmekilde. Trods en forholdsvis lav investering får du maksimal effekt året rundt med en varmepumpe. Selv ved -20° afgiver varmepumpen mere end dobbelt så meget energi, som ved brug af direkte elvarme. Se vores Luft/Luft varmepumper her BILLIG KVALITETS VENTILATION VED VVS-EKSPERTEN.DK chevron-left chevron-right chevron-left chevron-right Sommertilbud - spar 34% Mobil Aircondition, affugter op til 19m² AIRCON7000 * Ventilation * 24 timers-timer * Køling 10-15m² * Affugter op til 19m² * Energiklasse A 1.449,- Førpris: 2.217,- A Produktdatablad Læs mere Køb heart Nilan Comfort 300LR med CTS602 styring 358944305 * Styring via Nilan App * CTS602 styring * Tilslutning ø160 mm * Luftmængde 400 m³/h 14.950,- A Produktdatablad Læs mere Køb heart Dantherm HCH 5 ventilationsanlæg 359545252 * Styring via Dantherm app * HCP-kontrolpanel * Tilslutning ø160 mm * Luftmængde 300 m³/h 14.849,- A Produktdatablad Læs mere Køb heart Dantherm RCV 320 ventilationsanlæg 359548032 * Styring via Dantherm app * Universal tilslutning * HCP-kontrolpanel * Tilslutning ø125 mm * Luftmængde 320 m³/h 13.395,- Læs mere Køb heart Dantherm HCH 5 ventilationspakke 150 m² GENPAK8 * Komplet til 150 m² * Styring via Dantherm app * Med faste spirorør 21.995,- A+++ Produktdatablad Læs mere Køb heart Mini Varmegenvindingsanlæg HR100R UNITE100 * Tilslutning ø100 mm * Luftmængde 77 m³/h * Til et enkelt rum 6.019,- Pris i butik: 6.206,- A Produktdatablad Læs mere Køb heart 1-rums varmegenvinding 353425100 Boligventilation * Støjniveau 10-29dB * Forbrug 1,2-2,6W * Varmegenvinding 25m³/h * Frisk luft - lavt varmetab * Skiftevis ind- og udsugning 2.046,- Pris i butik: 2.109,- Læs mere Køb heart Varmeflytningssæt 3 rum m/kanalventilator 240 m³/h VF3RUM * Flytter overskudsvarmen * Kanalventilator 240 m³/h * 4 stk. loftventiler 2.492,- Pris i butik: 2.569,- Læs mere Køb heart DUKA ONE Pro 50+ 1-rums varmegenvinding 358881161 Boligventilation * Med fjernbetjening * Genvinding op til 95% * Støjniveau ned til 25dB * Forbrug ned til 1,7 W * Udluftning op til 60 m³/h * Varmegenvinding 30m³/h 3.960,- Læs mere Køb heart Nilan Comfort 300LR ventilationspakke 150 m² GENPAKNILAN1 * Komplet til 150m² * Luftmængde 400 m³/h * Nilan Comfort 300LR * Med faste spirorør 25.495,- A Produktdatablad Læs mere Køb heart Spirorør 2 meter * ø 100mm * ø 125mm * ø 160mm * ø 200mm Pris fra: 107,- Flere varianter heart Ventilations Bøjning 90° Vælg mellem * 100 til 315 mm Pris fra: 54,- Flere varianter heart Bordventilator 80000014010 Nedkøling på en varm sommerdag * 3 Hastigheder * Med rotations mulighed 151,- Pris i butik: 159,- Læs mere Køb heart Ventilator tårn 45w - Højde 790 mm 80000014025 * Roterer 90º * Dækker op til 8 m * 3 hastigheder 296,- Pris i butik: 312,- Læs mere Køb heart Mobil Aircondition 9000 AIRCON9000 * Ventilation * 24 timers-timer * Køling 10-15m² * Affugte op til 19m² * Energiklasse A 2.151,- Pris i butik: 2.217,- A Produktdatablad Læs mere Køb heart Hi-Line Plus loftsventilator 1400mm - 15000 m³/h 354329980 * Vingediameter 1400 mm * Excl. styring 1.217,- Pris i butik: 1.269,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5 3.75 4 4.25 4.5 4.75 chevron-right Ansøg her! Afløb - kloak Edit Link Stål og metaller Edit Link Rør og fittings Edit Link Køkken Edit Link Hus og have Edit Link Belysning Edit Link El Artikler Edit Link Badeværelse Edit Link Varme og klima Edit Link Solceller Edit Link Tilbud Edit Link REST SALG - KUN SÅ LÆNGE LAGER HAVES! chevron-left chevron-right chevron-left chevron-right SÅ LÆNGE LAGER HAVES - spar 54% Hobbykniv 18mm Stanford 252414100 * Bredde 18 mm * Med soft-grip 10,- Førpris: 22,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 76% Canto møbelsæt inkl. spejl m/integreret LED-lys - 120 cm 9DANSANI29 Møbelpakke excl. armatur * Canto porcelænsvask * Vaskeskab med 2 skuffer * Spejl 700x1200 mm * Integreret LED-lys i top * m/lysstyring 4.495,- Førpris: 19.435,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 74% Mikado møbelsæt inkl. spejl m/integreret lys - 100 cm 9DANSANI42 Møbelpakke excl. armatur * Mikado marmorvask * Vaskeskab med 2 skuffer * Spejl 700x1000 mm * Integreret LED-lys * m/lysstyring 5.495,- Førpris: 21.445,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Mikro Menuet møbelsæt inkl. spejl m/integreret lys - 41 cm 9DANSANI44 Møbelpakke excl. armatur * Menuet porcelænsvask * Vaskeskab med 1 låge * Spejl 700x400 mm * Integreret LED-lys * m/lysstyring 2.695,- Førpris: 9.450,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Water Rain Brusesæt 722251110 * 190mm hovedbruser * Excl. termostat 227,- Førpris: 454,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Cappella møbelsæt 52 cm 9DANSANI45 Møbelpakke excl. armatur * Cappella porcelænvask * Vaskeskab med skuffe 1.995,- Førpris: 6.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 72% Cappella møbelsæt inkl. spejl m/integreret lys - 52 cm 9DANSANI48 Møbelpakke excl. armatur * Cappella porcelænsvask * Vaskeskab med skuffer * Spejl 700x500 mm * Integreret LED-lys 4.995,- Førpris: 17.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Amber møbelsæt inkl. spejl m/integreret lys - 51 cm 9DANSANI47 Møbelpakke excl. armatur * Amber mini porcelænsvask * Vaskeskab med låge * Spejl 700x500 mm * Integreret LED-lys i top * m/lysstyring 2.495,- Førpris: 8.750,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 68% Largo møbelsæt inkl. spejl m/integreret lys - 120 cm 9DANSANI28 Møbelpakke excl. armatur * Largo glasvask * Vaskeskab med 1 skuffe * Spejl 700x1200 mm * Lodret integreret LED-lys * m/lysstyring 4.295,- Førpris: 13.550,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 69% Viskan møbelsæt inkl. spejl - 60 cm 9DANSANI43 Møbelpakke excl. armatur * Viskan porcelænsvask * Vaskeskab med 2 skuffer * Spejl 637x597 mm 3.995,- Førpris: 12.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 71% Cappella møbelsæt 62 cm 9DANSANI46 Møbelpakke excl. armatur * Cappella porcelænvask * Vaskeskab med skuffe 2.195,- Førpris: 7.750,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv cosima 3-F brusehoved 200mm med 3 brusefunktioner 736010100 * ø 200mm * 1/2" kugleled * 3 bruse funktioner 119,- Førpris: 238,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% SKV Sæbedispenser med batteri til væg / Håndsprit Dispenser 774550100 * Excl. 4 x AA batterier * Til flydende sæbe * Til håndsprit 115,- Førpris: 230,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Clemente 5-F håndbruser 738462170 * ø100mm brusehoved * 5 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Concetta 5-F håndbruser 738462180 * ø100mm brusehoved * 5 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 39% Huay square wc papirholder 775211010 * Krom 104,04 Førpris: 172,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 30% Kärcher børste til højtryksrenser 273050520 Tilbehør til Kärcher højtryksrenser 77,70 Førpris: 111,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 20% Oras optima rain 7192 brusesæt 722274804 * Termostatbatteri * 257x197mm Hovedbruser * Håndbruser 3.868,80 Førpris: 4.836,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Ciro 5-F håndbruser 738462160 * ø100mm brusehoved * 5 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Callisto 1-F håndbruser 738462100 * ø100mm brusehoved * 1 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Carla 1-F håndbruser 738462110 * ø100mm brusehoved * 1 indstillinger 36,50 Førpris: 73,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Carola 1-F håndbruser 738462120 * ø100mm brusehoved * 1 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Celeste 3-F håndbruser 738462130 * ø100mm brusehoved * 3 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Cesare 3-f Håndbruser 738462140 * ø100mm brusehoved * 3 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Cinzia 5-F håndbruser 738462150 * ø100mm brusehoved * 5 indstillinger 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Danilo brusestangsæt 737709230 * ø110mm brusehoved * 3 indstillinger 119,- Førpris: 238,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 22% Håndsprit med glycerin 85% 250 ml 513000000 God håndhygiejne vigtigt Med glycerin 34,95 Førpris: 45,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Eligio brusesæt 737709270 * 90x85mm brusehoved * 3 indstillinger 136,- Førpris: 272,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% SKV hylde til brusestang - Universal ø19-25mm 737709410 * Universal * Krom 30,- Førpris: 60,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Crocetta 5-F brusehoved m/5 bruse funktioner ø100mm 736010120 * ø 100mm * 1/2" kugleled * 5 bruse funktioner 58,- Førpris: 116,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 73% Menuet møbelsæt inkl. spejl m/integreret lys - 51 cm 9DANSANI40 Møbelpakke excl. armatur * Mini Menuet porcelænsvask * Vaskeskab med 2 skuffer * Spejlskab 700x500 mm * Integreret LED-lys i top 4.995,- Førpris: 18.995,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Cono 1-F brusehoved 240 x 170 mm 736010130 * Hvid / krom * 240 x 170 mm * 1/2" kugleled 119,- Førpris: 238,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Christoforo 1-F brusehoved 250mm 736010110 * 250 mm * 1/2" kugleled 271,50 Førpris: 543,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 16% Central Støvsuger 303955450 * Uden tilbehør * Tilslutning ø50 mm 3.057,83 Førpris: 3.662,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 35% Wi-Fi Smart stik via App - Fjernstyr alle dine elektriske apparater døgnur 80009917026 Fjernstyr dine apparater 164,45 Førpris: 253,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 57% Knivblade til hobbykniv 252414105 * Bredde 18 mm * Pakke med 10 stk. 8,- Førpris: 19,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv glider til brusestang / håndbruser ø19-25 mm 737709420 Universal 30,50 Førpris: 61,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Bil oplader 12v til Iphone 5, 6 og 7 245200125 * Bil oplader 12v * Lightning USB kabel 49,50 Førpris: 99,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Durante brusestangsæt 737709220 * ø110mm brusehoved * 2 indstillinger 119,- Førpris: 238,- Læs mere Køb heart SÅ LÆNGE LAGER HAVES - spar 50% Skv Donata brusesæt krom 737709210 * ø90mm brusehoved * 3 indstillinger 113,- Førpris: 226,- Læs mere Køb heart chevron-left chevron-right chevron-left 1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5 3.75 4 4.25 4.5 4.75 5 5.25 5.5 5.75 6 6.25 6.5 6.75 7 7.25 7.5 7.75 8 8.25 8.5 8.75 9 9.25 9.5 9.75 10 10.25 10.5 10.75 chevron-right POPULÆRE MÆRKER Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link Edit Link VVS-EKSPERTEN GARANTERER KVALITET, SIKKERHED OG BILLIG VVS Hos VVS-Eksperten leverer vi solide kvalitetsprodukter og så er vi altid opdateret på de nyeste produktioner i branchen. Hos VVS-Eksperten er vi specialister indenfor vores felt, og vi sidder altid klar til at hjælpe vores kunder i mål med alle deres projekter – såvel store som små. Billig vvs til alle. VVS-Eksperten er en landsdækkende kæde med landsdækkende butikker, der sælger diverse forskellige vvs-artikler til både hus, have og miljøbevidste installationer. Hos VVS-Eksperten er vi stolte over at kunne levere billig vvs til alle danskere - uanset om du er lille nystartet virksomhed, privat eller en af Danmarks førende virksomheder. Uanset om du møder os i vores fysiske butikker eller gennem vores webshop, er vi altid klar til at hjælpe dig med faglig rådgivning, tilbud på projekter og info om alle vores produkter. Vi tilbyder billig vvs, der hjælper dig med at realisere dine drømme. VVS-EKSPERTEN – DIN VARMEPUMPE EKSPERT * Luft til luft varmepumpe er velegnet til sommerhuse eller lignende, hvor du ikke har et eksisterende centralvarmeanlæg. Den er nem at montere og er samtidig pladsbesparende. Yderligere er luft til luft varmepumper gode, hvis du vil forbedre dit indeklima, og slippe for fugtig luft. Luft til Luft varmepumper er ligeledes et billigt alternativ til el radiator og kan hurtigt varme huset op efter behov. * Luft til vand varmepumpe er velegnet til dig, der har en eksisterende varmeinstallation og ønsker at udskifte varmekilden fra eksempelvis oliefyr til mere energirigtig og økonomisk opvarmningsform. Det anbefales at installere en akkumuleringstank i forbindelse med luft til vand varmepumper. * Jordvarmepumpe er velegnet til dig, der har en stor grund med mulighed for nedgravning af jordvarmeslanger. Med jordvarme får du den optimale energiudnyttelse, da temperaturen i jorden er mere konstant end i luften. BILLIG VVS ONLINE OG I DE LANDSDÆKKENDE BUTIKKER Hos VVS-Eksperten ved vi alt, der er at vide om vvs og billig vvs i god kvalitet. Vi er altid klar til at give et godt råd med på vejen. Vi deler gratis ud af vores ekspertise om vvs-artikler, for vi er her for at hjælpe. f.eks med produkter inden for afløb, dræn og kloak Ved VVS-Eksperten.dk finder du altid, hvad du skal bruge. Det samme gælder for rør og fittings, her finder du kobberrør, rustfrit fittings, pres fittings, messing fittings, galvaniseret fittings, sort fittings og rør samt pakmidler og rørbærer. Billig vvs til alle. Giv dit bidrag Giv dit bidrag × Click on the image to open the full version. FÅ TILBUD I DIN INDBAKKE Tilmeld dig vores nyhedsbrev og få nyheder, inspiration og tilbud inden for VVS. Navn Email Tilmeld LANDSDÆKKENDE VVS-EKSPERTEN BUTIKKER I DANMARK INFORMATION Job (0) Kundeservice Click and Collect Prismatch Butikker Billig VVS Webpay Sparxpres Handelsbetingelser Nyheder og presse Whistleblower Spørgsmål og svar KONTAKT OS VVS-Eksperten A/S Mimersvej 2 8722 Hedensted CVR-nr.: 25189000 Tlf. 75 89 03 03 salg@vvs-eksperten.dk VI MODTAGER VI LEVERER MED FØLG OS HER Facebook Youtube Instagram