Black Friday: Jusqu'à 70% de réduction tout le mois
|
Newsletter
Recevez un code promotionnel unique avec 15% de réduction
La réduction est valable sur tous les produits, y compris ceux à prix réduit, dans les 60 jours suivant l’inscription à la newsletter. Une combinaison avec d’autres codes de réduction n’est pas possible.
Par la présente, je confirme avoir lu la Déclaration de confidentialité. Je peux rétracter mon consentement à tout moment.**
Calculateur de frais de livraison
Pour clarifier nos frais de livraison, nous les calculons en fonction de votre emplacement comme suit. Vous pouvez utiliser le calculateur de prix fourni ou consulter le tableau.
Obtenir les détails de livraison
Sélectionnez votre pays
Livraison :
Retour :
Remarque : Les frais de retour sont indépendants des coûts du produit
Ou consultez le tableau des frais de livraison/retour
Frais de livraison/retour
Pays
Frais de livraison
Frais de retour
Livraison gratuite à partir de (€)
Aucune donnée n’a été trouvée
$(window).on('load', function() {
var locale = "de-DE";
var currency = "EUR";
var shippingDataList = [];
var shippingDataActive = null;
var exchangeRate = 1;
var sortDirection = 1;
function loadShippingData() {
$.getJSON('https://cdn02.plentymarkets.com/6wg68w8zahno/frontend/assets/country-shipping-cost.json', function(data) {
if (currency !== 'EUR') {
getCurrencyValue(currency).then(function() {
shippingDataList = data;
populateCountrySelect();
populateShippingTable(data);
});
} else {
shippingDataList = data;
populateCountrySelect();
populateShippingTable(data);
}
});
}
function populateCountrySelect() {
var countrySelect = $('#country-select');
countrySelect.empty();
countrySelect.append('');
shippingDataList.forEach(function(item) {
countrySelect.append('');
});
}
function getCurrencyValue(currency) {
return fetch("https://morgenland-cpanel.eu/api/morgenland-currencies")
.then(function(response) {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(function (data) {
const currencyData = data.data.find((cur) => cur.currency === currency);
if (currencyData && currencyData.exchange_rate) {
exchangeRate = parseFloat(currencyData.exchange_rate);
} else {
console.log("Currency " + currency + " not found");
return null;
}
})
.catch(function (err) {
console.error('There was a problem with your fetch operation:', err);
throw err;
});
}
function formatCurrency(price) {
return new Intl.NumberFormat(locale, {
style: "currency",
currency: currency,
minimumFractionDigits: 0,
maximumFractionDigits: 0
}).format(price * exchangeRate);
}
function showShippingData() {
var selectedCountry = $('#country-select').val();
shippingDataActive = shippingDataList.find(function(item) {
return item.country === selectedCountry;
});
if (shippingDataActive) {
$('#shipping-country-active').show();
if (shippingDataActive.shipping_free_from <= 0) {
$('#order-text-1').text('Commandes vers country :'.replace('`country`', shippingDataActive.country));
$('#order-text-2').text('');
} else {
$('#order-text-1').text('');
$('#order-text-2').text('Commandes inférieures à price vers country :'.replace('`price`', formatCurrency(shippingDataActive.shipping_free_from)).replace('`country`', shippingDataActive.country));
}
$('#flat-rate-postage').text((shippingDataActive.flat_rate_postage === 0) ? 'Gratuit' : formatCurrency(shippingDataActive.flat_rate_postage));
$('#return-cost').text((shippingDataActive.return_cost === 0) ? 'Gratuit' : formatCurrency(shippingDataActive.return_cost));
$('#free-shipping').text((shippingDataActive.shipping_free_from > 0) ? 'Passez des commandes de price ou plus pour profiter de la livraison gratuite'.replace('`price`', formatCurrency(shippingDataActive.shipping_free_from)) : '');
}
}
function toggleShippingTable() {
$('#shipping-data-table').toggle();
var toggleIcon = $('#toggle-icon');
if ($('#shipping-data-table').is(':visible')) {
toggleIcon.css('transform', 'rotate(0deg)');
} else {
toggleIcon.css('transform', 'rotate(180deg)');
}
}
function filterCountries() {
var searchValue = $('#search-country').val().toLowerCase();
var filteredList = shippingDataList.filter(function(item) {
return item.country.toLowerCase().includes(searchValue);
});
populateShippingTable(filteredList);
}
function sortByCountryName() {
sortDirection *= -1;
shippingDataList.sort(function(a, b) {
var countryA = a.country.toUpperCase();
var countryB = b.country.toUpperCase();
if (countryA < countryB) {
return -1 * sortDirection;
}
if (countryA > countryB) {
return 1 * sortDirection;
}
return 0;
});
filterCountries();
}
function populateShippingTable(data) {
var shippingDataBody = document.getElementById('shipping-data-body');
if (data.length > 0) {
data.forEach(function(item) {
var row = document.createElement('tr');
var countryCell = document.createElement('td');
countryCell.textContent = item.country;
row.appendChild(countryCell);
var flatRatePostageCell = document.createElement('td');
flatRatePostageCell.textContent = item.flat_rate_postage === 0 ? 'Gratuit' : formatCurrency(item.flat_rate_postage);
row.appendChild(flatRatePostageCell);
var returnCostCell = document.createElement('td');
returnCostCell.textContent = item.return_cost === 0 ? 'Gratuit' : formatCurrency(item.return_cost);
row.appendChild(returnCostCell);
var shippingFreeFromCell = document.createElement('td');
shippingFreeFromCell.textContent = item.shipping_free_from === 0 ? '0' : formatCurrency(item.shipping_free_from);
row.appendChild(shippingFreeFromCell);
shippingDataBody.appendChild(row);
});
document.getElementById('no-data-found').style.display = 'none';
} else {
document.getElementById('no-data-found').style.display = 'block';
}
}
$('#show-shipping-data').on('click', showShippingData);
$('#toggle-shipping-table').on('click', toggleShippingTable);
$('#search-country').on('input', filterCountries);
$('#sort-by-country').on('click', sortByCountryName);
loadShippingData();
});