diff --git a/zenitPlatformAtmosSet1/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set1.js b/zenitPlatformAtmosSet1/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set1.js index e835eb4..efaf23c 100644 --- a/zenitPlatformAtmosSet1/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set1.js +++ b/zenitPlatformAtmosSet1/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set1.js @@ -8,6 +8,7 @@ let fp; const inputSameDayDelivery = $("#shippingMethod67f8c7d3ecdb4ad7802bf8eb55c9b13b"); const inputShopPickup = $("#shippingMethod0f44c72f7560450caf061922daeb1602"); const inputDPD = $("#shippingMethod8c6d913e29c14c3cb3c6429724efaab8"); +const inputVorkasse = $("#paymentMethod31bc923a38bc435a80d49d4d40368081"); $(document).ready(function() { let dpInput = $(".confirm-delivery-date #dtgs-datepicker-inputfield"); @@ -51,8 +52,32 @@ $(document).ready(function() { $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); spawnDateInputValue = ""; }); + + // Add smooth scrolling to all links + $("a").on('click', function(event) { + // Make sure this.hash has a value before overriding default behavior + if (this.hash !== "") { + // Prevent default anchor click behavior + event.preventDefault(); + // Store hash + var hash = this.hash; + + var sTop = parseInt($(hash).offset().top - $(".header-inner").outerHeight() - 12); + scrollTo(sTop, 800); + window.location.hash = hash; + } // End if + }); }); +// c = element or pixel position +// e = duration +// d = (optative) ease function. Default easeOutCuaic +function scrollTo(c,e,d){d||(d=easeOutCuaic);var a=document.documentElement;if(0===a.scrollTop){var b=a.scrollTop;++a.scrollTop;a=b+1===a.scrollTop--?a:document.body}b=a.scrollTop;0>=e||("object"===typeof b&&(b=b.offsetTop),"object"===typeof c&&(c=c.offsetTop),function(a,b,c,f,d,e,h){function g(){0>f||1=d?a.scrollTop=c:(a.scrollTop=b-(b-c)*h(f),f+=d*e,setTimeout(g,e))}g()}(a,b,c,0,1/e,20,d))}; +function easeOutCuaic(t){ + t--; + return t*t*t+1; +} + function manipulateDateInputValue() { spawnDateInputValue = $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(); if (inputSameDayDelivery.is(':checked')) { @@ -68,6 +93,11 @@ function changeDelivery(fp) { $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(spawnDateInputValue + " " + $(this).text()); }); + let daysToAdd = 0; + // if Vorkasse add 4 days + if (inputVorkasse.is(':checked')) { + daysToAdd = 4; + } if ($(".confirm-address-shipping").data("iso") !== "AT") { if (inputShopPickup.is(':checked')) { // Abholung im Ladengeschäft @@ -79,8 +109,11 @@ function changeDelivery(fp) { // Abendzustellung console.log("Abendzustellung"); $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(''); - spwnIncludedDays = [1,2,3,4,5]; - setIncludedDays("evening", fp, 0); + spwnIncludedDays = [1, 2, 3, 4, 5]; + if (daysToAdd === 0) { + daysToAdd = 0; + } + setIncludedDays("evening", fp, daysToAdd); $("#spwn-delivery p").text("Abendzustellung gewählt. Bitte wählen Sie nun eine Wunsch-Zeit:"); $("#spwn-delivery .spwn-delivery--time").append("18 - 21 Uhr20 - 23 Uhr"); // If not date from DPD days @@ -90,20 +123,43 @@ function changeDelivery(fp) { } // If DPD date is not in Abendzustellung range } else { - $("#spwn-remove-date").trigger("click"); + $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); + spawnDateInputValue = ""; } } else { // DPD console.log("DPD"); - spwnIncludedDays = [2,3,4,5,6]; - setIncludedDays("dpd", fp, 1); + if ($(".confirm-address-shipping").data("iso") === "DE") { + spwnIncludedDays = [2, 3, 4, 5, 6]; + } else { + // All other countries without saturday + spwnIncludedDays = [2, 3, 4, 5]; + } + if (daysToAdd === 0) { + daysToAdd = 1; + } + setIncludedDays("dpd", fp, daysToAdd); $("#spwn-delivery p").text("DPD gewählt. Die Zustellung erfolgt zwischen 7 und 13 Uhr."); + if (!$(".flatpickr-day").hasClass("selected")) { + // If Abendzustellung date is not in DPD range + $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); + spawnDateInputValue = ""; + } } } else { console.log("DPD AT"); - spwnIncludedDays = [3,4]; - setIncludedDays("dpd", fp, 2); + // only wednesday and thursday + spwnIncludedDays = [3, 4]; + if (daysToAdd === 0) { + daysToAdd = 2; + } + setIncludedDays("dpd", fp, daysToAdd); $("#spwn-delivery p").text("DPD gewählt. Die Zustellung erfolgt zwischen 7 und 18 Uhr."); + if (!$(".flatpickr-day").hasClass("selected")) { + // If Abendzustellung or DPD DE date is not in DPD AT range + $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); + spawnDateInputValue = ""; + } } } @@ -112,13 +168,10 @@ function setIncludedDays(delivery, fp, addDays) { let spwnDateTemp = new Date(); spwnDateTemp.setDate(spwnDateTemp.getDate() + addDays); - let spwnTime = parseInt(spwnDateTemp.getHours() + "" + spwnDateTemp.getMinutes()); - // If after 1pm add one extra day - if (delivery === "evening" && spwnTime > 1300) { + let spwnTime = parseInt((spwnDateTemp.getHours() < 10 ? '0' : '') + spwnDateTemp.getHours() + "" + (spwnDateTemp.getMinutes() < 10 ? '0' : '') + spwnDateTemp.getMinutes()); + // If "evening" after 11am add one extra day or if "dpd" after 2pm add one extra day + if ((delivery === "evening" && spwnTime > 1100) || (delivery === "dpd" && spwnTime > 1400)) { spwnDateTemp.setDate(spwnDateTemp.getDate() + 1); - // If after 2pm add one extra day - } else if (delivery === "dpd" && spwnTime > 1400) { - spwnDateTemp.setDate(spwnDateTemp.getDate() + 1); } let spwnDate = fp.formatDate(spwnDateTemp, "d.m.Y"); fp.set("minDate", spwnDate); @@ -137,7 +190,7 @@ function setIncludedDays(delivery, fp, addDays) { if($.inArray(formattedDate, dtgsDeliveryDateExcludedDates) > -1) { return false; } - // Datum auf Bereich Montag = 0, Sonntag = 7 bringen + // Datum auf Bereich Montag = 1, Sonntag = 7 bringen return spwnIncludedDays.indexOf(((date.getDay() + 6) % 7) + 1) !== -1; } ]); diff --git a/zenitPlatformAtmosSet1/src/Resources/app/storefront/src/scss/overrides.scss b/zenitPlatformAtmosSet1/src/Resources/app/storefront/src/scss/overrides.scss index 3e1f4b0..465dcbf 100644 --- a/zenitPlatformAtmosSet1/src/Resources/app/storefront/src/scss/overrides.scss +++ b/zenitPlatformAtmosSet1/src/Resources/app/storefront/src/scss/overrides.scss @@ -8,7 +8,7 @@ https://getbootstrap.com/docs/4.0/getting-started/theming/#variable-defaults */ html { - scroll-behavior: smooth; + //scroll-behavior: smooth; } body { diff --git a/zenitPlatformAtmosSet2/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set2.js b/zenitPlatformAtmosSet2/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set2.js index 5d45776..b961c00 100644 --- a/zenitPlatformAtmosSet2/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set2.js +++ b/zenitPlatformAtmosSet2/src/Resources/app/storefront/dist/storefront/js/zenit-platform-atmos-set2.js @@ -8,12 +8,15 @@ let fp; const inputSameDayDelivery = $("#shippingMethod67f8c7d3ecdb4ad7802bf8eb55c9b13b"); const inputShopPickup = $("#shippingMethod0f44c72f7560450caf061922daeb1602"); const inputDPD = $("#shippingMethod8c6d913e29c14c3cb3c6429724efaab8"); +const inputVorkasse = $("#paymentMethod31bc923a38bc435a80d49d4d40368081"); $(document).ready(function() { let dpInput = $(".confirm-delivery-date #dtgs-datepicker-inputfield"); if (dpInput.length) { fp = document.querySelector("#dtgs-datepicker-inputfield")._flatpickr; dpInput.prop('disabled', true); + dpInput.wrap('
'); + $("").insertAfter(dpInput); $("

").insertAfter(".confirm-delivery-date"); fp.config.onChange.push(function() { manipulateDateInputValue(); @@ -44,8 +47,37 @@ $(document).ready(function() { tagBar(sticky, parentContainer, stickyTop); }); } + + $("body").on("click", "#spwn-remove-date", function() { + $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); + spawnDateInputValue = ""; + }); + + // Add smooth scrolling to all links + $("a").on('click', function(event) { + // Make sure this.hash has a value before overriding default behavior + if (this.hash !== "") { + // Prevent default anchor click behavior + event.preventDefault(); + // Store hash + var hash = this.hash; + + var sTop = parseInt($(hash).offset().top - $(".header-inner").outerHeight() - 12); + scrollTo(sTop, 800); + window.location.hash = hash; + } // End if + }); }); +// c = element or pixel position +// e = duration +// d = (optative) ease function. Default easeOutCuaic +function scrollTo(c,e,d){d||(d=easeOutCuaic);var a=document.documentElement;if(0===a.scrollTop){var b=a.scrollTop;++a.scrollTop;a=b+1===a.scrollTop--?a:document.body}b=a.scrollTop;0>=e||("object"===typeof b&&(b=b.offsetTop),"object"===typeof c&&(c=c.offsetTop),function(a,b,c,f,d,e,h){function g(){0>f||1=d?a.scrollTop=c:(a.scrollTop=b-(b-c)*h(f),f+=d*e,setTimeout(g,e))}g()}(a,b,c,0,1/e,20,d))}; +function easeOutCuaic(t){ + t--; + return t*t*t+1; +} + function manipulateDateInputValue() { spawnDateInputValue = $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(); if (inputSameDayDelivery.is(':checked')) { @@ -61,6 +93,11 @@ function changeDelivery(fp) { $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(spawnDateInputValue + " " + $(this).text()); }); + let daysToAdd = 0; + // if Vorkasse add 4 days + if (inputVorkasse.is(':checked')) { + daysToAdd = 4; + } if ($(".confirm-address-shipping").data("iso") !== "AT") { if (inputShopPickup.is(':checked')) { // Abholung im Ladengeschäft @@ -72,8 +109,11 @@ function changeDelivery(fp) { // Abendzustellung console.log("Abendzustellung"); $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(''); - spwnIncludedDays = [1,2,3,4,5]; - setIncludedDays("evening", fp, 0); + spwnIncludedDays = [1, 2, 3, 4, 5]; + if (daysToAdd === 0) { + daysToAdd = 0; + } + setIncludedDays("evening", fp, daysToAdd); $("#spwn-delivery p").text("Abendzustellung gewählt. Bitte wählen Sie nun eine Wunsch-Zeit:"); $("#spwn-delivery .spwn-delivery--time").append("18 - 21 Uhr20 - 23 Uhr"); // If not date from DPD days @@ -84,19 +124,42 @@ function changeDelivery(fp) { // If DPD date is not in Abendzustellung range } else { $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); + spawnDateInputValue = ""; } } else { // DPD console.log("DPD"); - spwnIncludedDays = [2,3,4,5,6]; - setIncludedDays("dpd", fp, 1); + if ($(".confirm-address-shipping").data("iso") === "DE") { + spwnIncludedDays = [2, 3, 4, 5, 6]; + } else { + // All other countries without saturday + spwnIncludedDays = [2, 3, 4, 5]; + } + if (daysToAdd === 0) { + daysToAdd = 1; + } + setIncludedDays("dpd", fp, daysToAdd); $("#spwn-delivery p").text("DPD gewählt. Die Zustellung erfolgt zwischen 7 und 13 Uhr."); + if (!$(".flatpickr-day").hasClass("selected")) { + // If Abendzustellung date is not in DPD range + $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); + spawnDateInputValue = ""; + } } } else { console.log("DPD AT"); - spwnIncludedDays = [3,4]; - setIncludedDays("dpd", fp, 2); + // only wednesday and thursday + spwnIncludedDays = [3, 4]; + if (daysToAdd === 0) { + daysToAdd = 2; + } + setIncludedDays("dpd", fp, daysToAdd); $("#spwn-delivery p").text("DPD gewählt. Die Zustellung erfolgt zwischen 7 und 18 Uhr."); + if (!$(".flatpickr-day").hasClass("selected")) { + // If Abendzustellung or DPD DE date is not in DPD AT range + $(".confirm-delivery-date #dtgs-datepicker-inputfield").val(""); + spawnDateInputValue = ""; + } } } @@ -105,12 +168,9 @@ function setIncludedDays(delivery, fp, addDays) { let spwnDateTemp = new Date(); spwnDateTemp.setDate(spwnDateTemp.getDate() + addDays); - let spwnTime = parseInt(spwnDateTemp.getHours() + "" + spwnDateTemp.getMinutes()); - // If after 1pm add one extra day - if (delivery === "evening" && spwnTime > 1300) { - spwnDateTemp.setDate(spwnDateTemp.getDate() + 1); - // If after 2pm add one extra day - } else if (delivery === "dpd" && spwnTime > 1400) { + let spwnTime = parseInt((spwnDateTemp.getHours() < 10 ? '0' : '') + spwnDateTemp.getHours() + "" + (spwnDateTemp.getMinutes() < 10 ? '0' : '') + spwnDateTemp.getMinutes()); + // If "evening" after 11am add one extra day or if "dpd" after 2pm add one extra day + if ((delivery === "evening" && spwnTime > 1100) || (delivery === "dpd" && spwnTime > 1400)) { spwnDateTemp.setDate(spwnDateTemp.getDate() + 1); } let spwnDate = fp.formatDate(spwnDateTemp, "d.m.Y"); @@ -130,7 +190,7 @@ function setIncludedDays(delivery, fp, addDays) { if($.inArray(formattedDate, dtgsDeliveryDateExcludedDates) > -1) { return false; } - // Datum auf Bereich Montag = 0, Sonntag = 7 bringen + // Datum auf Bereich Montag = 1, Sonntag = 7 bringen return spwnIncludedDays.indexOf(((date.getDay() + 6) % 7) + 1) !== -1; } ]); diff --git a/zenitPlatformAtmosSet2/src/Resources/app/storefront/src/scss/overrides.scss b/zenitPlatformAtmosSet2/src/Resources/app/storefront/src/scss/overrides.scss index 9a44d9b..edb7c5a 100644 --- a/zenitPlatformAtmosSet2/src/Resources/app/storefront/src/scss/overrides.scss +++ b/zenitPlatformAtmosSet2/src/Resources/app/storefront/src/scss/overrides.scss @@ -8,7 +8,7 @@ https://getbootstrap.com/docs/4.0/getting-started/theming/#variable-defaults */ html { - scroll-behavior: smooth; + //scroll-behavior: smooth; } body {