Source: https://catch.app/itm/162609308673?category=40&upper=0
Timestamp: 2019-03-21 19:49:57
Document Index: 39555493

Matched Legal Cases: ['§ 2', '§ 1', '§ 312', '§ 3', '§ 6', '§ 6']

trade-leader-natra (65229)
Vollständige Informationen Telefon: +49 3377-3064820
E-Mail: info@tradeleader.de
Umsatzsteuer-Identifikationsnummer: DE 278630234
Vollständige Widerrufsbelehrung Widerrufsbelehrung Widerrufsformular
Sie können Ihre Vertragserklärung innerhalb von 1 Monat ohne Angabe von Gründen in Textform (z. B. Brief, Fax, E-Mail) oder – wenn Ihnen oder ein von Ihnen benannter Dritter, der nicht der Beförderer ist, die Sache vor Fristablauf überlassen wird – auch durch Rücksendung der Sache widerrufen. Die Frist beginnt nach Erhalt dieser Belehrung in Textform, jedoch nicht vor Eingang der Ware beim Empfänger (bei der wiederkehrenden Lieferung gleichartiger Waren nicht vor Eingang der ersten Teillieferung) und auch nicht vor Erfüllung unserer Informationspflichten gemäß Artikel 246 § 2 in Verbindung mit § 1 Abs. 1 und 2 EGBGB sowie unserer Pflichten gemäß § 312g Abs. 1 Satz 1 BGB in Verbindung mit Artikel 246 § 3 EGBGB. Zur Wahrung der Widerrufsfrist genügt die rechtzeitige (vor Ablauf der Widerrufsfrist) Absendung des Widerrufs oder der Sache. Sie können dafür das beigefügte Muster-Widerrufsformular verwenden, das jedoch nicht vorgeschrieben ist. Der Widerruf ist mittels einer eindeutigen Erklärung (z.B. ein mit der Post versandter Brief, Telefax oder E-Mail) zu richten an: Trade Leader, Nadeem Asif, Thomas- Muentzer- Strasse 31, 15806 Zossen, E-Mail: info@tradeleader.de
Nach Widerruf, sollten alle Zahlungen inkl. Versandkosten (mit Ausnahme der zusätzlichen Kosten, die sich daraus ergeben, dass Sie eine andere Art der Lieferung als die von uns angebotene, günstigste Standardlieferung gewählt haben), die wir von Ihnen erhalten haben, unverzüglich und binnen 14 Tagen ab diesem Tag des Widerrufs zurück zu zahlen. Für diese Zahlung wird die gleiche Zahlungsmethode verwendet, sofern ausdrücklich nichts anderes vereinbart wurde. In keinem Fall werden Ihnen wegen dieser Rückzahlung Entgelte berechnet. Die Rückzahlung kann verweigert werden bis die Ware erhalten wurde oder der Nachweis über eine Rücksendung erfolgte. Die Waren müssen innerhalb von 14 Tagen nach Widerrufserklärung an uns zurückgesandt werden. Die unmittelbaren Rücksendekosten trägt der Käufer. Der Käufer muss nur im Falle eines etwaigen Wertverlust der Waren aufkommen, wenn dieser Wertverlust auf einen zur Prüfung der Beschaffenheit, Eigenschaften und Funktionsweise der Waren nicht notwendigen Umgang mit ihnen zurückzuführen ist.
An Trade Leader, Nadeem Asif, Thomas- Muentzer- Strasse 31, 15806 Zossen; E-Mail-Adresse: info@tradeleader.de
Allgemeine Geschäftsbedingungen für dieses Angebot I/ Allgemeine Geschäftsbedingung mit Kundeninformationen
9.	Kostentragungsvereinbarung bei Ausübung des Widerrufsrechts
11.	Anwendbares Recht/ Gerichtsstand
12.	Informationen zur Online-Streitbeilegung
Tel. 03377/3064820
§ 6 Sofort-Kaufen-Artikel (Festpreisartikel), Preis vorschlagen und „Sofortige Bezahlung erforderlich“
3. Bei Sofort-Kaufen-Artikeln können Anbieter festlegen, dass bei ihrem Angebot eine sofortige Bezahlung erforderlich ist. Der Leistungsanspruch des Käufers entsteht dabei erst nach erfolgreichem Abschluss des Zahlungsprozesses über PayPal. -Ende des § 6 der eBay-AGB-
Der Kunde hat die Möglichkeit, verschiedene Zahlungsmöglichkeiten zu wählen, es sei denn, der Verkäufer hat in seiner jeweiligen Produktbeschreibung nichts Gegenteiliges festgesetzt. Diese werden dem Kunden ebenfalls auf der Artikelseite des Verkäufers bei eBay mitgeteilt
Überweisung/ Vorkasse, PayPal, Barzahlung bei Selbstabholung.
Bei Zahlung mittels einer von PayPal angebotenen Zahlungsart erfolgt die Zahlungsabwicklung über den Zahlungsdienstleister PayPal (Europe) S.à r.l. et Cie, S.C.A., 22-24 Boulevard Royal, L-2449 Luxembourg (im Folgenden: „PayPal“), unter Geltung der jeweils einschlägigen Nutzungsbedingungen von PayPal. Wählt der Kunde – soweit angeboten – gegenüber PayPal die Zahlung per Lastschrift aus, zieht PayPal den Rechnungsbetrag nach Erteilung eines SEPA-Lastschriftmandats, nicht jedoch vor Ablauf der Frist für die Vorabinformation im Auftrag des Verkäufers vom Bankkonto des Kunden ein. Vorabinformation ("Pre-Notification") ist jede Mitteilung (z.B. Rechnung, Police, Vertrag) an den Kunden, die eine Belastung mittels SEPA-Lastschrift ankündigt. Wird die Lastschrift mangels ausreichender Kontodeckung oder aufgrund der Angabe einer falschen Bankverbindung nicht eingelöst oder widerspricht der Kunde der Abbuchung, obwohl er hierzu nicht berechtigt ist, hat der Kunde die durch die Rückbuchung des jeweiligen Kreditinstituts entstehenden Gebühren zu tragen, wenn er dies zu vertreten hat.
6: Versandbedingungen
Die Lieferung erfolgt an die vom Kunden angegebene Lieferanschrift, sofern nichts anderes vereinbart ist. Wurde vom Kunden die Zahlungsart „per Vorkasse“ ausgewählt, wird die Ware nicht vor erfolgtem Zahlungseingang auf dem Konto des Verkäufers versandt. Bei der Abwicklung der Transaktion ist die vom Kunden bei eBay hinterlegte Lieferanschrift maßgeblich. Abweichend hiervon ist bei Auswahl der Zahlungsart PayPal die vom Kunden zum Zeitpunkt der Bezahlung bei PayPal hinterlegte Lieferanschrift maßgeblich.
Ist der Kunde Verbraucher gilt folgendes: Die Gewährleistungsrechte des Kunden richten sich nach den gesetzlichen Vorschriften, wobei abweichend von den gesetzlichen Vorschriften die Gewährleistungsfrist bei gebrauchten Sachen auf ein Jahr ab Ablieferung der Ware beschränkt wird.
II/ Informationen zum Datenschutz
1: Information über die Erhebung personenbezogener Daten und Kontaktdaten des Verantwortlichen
2: Kontaktaufnahme
3: Nutzung Ihrer Daten zum Newsletterversand
5: Rechte des Betroffenen
6: Dauer der Speicherung personenbezogener Daten
7: Hinweis auf die eBay-Datenschutzerklärung
Der Versand ist ausgeschlossen nach: Brunei Darussalam, Kambodscha, Laos, Macau, Philippinen, Taiwan, Argentinien, Bolivien, Brasilien, Ecuador, Falklandinseln (Malwinen), Französisch-Guayana, Guyana, Kolumbien, Paraguay, Suriname, Uruguay, Venezuela, Bermuda, Saint-Pierre und Miquelon, Algerien, Angola, Benin, Botsuana, Burkina Faso, Burundi, Kongo, Demokratische Republik, Dschibuti, Elfenbeinküste (Côte d'Ivoire), Eritrea, Gabun, Gambia, Ghana, Guinea, Guinea-Bissau, Kamerun, Kap Verde, Kenia, Komoren, Kongo, Republik, Lesotho, Liberia, Libyen, Madagaskar, Malawi, Mali, Marokko, Mauretanien, Mauritius, Mayotte, Mosambik, Namibia, Niger, Nigeria, Ruanda, St. Helena, Sambia, Senegal, Seychellen, Sierra Leone, Somalia, Swasiland, Tansania, Togo, Tschad, Tunesien, Uganda, Westsahara, Zentralafrikanische Republik, Simbabwe, Ägypten, Äquatorialguinea, Äthiopien, Irak, Jemen, Jordanien, Kuwait, Libanon, Oman, Afghanistan, Armenien, Bangladesch, Bhutan, Georgien, Indien, Kirgisistan, Malediven, Mongolei, Nepal, Pakistan, Sri Lanka, Tadschikistan, Turkmenistan, Usbekistan, Albanien, Andorra, Guernsey, Jersey, Liechtenstein, San Marino, Svalbard und Jan Mayen, Vatikan, Guadeloupe, Guatemala
Rasiermesser + 100 Rasierklingen + Schere
', infinite: true, slidesToShow: 5, slidesToScroll: 5, responsive: [ { breakpoint: 1024, settings: { slidesToShow: 4, slidesToScroll: 4 } } ] }); //event listener for clicks on miniimages in desktop mode. Also set the first mini image as selected on startup var lastClicked = $('#container-0'); var miniImage = $('.mini-image-container'); miniImage.click(function () { if($('.slick-track').css('transition').indexOf("transform") === -1){ onImageClick(parseInt($(this).attr('id').replace('container-', '')), "click"); } }); miniImage.mousedown(function () { changedBySelectorOrMini = true; }); $('.product-image').mousedown(function () { changedBySelectorOrMini = false; }); $('.slick-arrow').mousedown(function () { changedBySelectorOrMini = false; }); /**Set the color of the feedback according to its value*/ if (sellerRating) { if (sellerRating > 95) { $('.feedback').css('color', '#55930e'); } else if (sellerRating > 90) { $('.feedback').css('color', '#f4d442'); } else { $('.feedback').css('color', '#ed1212'); } } var items = [{"id":"v1|162609308673|0","price":{"amount":"13.99","currency":"EUR","display_price":"13,99\u00a0\u20ac"},"quantity":10,"sold_quantity":4,"quantity_type":"MORE_THAN","attr":{"Marke":"NATRA","Farbe":"Schwarz","Produktart":"Rasiermesser + 100 Rasierklingen + Schere","Griffmaterial":"Stahl"},"energy_efficiency_class":"","unit_pricing_measure":"","unit_price":{"value":"","currency":""},"enabled_for_guest_checkout":true,"marketing_price":{"discount_percentage":null,"original_price":{"value":null,"currency":null,"display_price":""},"discount_amount":{"value":null,"currency":null,"display_price":""}},"unit_price_display":"","images":["https:\/\/i.ebayimg.com\/00\/s\/MTM4NFgxNjAw\/z\/fXUAAOSwnsZZfFqe\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/0k0AAOSw8GhZfFrX\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/1xIAAOSwRoZZfFq0\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/o9UAAOSwx2VZfFrG\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/VYwAAOSw~qNZfE95\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/9lYAAOSwIwJZfE-T\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/OTM4WDE2MDA=\/z\/AKkAAOSwfDhZfE-j\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/ODI4WDE2MDA=\/z\/Rs0AAOSw575ZfE-q\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/OTM4WDE2MDA=\/z\/aKoAAOSwLIhZfE-y\/$_1.JPG?set_id=8800005007","https:\/\/i.ebayimg.com\/00\/s\/OTM4WDE2MDA=\/z\/q-AAAOSwlxhZfE--\/$_1.JPG?set_id=8800005007"]}]; var configurableAttributeCount = 0; var selectedValues = {}; var selectors = $('.attribute-select'); /** * set price for the item that matches the selected attributes and show it over * the buy-button. If not all attributes are selected, show the lowest price */ var resetValueArray = { "price": $('#price').html(), "uvp":$('.uvp').html(), "unitPrice":$('.unit-price').html(), "discount":$('.discount').html() }; function setPrice() { if (arrayLength(selectedValues) === configurableAttributeCount) { for (var b = 0; b < items.length; b++) { if (itemValid(items[b], selectedValues)) { $('#price').html(items[b]['price']['display_price']); $('#variantPrice').val(items[b]['price']['amount']); if(items[b]['unit_price']['value']){ $('.unit-price').html(items[b]['unit_price_display']); } if(items[b]['marketing_price']['discount_percentage']){ $('.discount').html('Sie sparen' + ' ' + items[b]['marketing_price']['discount_amount']['display_price'] + ' (-' + parseFloat(items[b]['marketing_price']['discount_percentage']).toFixed(0) + ' %)') } if(items[b]['marketing_price']['original_price']['value']){ $('.uvp').html('' + items[b]['marketing_price']['original_price']['display_price'] + ''); } } } } else { $('#price').html(resetValueArray.price); $('#variantPrice').val(13.99); $('.uvp').html(resetValueArray.uvp); $('.unit-price').html(resetValueArray.unitPrice); $('.discount').html(resetValueArray.discount); } } var selectorBuildArray = []; var optionAvailable = []; var imageArray = [{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/MTM4NFgxNjAw\/z\/fXUAAOSwnsZZfFqe\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/0k0AAOSw8GhZfFrX\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/1xIAAOSwRoZZfFq0\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/o9UAAOSwx2VZfFrG\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/VYwAAOSw~qNZfE95\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/MTYwMFgxNjAw\/z\/9lYAAOSwIwJZfE-T\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/OTM4WDE2MDA=\/z\/AKkAAOSwfDhZfE-j\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/ODI4WDE2MDA=\/z\/Rs0AAOSw575ZfE-q\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/OTM4WDE2MDA=\/z\/aKoAAOSwLIhZfE-y\/$_1.JPG?set_id=8800005007"}},{"imageArray":{"imgUrl":"https:\/\/i.ebayimg.com\/00\/s\/OTM4WDE2MDA=\/z\/q-AAAOSwlxhZfE--\/$_1.JPG?set_id=8800005007"}}]; /**set the item-attributes, that interact with the images*/ var configAttributes = null; var validPictureChangeAttributes = ['Size', 'Width', 'Character', 'Fabric', 'Modell', 'Model', 'Style', 'Art', 'Motiv', 'Style', 'style', 'Design', 'design', 'Letter', 'kind', 'Select', 'Pattern', 'Fassung' ,'fassung', 'Land', 'land', 'Variante', 'Auswahl', 'Designauswahl', 'Variante wählen', 'Product Shape', 'Paw Patrol', 'Variation']; var colorVariants = ['Color', 'Colour', 'Colors', 'Colours', 'Main Color', 'Main Colour', 'Main Colors', 'Main Colours', 'Frame Colour' , 'Farbe', 'Farben', 'FARBE', 'farbe', 'farben', 'FarbeID', 'Haupt farbe', 'Farbe wählen', 'Farbauswahl', 'Farbe-Color']; if (configAttributes !== null) { for (var x = 0; x < colorVariants.length; x++) { if ( [colorVariants[x]] !== undefined) { validPictureChangeAttributes = colorVariants; break; } } } /** * if an item variant id is supplied in the url, the corresponding item attributes are selected */ var startingItemId = "162609308673"; const itemVariant = startingItemId.split('|').pop(); if(itemVariant !== "0") { idInput.val(startingItemId); for(var i = 0; i < items.length; i++){ if(items[i]['id'] === startingItemId){ $.each(items[i]['attr'], function (attr, value) { if (configAttributes !== null) { if(configAttributes[attr] !== undefined){ $('[id="attr-' + attr.replace(/\s/g, "-").toLowerCase() + '"]').val(value); } } }); break; } } } /** * set item-id in the form-input if there are no selectable attributes for that item * if there are, check if all attributes are selected and set the corresponding item */ if (configurableAttributeCount === 0) { if (items) { idInput.val(items[0].id); if (items[0].id) { $('.buy-button').removeClass('disabled'); } else { $('.buy-button').addClass('disabled'); } } }else { var callingSelector = 0; $.each(selectors, function (index, element) { var selector = $(element); if(selector.val() === ''){ selectedValues = {}; return false; }else{ selector.attr('data-selected', 'selected'); selectedValues[selector.attr('title')] = selector.val(); if(validPictureChangeAttributes.indexOf(element.title) !== -1 && imageArray !== null){ callingSelector = index; } } }); if(arrayLength(selectedValues) === configurableAttributeCount){ selectorHandler(selectors[callingSelector], true); } } //set value of qty select to 1 as default $('#qty').val('1'); // disable buy button if item out of stock var itemLimit = 10; if (itemLimit == 0) { $('.buy-button').addClass('disabled'); } /** * get the length of an associative array * * @param array - the array whose length we want to know * @return int - length of array */ function arrayLength(array) { var count = 0; for (var value in array) { count++; } return count; } /** * deletes characters from a string that would otherwise provoke an error * * @param string - The string that should be correctified * @return string - The correctified String */ function correctifyString(string) { return string.split('"').join(''); } /** * goes through the selected attributes and checks the item attributes against them * * @param item - item array with its properties * @param valueArray - the properties in an associative array which a valid item must have * @return boolean - true if item is valid, false if not */ function itemValid(item, valueArray) { for (var selectedTitle in valueArray) { if (correctifyString(item.attr[selectedTitle]) != valueArray[selectedTitle]) { return false; } } return true; } var changedBySelectorOrMini = false; $('#image-carousel').on('beforeChange', function(event, slick, currentSlide, nextSlide){ if(!changedBySelectorOrMini){ onImageClick(nextSlide, "imageCarousel"); } }); /** * clicking on mini-images makes them the bigger product-image * * @param index - the position of the image in the carousel * * @param calledFromSelector - bool: specifies if this function was called because the user used a selector * */ var lastIndex = 0; function onImageClick(index, typeOfCall) { $('#image-carousel').slick('slickGoTo', index); $('#container-' + lastIndex).removeClass('mini-image-selected'); $('#container-' + index).addClass('mini-image-selected'); lastIndex = index; if(typeOfCall === "selector" || typeOfCall === "imageCarousel"){ $('#thumbnail-image-carousel').slick('slickGoTo', index); } if(typeOfCall === "click" || typeOfCall === "imageCarousel"){ setValue(index); } } /** * set the color-selector to the color of the selected mini-image. Will delete all options * from that selector and add all back * * @param listIndex - int: index of the image container that was clicked on */ function setValue(listIndex) { $.each(selectors, function (index, element) { var selector = $(element); if (validPictureChangeAttributes.indexOf(selector.attr('title')) !== -1) { deleteOptions(selector, ''); for (var a = 0; a < items.length; a++) { addOptions(items[a], selector); } if (imageArray[listIndex]['imageArray']['attributes'] && optionAvailable[imageArray[listIndex]['imageArray']['attributes'][selector.attr('title')]]) { selector.val(correctifyString(imageArray[listIndex]['imageArray']['attributes'][selector.attr('title')])); } else { selector.val(''); } selectorHandler(selector[0], false); } }); } /**checks if the selected attributes exist in the imageArray*/ function imageAttributeCheck(imageArray) { for (var key in imageArray) { if ($.inArray(key, validPictureChangeAttributes) !== -1) { if (correctifyString(imageArray[key]) && selectedValues[key] && correctifyString(imageArray[key]) === selectedValues[key]) { return true; } } } return false; } /** * checks if there is an option in the selector with the given value * * @param options - a collection of options from one selector * @param value - the value that should be searched for in the options * @return boolean - true if the option exists, false if not */ function checkOptionExisting(options, value) { var optionExists = false; $.each(options, function (index, element) { var option = $(element); if (value == option.attr('value')) { optionExists = true; } }); return optionExists; } /** * add attributes from an item as options to a selector * * @param item - array of one items with its properties * @param selector - the selector where the item properties should be * appended as options */ function addOptions(item, selector) { var itemAttr; for (itemAttr in item.attr) { if (itemAttr === selector.attr('title')) { if (!(checkOptionExisting(selector.children(), correctifyString(item.attr[itemAttr])))) { if (optionAvailable[item.attr[itemAttr]]) { selector.append('' + item.attr[itemAttr] + ''); } else { selector.append('' + item.attr[itemAttr] + ' [nicht mehr vorrätig]'); } } } } } /** * remove all options except - Select - from one or multiple selectors * * @param selectorContainer - jquery object: the selectors whose options should be deleted * @param noDeleteSelector - string: title of the selector whose options shouldnt be deleted */ function deleteOptions(selectorContainer, noDeleteSelector) { $.each(selectorContainer, function (index, element) { var selector = $(element); if (!(selector.attr('title') === noDeleteSelector)) { var options = selector.children(); $.each(options, function (index, element) { var option = $(element); if (option.attr('value') !== "") { option.remove(); } }); } }); } /** * if all configurable attributes are selected, set the number of available items to the * amount if the selected item. also sets the qty selector to the amount available if its * lower than limit */ function setAvailable() { for (var z = 0; z < items.length; z++) { if (arrayLength(selectedValues) === configurableAttributeCount) { if (itemValid(items[z], selectedValues)) { var limit = 10; var qtySelect = $('select[name=qty]'); var selectedAmount = qtySelect.val(); deleteOptions(qtySelect, ''); if (items[z]['quantity'] < 10) { limit = items[z]['quantity'] } qtySelect.append('Qty'); for (var i = 1; i <= limit; i++) { qtySelect.append('' + i + ''); } qtySelect.val(selectedAmount > limit ? limit : selectedAmount); if (items[z]['quantity_type'] === 'MORE_THAN') { if (items[z]['quantity'] < 10) { $('#number-of-available, #mobile-number-of-available').html( 'Mehr als' + ' ' + items[z]['quantity'] + ' ' + 'quantity' ); } else { $('#number-of-available, #mobile-number-of-available').html( 'Mehr als' + ' ' + '10' + ' ' + 'quantity' ); } } else if (items[z]['quantity_type'] === 'EXACT') { if (items[z]['quantity'] !== 1) { $('#number-of-available, #mobile-number-of-available').html(items[z]['quantity'] + ' ' + 'verfügbar' ); } else { $('#number-of-available, #mobile-number-of-available').html('1 verfügbar') } } } } } } /** * Check if all item-attributes are chosen, then set the id of the fitting item * as value of the id input field and change the item image, else set its value to empty */ function setItemId() { var correctImageFound = false; if (arrayLength(selectedValues) === configurableAttributeCount) { for (var a = 0; a < arrayLength(items); a++) { if (itemValid(items[a], selectedValues)) { idInput.val(items[a].id); $('.buy-button').removeClass('disabled'); for (var i = 0; i < imageArray.length; i++) { if(correctImageFound){ break; } if (imageArray[i]['imageArray']['attributes'] !== undefined) { for(var j = 0; j < imageArray[i]['imageArray']['attributes']['itemId'].length; j++){ if(imageArray[i]['imageArray']['attributes']['itemId'][j] === items[a].id){ correctImageFound = true; onImageClick(i, "selector"); break; } } } } break; } } } else { idInput.val(''); $('.buy-button').addClass('disabled'); buttonClicked = 0; showMessage = 0; } } /** * if the attribute from the selector is set, set the selector to this attribute * else set it to default * Needed because every selection deletes and readds all the options which * causes the value to reset */ function setSelectorValue() { $.each(selectors, function (index, element) { var selector = $(element); if (selectedValues[selector.attr('title')] !== null) { if (checkOptionExisting(selector.children(), selectedValues[selector.attr('title')])) { selector.val(selectedValues[selector.attr('title')]); } } else { selector.val(''); } }); } /** * if user clicks on buy button and not all attributes are selected -> highlight * attribute selectors that are not set */ var buttonClicked = 0, showMessage = 0; $('.buy-button.disabled').on('click', function(event) { if ($('.buy-button').hasClass('disabled')) { event.preventDefault(); } if (buttonClicked == 0) { $.each(selectors, function (index, element) { var selector = $(element); if ( selector.attr('data-selected') == 'unselected') { $(this).css('border-color', 'red'); if (showMessage == 0) { $('.selector-wrapper').append('
'); showMessage = 1; push2dataLayer({ 'event': 'variantError', 'errorMessage': selector.attr('title') }); } } }); buttonClicked = 1; } }); /**call the selectorHandler if the user selects something in a selector*/ selectors.change(function () { changedBySelectorOrMini = true; selectorHandler(this, true); }); /**disables attributes of selectors when an attribute is selected and it is out of stock*/ function disableOptions() { $.each(selectedValues, function (key, value) { $.each(selectorBuildArray[key][value], function (attrName, attrValueArray) { $.each(attrValueArray, function (attrValue, available) { if (attrValue.indexOf('"') >= 0) { attrValue = correctifyString(attrValue); } var option = $('select[title="' + attrName + '"] > option[value="' + attrValue + '"]'); if (option.is(':enabled')) { option.attr('disabled', !available); } if (option.is(':disabled') && !(option.html()).includes('[nicht mehr vorrätig]')) { option.html(option.html() + ' [nicht mehr vorrätig]'); } }); }); }); } /** * handles the selection of the item variants. Deletes all options if a option is * selected and adds only the ones corresponding to the already selected ones */ function selectorHandler(selector, calledFromSelector) { var callSelectorTitle = selector.title; var callSelectorValue = selector.value; /**save selected values in associative array*/ if (!(callSelectorValue === '')) { selectedValues[callSelectorTitle] = callSelectorValue; } else { delete selectedValues[callSelectorTitle]; } /** * if selectorHandler was called by selecting a value, and that value was a type that should * change the image, go to the first Image associated with that value * if it was not, reset the selectedValues and the data tag in the selectors */ if (calledFromSelector) { if (validPictureChangeAttributes.indexOf(callSelectorTitle) !== -1 && imageArray !== null) { for (var i = 0; i < imageArray.length; i++) { if (imageArray[i]['imageArray']['attributes'] !== undefined) { if (imageAttributeCheck(imageArray[i]['imageArray']['attributes'])) { onImageClick(i, "selector"); break; } } } } } else { selectedValues = {}; if (callSelectorValue !== '') { selectedValues[callSelectorTitle] = callSelectorValue; } $.each(selectors, function (index, element) { var jElm = $(element); jElm.attr('data-selected', 'unselected'); }); } /** * if the calling selector was set to a value, set its html attribute 'data-selected' * to selected */ if (callSelectorValue !== '') { $(selector).attr('data-selected', 'selected'); if (buttonClicked !== 0) { $(selector).css('border-color', '#E3E3E3'); $('.no-option-selected').remove(); } } else { $(selector).attr('data-selected', 'unselected'); } deleteOptions(selectors, callSelectorTitle); /**add all options that fit the selected ones to all selectors*/ $.each(selectors, function (index, element) { var selector = $(element); var selectedValuesExclusive = $.extend({}, selectedValues); var selectorTitle = selector.attr('title'); var selectorData = selector.attr('data-selected'); if (selectedValuesExclusive[selectorTitle] !== null) { delete selectedValuesExclusive[selectorTitle]; } if (selectorData === 'unselected') { for (var a = 0; a < items.length; a++) { if (itemValid(items[a], selectedValues)) { addOptions(items[a], selector); } } } else { if (selectorTitle !== callSelectorTitle) { for (var b = 0; b < items.length; b++) { if (itemValid(items[b], selectedValuesExclusive)) { addOptions(items[b], selector); } } } } }); disableOptions(); setSelectorValue(); setPrice(); setAvailable(); setItemId(); } }); })(jQuery); // faceboook pixel & gAds integration(s) fbq('track', 'ViewContent', { content_name: 'Rasiermesser + 100 Derby Rasierklingen Rasierer Hobel Razor Rasur + Bartschere', content_ids: ['162609308673'], content_type: 'product', value: 13.99, currency: 'EUR' }); // i-ways GTM tracking helper push2dataLayer({ ecomm_prodid: '162609308673', ecomm_pagetype: 'ViewContent', ecomm_totalvalue: 13.99, ecomm: { ecomm_prodid: '162609308673', ecomm_pagetype: 'ViewContent', ecomm_totalvalue: 13.99 } }); $('form').on('submit', function (e) {//e.preventDefault(); if ($('#qty').val() === '0') { $('#qty').val('1'); } var data = {"auctTitl":"Rasiermesser + 100 Derby Rasierklingen Rasierer Hobel Razor Rasur + Bartschere","brand":"NATRA","category":159756,"currency_code":"EUR","id":"162609308673","dimension4":null,"dimension5":"Y","dimension6":"N","dimension7":"Y","dimension8":"N","dimension9":"N","dimension10":"Y","dimension11":1,"dimension12":30,"dimension13":"eBayPlus|Sonstige|Einschreiben|DHL Paket","dimension14":"DE","dimension15":"new","dimension16":"trade-leader-natra","dimension17":"v1|162609308673|0","itemVrtnId":"v1|162609308673|0","list":"Product","metric1":1,"metric2":3,"metric3":30,"metric4":"0.0","metric5":0,"name":"Rasiermesser + 100 Derby Rasierklingen Rasierer Hobel Razor Rasur + Bartschere","price":0,"quantity":10,"slrId":"trade-leader-natra","variant":""}; data.dimension17 = data.itemVrtnId = $('#item-id-input').val(); data.price = parseFloat($('#variantPrice').val()); data.quantity = parseFloat($('#qty').val()); pushEcommerce('addToCart', [processProductData(data)]); fbq('track', 'AddToCart', { content_name: 'Rasiermesser + 100 Derby Rasierklingen Rasierer Hobel Razor Rasur + Bartschere', content_ids: ['162609308673'], contents: [ { 'id': '162609308673', 'quantity': $('#qty').val(), 'item_price': 13.99 } ], content_type: 'product', value: 13.99, currency: 'EUR' }); // i-ways GTM tracking helper push2dataLayer({ ecomm_prodid: '162609308673', ecomm_pagetype: 'AddToCart', ecomm_totalvalue: 13.99, ecomm: { ecomm_prodid: '162609308673', ecomm_pagetype: 'AddToCart', ecomm_totalvalue: 13.99 } }); }); // Alert message design if scrolled $(window).scroll(function(){ var scrolled = $(window).scrollTop(); var heightOrangeMessage = parseInt($('.orange-message').css('height')); if ( scrolled >= heightOrangeMessage ) { $('.to-many-items-alert .alert.alert-danger.alert-dismissable').css('z-index', 9); } else { $('.to-many-items-alert .alert.alert-danger.alert-dismissable').css('z-index', ''); } });