Changeset 3202868
- Timestamp:
- 12/05/2024 09:10:20 AM (14 months ago)
- Location:
- boxtal-connect
- Files:
-
- 123 added
- 11 edited
-
tags/1.3.2 (added)
-
tags/1.3.2/Boxtal (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css/component.css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css/mapbox-gl.min.css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css/notices.css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css/parcel-point.css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css/shipping-method.css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css/tom-select.bootstrap5.min.css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/css/tracking.css (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/img (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/img/icon-close.png (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/img/marker-recipient.png (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/img/marker.png (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/component.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/component.min.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/mapbox-gl.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/notices.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/notices.min.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/parcel-point.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/parcel-point.min.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/polyfills.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/polyfills.min.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/shipping-method.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/shipping-method.min.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/js/tom-select.complete.min.js (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/less (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/less/component.less (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/less/notices.less (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/less/parcel-point.less (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/less/shipping-method.less (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/less/tracking.less (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-order-edit-page-parcelpoint.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-order-edit-page-tracking.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-order-parcelpoint.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-order-tracking.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-order-view-modal-print-tracking.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-order-view-modal-tracking.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-shipping-method-rate.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-shipping-method-rates-table.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-subscription-edit-page-parcelpoint.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-admin-subscription-parcelpoint.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-configuration-failure-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-custom-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-environment-warning-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-front-order-parcelpoint.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-front-order-tracking.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-front-subscription-parcelpoint.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-order-parcelpoint.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-order-tracking.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-pairing-failure-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-pairing-success-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-pairing-update-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-settings-page.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-setup-wizard-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/assets/views/html-update-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/autoloader.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/class-plugin.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/init (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/init/class-api-action.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/init/class-component.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/init/class-environment-check.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/init/class-setup-wizard.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-abstract-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-configuration-failure-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-custom-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-environment-warning-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-notice-controller.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-pairing-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-pairing-update-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/notice/class-setup-wizard-notice.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/order (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/order/class-admin-order-page.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/order/class-controller.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/order/class-front-order-page.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/resource (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/resource/publickey (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/rest-controller (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/rest-controller/class-order.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/rest-controller/class-shop.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/settings (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/settings/class-page.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/class-controller.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/class-settings-override.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/class-shipping-method.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-checkout.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-controller.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-parcel-point-block-integration.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-render.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/subscription (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/subscription/class-admin-subscription-page.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/subscription/class-front-subscription-page.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-api-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-auth-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-cart-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-configuration-report-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-configuration-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-country-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-customer-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-database-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-environment-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-frontend-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-logger-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-misc-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-order-item-shipping-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-order-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-parcelpoint-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-product-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-shipping-api-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-shipping-method-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-shipping-rate-util.php (added)
-
tags/1.3.2/Boxtal/BoxtalConnectWoocommerce/util/class-subscription-util.php (added)
-
tags/1.3.2/boxtal-connect.php (added)
-
tags/1.3.2/changelog.txt (added)
-
tags/1.3.2/readme.txt (added)
-
trunk/Boxtal/BoxtalConnectWoocommerce/assets/js/parcel-point.js (modified) (12 diffs)
-
trunk/Boxtal/BoxtalConnectWoocommerce/assets/js/parcel-point.min.js (modified) (1 diff)
-
trunk/Boxtal/BoxtalConnectWoocommerce/class-plugin.php (modified) (1 diff)
-
trunk/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-controller.php (modified) (1 diff)
-
trunk/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-parcel-point-block-integration.php (modified) (1 diff)
-
trunk/Boxtal/BoxtalConnectWoocommerce/util/class-api-util.php (modified) (1 diff)
-
trunk/Boxtal/BoxtalConnectWoocommerce/util/class-configuration-report-util.php (modified) (1 diff)
-
trunk/Boxtal/BoxtalConnectWoocommerce/util/class-frontend-util.php (modified) (1 diff)
-
trunk/boxtal-connect.php (modified) (1 diff)
-
trunk/changelog.txt (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/assets/js/parcel-point.js
r3147056 r3202868 103 103 isValidResponse: function(response) { 104 104 return typeof response === 'object' 105 && response !== null 106 && true === response.success 105 && response !== null 106 && true === response.success 107 107 && 'data' in response; 108 108 }, … … 123 123 } else { 124 124 const element = document.querySelector(elSelector); 125 125 126 126 element.addEventListener(eventName, function(event) { 127 127 const possibleTargets = element.querySelectorAll(selector); 128 128 const target = event.target; 129 129 130 130 for (let i = 0, l = possibleTargets.length; i < l; i++) { 131 131 let el = target; 132 132 const p = possibleTargets[i]; 133 133 134 134 while(el && el !== element) { 135 135 if (el === p) { 136 136 return fn.call(p, event); 137 137 } 138 138 139 139 el = el.parentNode; 140 140 } … … 154 154 } 155 155 }) 156 156 157 157 observer.observe(target, { 158 158 childList: true, … … 210 210 211 211 if (openingDay.weekday) { 212 var parsedDay = openingDay.weekday[0] + ' '; 212 var weekdayInitial = Components.util.isI18nEnabled() 213 ? wp.i18n.__(openingDay.weekday, 'boxtal-connect' ).charAt(0) 214 : Components.util.translate( openingDay.weekday ); 215 var parsedDay = weekdayInitial + ' '; 213 216 var openingPeriods = openingDay.openingPeriods; 214 217 var parsedPeriods = []; … … 255 258 256 259 isI18nEnabled() { 257 return typeof wp !== 'undefined' && 'i18n' in wp;260 return false; 258 261 }, 259 262 260 263 translate(key) { 261 264 let result = key; 262 265 263 266 if (typeof translations !== 'undefined' && key in translations) { 264 267 result = translations[key]; … … 409 412 .setPopup(popup) 410 413 .addTo(self.map); 411 414 412 415 self.markers.push(marker); 413 416 … … 566 569 } 567 570 }); 568 571 569 572 jQuery('body').on('click', '.bw-select-parcel', function() { 570 573 Components.map.init(); … … 572 575 self.getMapPoints(); 573 576 }); 574 577 575 578 jQuery('body').on('click', '.bw-parcel-point-button', function() { 576 579 const { __ } = wp.i18n; … … 700 703 Components.util.observeDom(document.body, (mutation) => { 701 704 let found = false; 702 705 703 706 if (mutation.addedNodes) { 704 707 for (let i = 0; i < mutation.addedNodes.length; i++) { … … 780 783 const self = this; 781 784 782 const data = self.getFrontendData(); 785 const data = self.getFrontendData(); 783 786 784 787 if (data !== null) { … … 795 798 data.mapLogoHrefUrl 796 799 ); 797 800 798 801 Components.util.on('body', 'click', '.bw-select-parcel', function(e) { 799 802 self.setPackageKey(e); … … 802 805 self.getMapPoints(); 803 806 }); 804 807 805 808 Components.util.on('body', 'click', '.bw-parcel-point-button', function() { 806 809 var carrierNotFound = Components.util.isI18nEnabled() 807 810 ? wp.i18n.__( 'Unable to find carrier', 'boxtal-connect' ) 808 811 : Components.util.translate('Unable to find carrier'); 809 812 810 813 const carrier = self.getSelectedCarrier(); 811 814 if (!carrier) { -
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/assets/js/parcel-point.min.js
r3147056 r3202868 1 "use strict";var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};!function(){var e={};e.api={ajaxUrl:null,getShippingMethodExtraLabelNonce:null,getPointsNonce:null,setPointNonce:null,setApiConfiguration:function(e,t,n,o){this.ajaxUrl=e,this.getShippingMethodExtraLabelNonce=t,this.getPointsNonce=n,this.setPointNonce=o},selectPoint:function(e,t,n,o,a,i,r,c,l,s,p,d,u){var h=this,g=new XMLHttpRequest;g.onreadystatechange=function(){if(4===g.readyState){var e=h.getRequestResponse(g);h.isValidResponse(e)?d({data:e.data,name:o,address:i,zipcode:r,city:c,distance:p}):u(e)}},g.open("POST",h.ajaxUrl),g.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),g.responseType="json",g.send("action=bw_set_point&carrier="+encodeURIComponent(e)+"&code="+encodeURIComponent(n)+"&name="+encodeURIComponent(o)+"&address="+encodeURIComponent(i)+"&zipcode="+encodeURIComponent(r)+"&city="+encodeURIComponent(c)+"&country="+encodeURIComponent(l)+"&openingHours="+encodeURIComponent(s)+"&network="+encodeURIComponent(a)+"&packageKey="+encodeURIComponent(t)+"&_wpnonce="+encodeURIComponent(h.setPointNonce))},getParcelPoints:function(e,t,n,o){var a=this,i=new XMLHttpRequest;i.onreadystatechange=function(){if(4===i.readyState){var e=a.getRequestResponse(i);a.isValidResponse(e)?n(e.data):o(e)}},i.open("POST",a.ajaxUrl),i.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),i.responseType="json",i.send("action=bw_get_points&carrier="+encodeURIComponent(e)+"&packageKey="+encodeURIComponent(t)+"&_wpnonce="+encodeURIComponent(a.getPointsNonce))},getShippingMethodExtraLabel:function(e,t,n,o){var a=this,i=new XMLHttpRequest;i.onreadystatechange=function(){if(4===i.readyState){var e=a.getRequestResponse(i);a.isValidResponse(e)?n(e.data):o(e)}},i.open("POST",a.ajaxUrl),i.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),i.responseType="json",i.send("action=bw_get_shipping_method_extra_label&shippingMethod="+encodeURIComponent(e)+"&packageKey="+encodeURIComponent(t)+"&_wpnonce="+encodeURIComponent(a.getShippingMethodExtraLabelNonce))},isValidResponse:function(e){return"object"===(void 0===e?"undefined":_typeof(e))&&null!==e&&!0===e.success&&"data"in e},getRequestResponse:function(e){return"object"===_typeof(e.response)&&null!==e.response?e.response:JSON.parse(e.response)}},e.util={on:function(e,t,n,o){if("undefined"!=typeof jQuery)jQuery(e).on(t,n,o);else{var a=document.querySelector(e);a.addEventListener(t,function(e){for(var t=a.querySelectorAll(n),i=e.target,r=0,c=t.length;r<c;r++)for(var l=i,s=t[r];l&&l!==a;){if(l===s)return o.call(s,e);l=l.parentNode}})}},observeDom:function(e,t,n){var o=void 0;return(o=new MutationObserver(function(e){var o=!0,a=!1,i=undefined;try{for(var r,c=e[Symbol.iterator]();!(o=(r=c.next()).done);o=!0){var l=r.value;if(t(l)){setTimeout(function(){return n()});break}}}catch(s){a=!0,i=s}finally{try{!o&&c["return"]&&c["return"]()}finally{if(a)throw i}}})).observe(e,{childList:!0,subtree:!0,attributes:!0,characterData:!1}),o},formatDistance:function(t){var n="undefined"!=typeof wp&&"i18n"in wp?wp.i18n.__("%skm away","boxtal-connect"):e.util.translate("%skm away"),o=null;return null!==t&&(t=Math.round(t/100)/10,isNaN(t)||(o=" ("+this.sprintf(n,t)+")")),o},formatParcelPoingAddress:function(t,n,o,a){var i=[t,[o,n].filter(function(e){return null!==e}).join(", ")].join(" ");return null!==(a=e.util.formatDistance(a))&&(i+=" "+a),i},fillSpaces:function(e,t){for(;e.length<t;)e+=" ";return e},formatOpeningDays:function(t){for(var n=[],o=e.util.fillSpaces("",11),a=0;a<t.length;a++){var i=t[a];if(i.weekday){for(var r= i.weekday[0]+" ",c=i.openingPeriods,l=[],s=0;s<c.length;s++){var p=c[s],d=p.openingTime===undefined?"":p.openingTime,u=p.closingTime===undefined?"":p.closingTime;""!==d&&""!==u?l.push(d+"-"+u):l.push(o)}r+=l.join(" "),a%2==1&&(r='<span style="background-color: #d8d8d8;">'+r+"</span>"),n.push(r)}}return'<pre class="bw-parcel-point-schedule">'+n.join("\n")+"</pre>"},formatHours:function(e){var t=e.split(":");return 3===t.length&&(e=t[0]+":"+t[1]),e},isWoocommerceBlocks:function(){return"wc"in window&&"blocksCheckout"in window.wc&&"wcSettings"in window.wc&&window.wc.wcSettings.getSetting("boxtal-connect-parcel-point_data")},isI18nEnabled:function(){return"undefined"!=typeof wp&&"i18n"in wp},translate:function(e){var t=e;return"undefined"!=typeof translations&&e in translations&&(t=translations[e]),t},sprintf:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];if("undefined"!=typeof sprintf)return sprintf.apply(undefined,[e].concat(n));var a=!0,i=!1,r=undefined;try{for(var c,l=n[Symbol.iterator]();!(a=(c=l.next()).done);a=!0){var s=c.value;e=e.replace("%s",s)}}catch(p){i=!0,r=p}finally{try{!a&&l["return"]&&l["return"]()}finally{if(i)throw r}}return e})},e.map={mapContainer:null,map:null,markers:[],mapUrl:null,mapLogoImageUrl:null,mapLogoHrefUrl:null,setMapConfiguration:function(e,t,n){this.mapUrl=e,this.mapLogoImageUrl=t,this.mapLogoHrefUrl=n},init:function(){var t=this,n=document.createElement("div");if(t.mapContainer=document.querySelector("#bw-map"),!t.mapContainer){var o=e.util.isI18nEnabled()?wp.i18n.__("Close map","boxtal-connect"):e.util.translate("Close map");n.setAttribute("class","bw-close"),n.setAttribute("title",o),n.addEventListener("click",function(){t.close()});var a=document.createElement("div");a.setAttribute("id","bw-map-canvas");var i=document.createElement("div");i.setAttribute("id","bw-map-container"),i.appendChild(a);var r=document.createElement("div");r.setAttribute("id","bw-pp-container");var c=document.createElement("div");c.setAttribute("id","bw-map-inner"),c.appendChild(n),c.appendChild(i),c.appendChild(r),t.mapContainer=document.createElement("div"),t.mapContainer.setAttribute("id","bw-map"),t.mapContainer.appendChild(c),document.body.appendChild(t.mapContainer),t.map=new mapboxgl.Map({container:"bw-map-canvas",style:t.mapUrl,zoom:14,accessToken:"whatever"}),t.map.addControl(new mapboxgl.NavigationControl);var l=document.createElement("img");l.setAttribute("src",t.mapLogoImageUrl);var s=document.createElement("a");s.setAttribute("href",t.mapLogoHrefUrl),s.setAttribute("target","_blank"),s.appendChild(l);var p=document.createElement("div");p.setAttribute("id","bw-logo"),p.appendChild(s);var d=document.querySelector(".mapboxgl-ctrl-top-left");d&&d.appendChild(p)}},open:function(){this.mapContainer.classList.add("bw-modal-show");var e=window.pageYOffset+(window.innerHeight-this.mapContainer.offsetHeight)/2;e<window.pageYOffset&&(e=window.pageYOffset),this.mapContainer.style.top=e+"px",this.map.resize()},close:function(){this.mapContainer.classList.remove("bw-modal-show"),this.clearMarkers()},addParcelPointMarkers:function(e){for(var t=0;t<e.length;t++)e[t].index=t,this.addParcelPointMarker(e[t])},addParcelPointMarker:function(t){var n=e.util.isI18nEnabled()?wp.i18n.__("Choose this parcel point","boxtal-connect"):e.util.translate("Choose this parcel point"),o=e.util.isI18nEnabled()?wp.i18n.__("Opening hours","boxtal-connect"):e.util.translate("Opening hours"),a='<div class="bw-marker-popup"><b>'+t.parcelPoint.name+'</b><br/><a href="#" class="bw-parcel-point-button" '+this.generateParcelPointTagData(t)+"><b>"+n+"</b></a><br/>"+t.parcelPoint.location.street+", "+t.parcelPoint.location.zipCode+" "+t.parcelPoint.location.city+"<br/><b>"+o+"</b><br/>";a+=e.util.formatOpeningDays(t.parcelPoint.openingDays);var i=this.getMarkerHtmlElement(t.index+1),r=new mapboxgl.Popup({offset:25}).setHTML(a),c=new mapboxgl.Marker({element:i,anchor:"bottom"}).setLngLat(new mapboxgl.LngLat(parseFloat(t.parcelPoint.location.position.longitude),parseFloat(t.parcelPoint.location.position.latitude))).setPopup(r).addTo(this.map);this.markers.push(c),this.addRightColMarkerEvent(c,t.parcelPoint.code)},generateParcelPointTagData:function(e){return' data-code="'+e.parcelPoint.code+'" data-name="'+encodeURIComponent(e.parcelPoint.name)+'" data-network="'+e.parcelPoint.network+'" data-zipcode="'+encodeURIComponent(e.parcelPoint.location.zipCode)+'" data-country="'+encodeURIComponent(e.parcelPoint.location.country)+'" data-city="'+encodeURIComponent(e.parcelPoint.location.city)+'" data-street="'+encodeURIComponent(e.parcelPoint.location.street)+'" data-openinghours="'+encodeURIComponent(JSON.stringify(e.parcelPoint.openingDays))+'" data-distance="'+encodeURIComponent(JSON.stringify(e.distanceFromSearchLocation))+'" '},addRightColMarkerEvent:function(t,n){e.util.on("body","click",".bw-show-info-"+n,function(){t.togglePopup()})},addRecipientMarker:function(e){var t=document.createElement("div");t.className="bw-marker-recipient";var n=new mapboxgl.Marker({element:t,anchor:"bottom"}).setLngLat(new mapboxgl.LngLat(parseFloat(e.position.longitude),parseFloat(e.position.latitude))).addTo(this.map);this.markers.push(n)},setMapBounds:function(){for(var e=new mapboxgl.LngLatBounds,t=0;t<this.markers.length;t++){var n=this.markers[t];e=e.extend(n.getLngLat())}this.map.fitBounds(e,{padding:30,linear:!0})},fillParcelPointPanel:function(t){var n=e.util.isI18nEnabled()?wp.i18n.__("Choose this parcel point","boxtal-connect"):e.util.translate("Choose this parcel point"),o="";o+="<table><tbody>";for(var a=0;a<t.length;a++){var i=t[a],r=e.util.formatDistance(i.distanceFromSearchLocation);o+="<tr>",o+="<td>"+this.getMarkerHtmlElement(a+1).outerHTML,o+='<div class="bw-parcel-point-title"><a class="bw-show-info-'+i.parcelPoint.code+'">'+i.parcelPoint.name+"</a></div><br/>",o+=i.parcelPoint.location.street+"<br/>",o+=i.parcelPoint.location.zipCode+" "+i.parcelPoint.location.city+(null!==r?r:"")+"<br/>",o+='<a class="bw-parcel-point-button" '+this.generateParcelPointTagData(i)+"><b>"+n+"</b></a>",o+="</td>",o+="</tr>"}o+="</tbody></table>",document.querySelector("#bw-pp-container").innerHTML=o},getMarkerHtmlElement:function(e){var t=document.createElement("div");return t.className="bw-marker",t.innerHTML=e,t},clearMarkers:function(){for(var e=0;e<this.markers.length;e++)this.markers[e].remove();this.markers=[]},getPoints:function(t,n,o){var a=this;e.api.getParcelPoints(t,n,function(e){a.addParcelPointMarkers(e.nearbyParcelPoints),a.fillParcelPointPanel(e.nearbyParcelPoints),a.addRecipientMarker(e.searchLocation),a.setMapBounds()},function(e){"object"===(void 0===e?"undefined":_typeof(e))&&"data"in e&&a.showError(e.data.message)})}},e.blocks={cache:{},loading:!1,init:function(){var t=this,n=(0,window.wc.wcSettings.getSetting)("boxtal-connect-parcel-point_data");if(n){e.api.setApiConfiguration(n.ajaxurl,n.getShippingMethodExtraLabelNonce,n.getPointsNonce,n.setPointNonce),e.map.setMapConfiguration(n.mapUrl,n.mapLogoImageUrl,n.mapLogoHrefUrl);var o=!1;t.onCartChange(function(){t.updateSelectedShippingMethodExtraLabel(),o||(o=!0,jQuery("body").on("input",t.getShippintMethodInputsSelector(),function(){return t.updateSelectedShippingMethodExtraLabel()}))}),jQuery("body").on("click",".bw-select-parcel",function(){e.map.init(),e.map.open(),t.getMapPoints()}),jQuery("body").on("click",".bw-parcel-point-button",function(){var n=wp.i18n.__,o=t.getSelectedShippingMethod(),a=t.getSelectedPackageKey();o||t.showError(n("Unable to find carrier","boxtal-connect")),e.api.selectPoint(o,a,this.getAttribute("data-code"),decodeURIComponent(this.getAttribute("data-name")),this.getAttribute("data-network"),decodeURIComponent(this.getAttribute("data-street")),decodeURIComponent(this.getAttribute("data-zipcode")),decodeURIComponent(this.getAttribute("data-city")),decodeURIComponent(this.getAttribute("data-country")),decodeURIComponent(this.getAttribute("data-openinghours")),decodeURIComponent(this.getAttribute("data-distance")),function(n){var i=n.data;t.updateShippingMethodExtraLabelCache(a,o,i.label),t.refreshShippingMethodExtraLabel(),e.map.close()},function(e){"object"===(void 0===e?"undefined":_typeof(e))&&"data"in e&&t.showError(e.data.message)})})}else console.error("[boxtal-connect] Failed to load plugin configuration (blocks)")},getMapPoints:function(){var t=wp.i18n.__,n=this,o=n.getSelectedShippingMethod(),a=n.getSelectedPackageKey();o&&null!==a||n.showError(t("Unable to find carrier","boxtal-connect")),e.map.getPoints(o,a,function(e){return n.showError(e)})},updateSelectedShippingMethodExtraLabel:function(){var t=wp.i18n.__,n=this;n.refreshShippingMethodExtraLabel();var o=n.getSelectedShippingMethod(),a=n.getSelectedPackageKey();o===undefined||a===undefined||n.loading||(n.loading=!0,e.api.getShippingMethodExtraLabel(o,a,function(e){n.updateShippingMethodExtraLabelCache(a,o,e.label),n.refreshShippingMethodExtraLabel(),n.loading=!1},function(){n.showError(t("Unable to find carrier","boxtal-connect")),n.loading=!1}))},getSelectedShippingMethod:function(){return jQuery(this.getShippintMethodInputsSelector()).filter(":checked").val()},getSelectedPackageKey:function(){var e=0,t=jQuery(this.getShippintMethodInputsSelector()).filter(":checked").attr("name");if(t){var n=t.split("-");e=n[n.length-1]}return e},getShippintMethodInputsSelector:function(){var e=this;return e.getShippingMethodsBlockClasses().map(function(t){return"."+t+" "+e.getShippintMethodsRadioControlSelector()}).join(", ")},getShippintMethodsBlockSelector:function(){return this.getShippingMethodsBlockClasses().map(function(e){return"."+e}).join(", ")},getShippintMethodTextLabelSelector:function(){return".wc-block-components-radio-control__label"},getShippingMethodsBlockClasses:function(){return["wp-block-woocommerce-checkout-shipping-methods-block","wp-block-woocommerce-cart-order-summary-shipping-block"]},getShippintMethodsRadioControlSelector:function(){return".wc-block-components-radio-control input"},showError:function(e){console.error(e)},onCartChange:function(t){var n=this;jQuery(n.getShippintMethodsBlockSelector()).filter(function(e,t){return n.isBlockReady(t)}).length>0&&t(),e.util.observeDom(document.body,function(e){var t=!1;if(e.addedNodes)for(var o=0;o<e.addedNodes.length;o++){var a=e.addedNodes[o];if(n.isBlockReady(a)){t=!0;break}}if(e.removedNodes&&!t)for(var i=0;i<e.removedNodes.length;i++){var r=e.removedNodes[i];if(n.isLoaderBlock(r)){t=!0;break}}return t},t)},isBlockReady:function(e){return this.getShippingMethodsBlockClasses().filter(function(t){return e.classList&&e.classList.contains(t)}).length>0&&jQuery(e).find(this.getShippintMethodsRadioControlSelector()).has(":checked")},isLoaderBlock:function(e){return e.classList&&e.classList.contains("wc-block-components-spinner")},updateShippingMethodExtraLabelCache:function(e,t,n){e in this.cache||(this.cache[e]={}),this.cache[e][t]=n},getShippingMethodCachedExtraLabel:function(e,t){return e in this.cache&&t in this.cache[e]?this.cache[e][t]:null},refreshShippingMethodExtraLabel:function(){var e=this.getSelectedShippingMethod(),t=this.getSelectedPackageKey(),n=this.getShippingMethodCachedExtraLabel(t,e);(jQuery(this.getShippintMethodsBlockSelector()).find("label "+this.getShippintMethodTextLabelSelector()).find(".bw-extra-label").remove(),null!==n)&&jQuery(this.getShippintMethodsBlockSelector()).find("label").has("input:checked").find(this.getShippintMethodTextLabelSelector()).first().append('<span class="bw-extra-label"><br/>'+n+"</span>")}},e.legacy={packageKey:null,init:function(){var t=this,n=t.getFrontendData();null!==n?(e.api.setApiConfiguration(n.ajaxurl,n.getShippingMethodExtraLabelNonce,n.getPointsNonce,n.setPointNonce),e.map.setMapConfiguration(n.mapUrl,n.mapLogoImageUrl,n.mapLogoHrefUrl),e.util.on("body","click",".bw-select-parcel",function(n){t.setPackageKey(n),e.map.init(),e.map.open(),t.getMapPoints()}),e.util.on("body","click",".bw-parcel-point-button",function(){var n=e.util.isI18nEnabled()?wp.i18n.__("Unable to find carrier","boxtal-connect"):e.util.translate("Unable to find carrier"),o=t.getSelectedCarrier();o||t.showError(n),e.api.selectPoint(o,t.packageKey,this.getAttribute("data-code"),decodeURIComponent(this.getAttribute("data-name")),this.getAttribute("data-network"),decodeURIComponent(this.getAttribute("data-street")),decodeURIComponent(this.getAttribute("data-zipcode")),decodeURIComponent(this.getAttribute("data-city")),decodeURIComponent(this.getAttribute("data-country")),decodeURIComponent(this.getAttribute("data-openinghours")),decodeURIComponent(this.getAttribute("data-distance")),function(n){var o=n.name,a=n.address,i=n.zipcode,r=n.city,c=n.distance;t.initSelectedParcelPoint();var l=document.querySelector(".bw-parcel-address-"+t.packageKey),s=document.querySelector(".bw-parcel-name-"+t.packageKey);l&&(l.innerHTML=e.util.formatParcelPoingAddress(a,r,i,c)),s&&(s.innerHTML=o),e.map.close()},function(e){"object"===(void 0===e?"undefined":_typeof(e))&&"data"in e&&t.showError(e.data.message)})})):console.error("[boxtal-connect] Failed to load plugin configuration (legacy)")},setPackageKey:function(e){this.packageKey=e.target.attributes.getNamedItem("data-package_key").value},getFrontendData:function(){var e=null;if("undefined"!=typeof bwData)e=bwData;else if("wc"in window&&"wcSettings"in window.wc){var t=window.wc.wcSettings.getSetting("boxtal-connect-parcel-point_data");t&&(e=t)}return e},initSelectedParcelPoint:function(){var t=e.util.isI18nEnabled()?wp.i18n.__("Your parcel point:","boxtal-connect"):e.util.translate("Your parcel point:"),n=document.querySelector(".bw-parcel-client-"+this.packageKey);n.innerHTML=t+" ";var o=document.createElement("span");o.setAttribute("class","bw-parcel-name-"+this.packageKey),n.appendChild(o)},getMapPoints:function(){var t=this,n=e.util.isI18nEnabled()?wp.i18n.__("Unable to find carrier","boxtal-connect"):e.util.translate("Unable to find carrier"),o=t.getSelectedCarrier();o||t.showError(n),e.map.getPoints(o,t.packageKey,function(e){return t.showError(e)})},getSelectedCarrier:function(){var e=void 0,t=document.querySelector('input[type="hidden"].shipping_method');t?e=t.getAttribute("value"):e=document.querySelector("input.shipping_method:checked").getAttribute("value");return e},showError:function(t){e.map.close(),alert(t)}},document.addEventListener("DOMContentLoaded",function(){e.util.isWoocommerceBlocks()?e.blocks.init():e.legacy.init()})}();1 "use strict";var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};!function(){var e={};e.api={ajaxUrl:null,getShippingMethodExtraLabelNonce:null,getPointsNonce:null,setPointNonce:null,setApiConfiguration:function(e,t,n,o){this.ajaxUrl=e,this.getShippingMethodExtraLabelNonce=t,this.getPointsNonce=n,this.setPointNonce=o},selectPoint:function(e,t,n,o,a,i,r,c,l,s,p,d,u){var h=this,g=new XMLHttpRequest;g.onreadystatechange=function(){if(4===g.readyState){var e=h.getRequestResponse(g);h.isValidResponse(e)?d({data:e.data,name:o,address:i,zipcode:r,city:c,distance:p}):u(e)}},g.open("POST",h.ajaxUrl),g.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),g.responseType="json",g.send("action=bw_set_point&carrier="+encodeURIComponent(e)+"&code="+encodeURIComponent(n)+"&name="+encodeURIComponent(o)+"&address="+encodeURIComponent(i)+"&zipcode="+encodeURIComponent(r)+"&city="+encodeURIComponent(c)+"&country="+encodeURIComponent(l)+"&openingHours="+encodeURIComponent(s)+"&network="+encodeURIComponent(a)+"&packageKey="+encodeURIComponent(t)+"&_wpnonce="+encodeURIComponent(h.setPointNonce))},getParcelPoints:function(e,t,n,o){var a=this,i=new XMLHttpRequest;i.onreadystatechange=function(){if(4===i.readyState){var e=a.getRequestResponse(i);a.isValidResponse(e)?n(e.data):o(e)}},i.open("POST",a.ajaxUrl),i.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),i.responseType="json",i.send("action=bw_get_points&carrier="+encodeURIComponent(e)+"&packageKey="+encodeURIComponent(t)+"&_wpnonce="+encodeURIComponent(a.getPointsNonce))},getShippingMethodExtraLabel:function(e,t,n,o){var a=this,i=new XMLHttpRequest;i.onreadystatechange=function(){if(4===i.readyState){var e=a.getRequestResponse(i);a.isValidResponse(e)?n(e.data):o(e)}},i.open("POST",a.ajaxUrl),i.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),i.responseType="json",i.send("action=bw_get_shipping_method_extra_label&shippingMethod="+encodeURIComponent(e)+"&packageKey="+encodeURIComponent(t)+"&_wpnonce="+encodeURIComponent(a.getShippingMethodExtraLabelNonce))},isValidResponse:function(e){return"object"===(void 0===e?"undefined":_typeof(e))&&null!==e&&!0===e.success&&"data"in e},getRequestResponse:function(e){return"object"===_typeof(e.response)&&null!==e.response?e.response:JSON.parse(e.response)}},e.util={on:function(e,t,n,o){if("undefined"!=typeof jQuery)jQuery(e).on(t,n,o);else{var a=document.querySelector(e);a.addEventListener(t,function(e){for(var t=a.querySelectorAll(n),i=e.target,r=0,c=t.length;r<c;r++)for(var l=i,s=t[r];l&&l!==a;){if(l===s)return o.call(s,e);l=l.parentNode}})}},observeDom:function(e,t,n){var o=void 0;return(o=new MutationObserver(function(e){var o=!0,a=!1,i=undefined;try{for(var r,c=e[Symbol.iterator]();!(o=(r=c.next()).done);o=!0){var l=r.value;if(t(l)){setTimeout(function(){return n()});break}}}catch(s){a=!0,i=s}finally{try{!o&&c["return"]&&c["return"]()}finally{if(a)throw i}}})).observe(e,{childList:!0,subtree:!0,attributes:!0,characterData:!1}),o},formatDistance:function(t){var n="undefined"!=typeof wp&&"i18n"in wp?wp.i18n.__("%skm away","boxtal-connect"):e.util.translate("%skm away"),o=null;return null!==t&&(t=Math.round(t/100)/10,isNaN(t)||(o=" ("+this.sprintf(n,t)+")")),o},formatParcelPoingAddress:function(t,n,o,a){var i=[t,[o,n].filter(function(e){return null!==e}).join(", ")].join(" ");return null!==(a=e.util.formatDistance(a))&&(i+=" "+a),i},fillSpaces:function(e,t){for(;e.length<t;)e+=" ";return e},formatOpeningDays:function(t){for(var n=[],o=e.util.fillSpaces("",11),a=0;a<t.length;a++){var i=t[a];if(i.weekday){for(var r=(e.util.isI18nEnabled()?wp.i18n.__(i.weekday,"boxtal-connect").charAt(0):e.util.translate(i.weekday))+" ",c=i.openingPeriods,l=[],s=0;s<c.length;s++){var p=c[s],d=p.openingTime===undefined?"":p.openingTime,u=p.closingTime===undefined?"":p.closingTime;""!==d&&""!==u?l.push(d+"-"+u):l.push(o)}r+=l.join(" "),a%2==1&&(r='<span style="background-color: #d8d8d8;">'+r+"</span>"),n.push(r)}}return'<pre class="bw-parcel-point-schedule">'+n.join("\n")+"</pre>"},formatHours:function(e){var t=e.split(":");return 3===t.length&&(e=t[0]+":"+t[1]),e},isWoocommerceBlocks:function(){return"wc"in window&&"blocksCheckout"in window.wc&&"wcSettings"in window.wc&&window.wc.wcSettings.getSetting("boxtal-connect-parcel-point_data")},isI18nEnabled:function(){return!1},translate:function(e){var t=e;return"undefined"!=typeof translations&&e in translations&&(t=translations[e]),t},sprintf:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];if("undefined"!=typeof sprintf)return sprintf.apply(undefined,[e].concat(n));var a=!0,i=!1,r=undefined;try{for(var c,l=n[Symbol.iterator]();!(a=(c=l.next()).done);a=!0){var s=c.value;e=e.replace("%s",s)}}catch(p){i=!0,r=p}finally{try{!a&&l["return"]&&l["return"]()}finally{if(i)throw r}}return e})},e.map={mapContainer:null,map:null,markers:[],mapUrl:null,mapLogoImageUrl:null,mapLogoHrefUrl:null,setMapConfiguration:function(e,t,n){this.mapUrl=e,this.mapLogoImageUrl=t,this.mapLogoHrefUrl=n},init:function(){var t=this,n=document.createElement("div");if(t.mapContainer=document.querySelector("#bw-map"),!t.mapContainer){var o=e.util.isI18nEnabled()?wp.i18n.__("Close map","boxtal-connect"):e.util.translate("Close map");n.setAttribute("class","bw-close"),n.setAttribute("title",o),n.addEventListener("click",function(){t.close()});var a=document.createElement("div");a.setAttribute("id","bw-map-canvas");var i=document.createElement("div");i.setAttribute("id","bw-map-container"),i.appendChild(a);var r=document.createElement("div");r.setAttribute("id","bw-pp-container");var c=document.createElement("div");c.setAttribute("id","bw-map-inner"),c.appendChild(n),c.appendChild(i),c.appendChild(r),t.mapContainer=document.createElement("div"),t.mapContainer.setAttribute("id","bw-map"),t.mapContainer.appendChild(c),document.body.appendChild(t.mapContainer),t.map=new mapboxgl.Map({container:"bw-map-canvas",style:t.mapUrl,zoom:14,accessToken:"whatever"}),t.map.addControl(new mapboxgl.NavigationControl);var l=document.createElement("img");l.setAttribute("src",t.mapLogoImageUrl);var s=document.createElement("a");s.setAttribute("href",t.mapLogoHrefUrl),s.setAttribute("target","_blank"),s.appendChild(l);var p=document.createElement("div");p.setAttribute("id","bw-logo"),p.appendChild(s);var d=document.querySelector(".mapboxgl-ctrl-top-left");d&&d.appendChild(p)}},open:function(){this.mapContainer.classList.add("bw-modal-show");var e=window.pageYOffset+(window.innerHeight-this.mapContainer.offsetHeight)/2;e<window.pageYOffset&&(e=window.pageYOffset),this.mapContainer.style.top=e+"px",this.map.resize()},close:function(){this.mapContainer.classList.remove("bw-modal-show"),this.clearMarkers()},addParcelPointMarkers:function(e){for(var t=0;t<e.length;t++)e[t].index=t,this.addParcelPointMarker(e[t])},addParcelPointMarker:function(t){var n=e.util.isI18nEnabled()?wp.i18n.__("Choose this parcel point","boxtal-connect"):e.util.translate("Choose this parcel point"),o=e.util.isI18nEnabled()?wp.i18n.__("Opening hours","boxtal-connect"):e.util.translate("Opening hours"),a='<div class="bw-marker-popup"><b>'+t.parcelPoint.name+'</b><br/><a href="#" class="bw-parcel-point-button" '+this.generateParcelPointTagData(t)+"><b>"+n+"</b></a><br/>"+t.parcelPoint.location.street+", "+t.parcelPoint.location.zipCode+" "+t.parcelPoint.location.city+"<br/><b>"+o+"</b><br/>";a+=e.util.formatOpeningDays(t.parcelPoint.openingDays);var i=this.getMarkerHtmlElement(t.index+1),r=new mapboxgl.Popup({offset:25}).setHTML(a),c=new mapboxgl.Marker({element:i,anchor:"bottom"}).setLngLat(new mapboxgl.LngLat(parseFloat(t.parcelPoint.location.position.longitude),parseFloat(t.parcelPoint.location.position.latitude))).setPopup(r).addTo(this.map);this.markers.push(c),this.addRightColMarkerEvent(c,t.parcelPoint.code)},generateParcelPointTagData:function(e){return' data-code="'+e.parcelPoint.code+'" data-name="'+encodeURIComponent(e.parcelPoint.name)+'" data-network="'+e.parcelPoint.network+'" data-zipcode="'+encodeURIComponent(e.parcelPoint.location.zipCode)+'" data-country="'+encodeURIComponent(e.parcelPoint.location.country)+'" data-city="'+encodeURIComponent(e.parcelPoint.location.city)+'" data-street="'+encodeURIComponent(e.parcelPoint.location.street)+'" data-openinghours="'+encodeURIComponent(JSON.stringify(e.parcelPoint.openingDays))+'" data-distance="'+encodeURIComponent(JSON.stringify(e.distanceFromSearchLocation))+'" '},addRightColMarkerEvent:function(t,n){e.util.on("body","click",".bw-show-info-"+n,function(){t.togglePopup()})},addRecipientMarker:function(e){var t=document.createElement("div");t.className="bw-marker-recipient";var n=new mapboxgl.Marker({element:t,anchor:"bottom"}).setLngLat(new mapboxgl.LngLat(parseFloat(e.position.longitude),parseFloat(e.position.latitude))).addTo(this.map);this.markers.push(n)},setMapBounds:function(){for(var e=new mapboxgl.LngLatBounds,t=0;t<this.markers.length;t++){var n=this.markers[t];e=e.extend(n.getLngLat())}this.map.fitBounds(e,{padding:30,linear:!0})},fillParcelPointPanel:function(t){var n=e.util.isI18nEnabled()?wp.i18n.__("Choose this parcel point","boxtal-connect"):e.util.translate("Choose this parcel point"),o="";o+="<table><tbody>";for(var a=0;a<t.length;a++){var i=t[a],r=e.util.formatDistance(i.distanceFromSearchLocation);o+="<tr>",o+="<td>"+this.getMarkerHtmlElement(a+1).outerHTML,o+='<div class="bw-parcel-point-title"><a class="bw-show-info-'+i.parcelPoint.code+'">'+i.parcelPoint.name+"</a></div><br/>",o+=i.parcelPoint.location.street+"<br/>",o+=i.parcelPoint.location.zipCode+" "+i.parcelPoint.location.city+(null!==r?r:"")+"<br/>",o+='<a class="bw-parcel-point-button" '+this.generateParcelPointTagData(i)+"><b>"+n+"</b></a>",o+="</td>",o+="</tr>"}o+="</tbody></table>",document.querySelector("#bw-pp-container").innerHTML=o},getMarkerHtmlElement:function(e){var t=document.createElement("div");return t.className="bw-marker",t.innerHTML=e,t},clearMarkers:function(){for(var e=0;e<this.markers.length;e++)this.markers[e].remove();this.markers=[]},getPoints:function(t,n,o){var a=this;e.api.getParcelPoints(t,n,function(e){a.addParcelPointMarkers(e.nearbyParcelPoints),a.fillParcelPointPanel(e.nearbyParcelPoints),a.addRecipientMarker(e.searchLocation),a.setMapBounds()},function(e){"object"===(void 0===e?"undefined":_typeof(e))&&"data"in e&&a.showError(e.data.message)})}},e.blocks={cache:{},loading:!1,init:function(){var t=this,n=(0,window.wc.wcSettings.getSetting)("boxtal-connect-parcel-point_data");if(n){e.api.setApiConfiguration(n.ajaxurl,n.getShippingMethodExtraLabelNonce,n.getPointsNonce,n.setPointNonce),e.map.setMapConfiguration(n.mapUrl,n.mapLogoImageUrl,n.mapLogoHrefUrl);var o=!1;t.onCartChange(function(){t.updateSelectedShippingMethodExtraLabel(),o||(o=!0,jQuery("body").on("input",t.getShippintMethodInputsSelector(),function(){return t.updateSelectedShippingMethodExtraLabel()}))}),jQuery("body").on("click",".bw-select-parcel",function(){e.map.init(),e.map.open(),t.getMapPoints()}),jQuery("body").on("click",".bw-parcel-point-button",function(){var n=wp.i18n.__,o=t.getSelectedShippingMethod(),a=t.getSelectedPackageKey();o||t.showError(n("Unable to find carrier","boxtal-connect")),e.api.selectPoint(o,a,this.getAttribute("data-code"),decodeURIComponent(this.getAttribute("data-name")),this.getAttribute("data-network"),decodeURIComponent(this.getAttribute("data-street")),decodeURIComponent(this.getAttribute("data-zipcode")),decodeURIComponent(this.getAttribute("data-city")),decodeURIComponent(this.getAttribute("data-country")),decodeURIComponent(this.getAttribute("data-openinghours")),decodeURIComponent(this.getAttribute("data-distance")),function(n){var i=n.data;t.updateShippingMethodExtraLabelCache(a,o,i.label),t.refreshShippingMethodExtraLabel(),e.map.close()},function(e){"object"===(void 0===e?"undefined":_typeof(e))&&"data"in e&&t.showError(e.data.message)})})}else console.error("[boxtal-connect] Failed to load plugin configuration (blocks)")},getMapPoints:function(){var t=wp.i18n.__,n=this,o=n.getSelectedShippingMethod(),a=n.getSelectedPackageKey();o&&null!==a||n.showError(t("Unable to find carrier","boxtal-connect")),e.map.getPoints(o,a,function(e){return n.showError(e)})},updateSelectedShippingMethodExtraLabel:function(){var t=wp.i18n.__,n=this;n.refreshShippingMethodExtraLabel();var o=n.getSelectedShippingMethod(),a=n.getSelectedPackageKey();o===undefined||a===undefined||n.loading||(n.loading=!0,e.api.getShippingMethodExtraLabel(o,a,function(e){n.updateShippingMethodExtraLabelCache(a,o,e.label),n.refreshShippingMethodExtraLabel(),n.loading=!1},function(){n.showError(t("Unable to find carrier","boxtal-connect")),n.loading=!1}))},getSelectedShippingMethod:function(){return jQuery(this.getShippintMethodInputsSelector()).filter(":checked").val()},getSelectedPackageKey:function(){var e=0,t=jQuery(this.getShippintMethodInputsSelector()).filter(":checked").attr("name");if(t){var n=t.split("-");e=n[n.length-1]}return e},getShippintMethodInputsSelector:function(){var e=this;return e.getShippingMethodsBlockClasses().map(function(t){return"."+t+" "+e.getShippintMethodsRadioControlSelector()}).join(", ")},getShippintMethodsBlockSelector:function(){return this.getShippingMethodsBlockClasses().map(function(e){return"."+e}).join(", ")},getShippintMethodTextLabelSelector:function(){return".wc-block-components-radio-control__label"},getShippingMethodsBlockClasses:function(){return["wp-block-woocommerce-checkout-shipping-methods-block","wp-block-woocommerce-cart-order-summary-shipping-block"]},getShippintMethodsRadioControlSelector:function(){return".wc-block-components-radio-control input"},showError:function(e){console.error(e)},onCartChange:function(t){var n=this;jQuery(n.getShippintMethodsBlockSelector()).filter(function(e,t){return n.isBlockReady(t)}).length>0&&t(),e.util.observeDom(document.body,function(e){var t=!1;if(e.addedNodes)for(var o=0;o<e.addedNodes.length;o++){var a=e.addedNodes[o];if(n.isBlockReady(a)){t=!0;break}}if(e.removedNodes&&!t)for(var i=0;i<e.removedNodes.length;i++){var r=e.removedNodes[i];if(n.isLoaderBlock(r)){t=!0;break}}return t},t)},isBlockReady:function(e){return this.getShippingMethodsBlockClasses().filter(function(t){return e.classList&&e.classList.contains(t)}).length>0&&jQuery(e).find(this.getShippintMethodsRadioControlSelector()).has(":checked")},isLoaderBlock:function(e){return e.classList&&e.classList.contains("wc-block-components-spinner")},updateShippingMethodExtraLabelCache:function(e,t,n){e in this.cache||(this.cache[e]={}),this.cache[e][t]=n},getShippingMethodCachedExtraLabel:function(e,t){return e in this.cache&&t in this.cache[e]?this.cache[e][t]:null},refreshShippingMethodExtraLabel:function(){var e=this.getSelectedShippingMethod(),t=this.getSelectedPackageKey(),n=this.getShippingMethodCachedExtraLabel(t,e);(jQuery(this.getShippintMethodsBlockSelector()).find("label "+this.getShippintMethodTextLabelSelector()).find(".bw-extra-label").remove(),null!==n)&&jQuery(this.getShippintMethodsBlockSelector()).find("label").has("input:checked").find(this.getShippintMethodTextLabelSelector()).first().append('<span class="bw-extra-label"><br/>'+n+"</span>")}},e.legacy={packageKey:null,init:function(){var t=this,n=t.getFrontendData();null!==n?(e.api.setApiConfiguration(n.ajaxurl,n.getShippingMethodExtraLabelNonce,n.getPointsNonce,n.setPointNonce),e.map.setMapConfiguration(n.mapUrl,n.mapLogoImageUrl,n.mapLogoHrefUrl),e.util.on("body","click",".bw-select-parcel",function(n){t.setPackageKey(n),e.map.init(),e.map.open(),t.getMapPoints()}),e.util.on("body","click",".bw-parcel-point-button",function(){var n=e.util.isI18nEnabled()?wp.i18n.__("Unable to find carrier","boxtal-connect"):e.util.translate("Unable to find carrier"),o=t.getSelectedCarrier();o||t.showError(n),e.api.selectPoint(o,t.packageKey,this.getAttribute("data-code"),decodeURIComponent(this.getAttribute("data-name")),this.getAttribute("data-network"),decodeURIComponent(this.getAttribute("data-street")),decodeURIComponent(this.getAttribute("data-zipcode")),decodeURIComponent(this.getAttribute("data-city")),decodeURIComponent(this.getAttribute("data-country")),decodeURIComponent(this.getAttribute("data-openinghours")),decodeURIComponent(this.getAttribute("data-distance")),function(n){var o=n.name,a=n.address,i=n.zipcode,r=n.city,c=n.distance;t.initSelectedParcelPoint();var l=document.querySelector(".bw-parcel-address-"+t.packageKey),s=document.querySelector(".bw-parcel-name-"+t.packageKey);l&&(l.innerHTML=e.util.formatParcelPoingAddress(a,r,i,c)),s&&(s.innerHTML=o),e.map.close()},function(e){"object"===(void 0===e?"undefined":_typeof(e))&&"data"in e&&t.showError(e.data.message)})})):console.error("[boxtal-connect] Failed to load plugin configuration (legacy)")},setPackageKey:function(e){this.packageKey=e.target.attributes.getNamedItem("data-package_key").value},getFrontendData:function(){var e=null;if("undefined"!=typeof bwData)e=bwData;else if("wc"in window&&"wcSettings"in window.wc){var t=window.wc.wcSettings.getSetting("boxtal-connect-parcel-point_data");t&&(e=t)}return e},initSelectedParcelPoint:function(){var t=e.util.isI18nEnabled()?wp.i18n.__("Your parcel point:","boxtal-connect"):e.util.translate("Your parcel point:"),n=document.querySelector(".bw-parcel-client-"+this.packageKey);n.innerHTML=t+" ";var o=document.createElement("span");o.setAttribute("class","bw-parcel-name-"+this.packageKey),n.appendChild(o)},getMapPoints:function(){var t=this,n=e.util.isI18nEnabled()?wp.i18n.__("Unable to find carrier","boxtal-connect"):e.util.translate("Unable to find carrier"),o=t.getSelectedCarrier();o||t.showError(n),e.map.getPoints(o,t.packageKey,function(e){return t.showError(e)})},getSelectedCarrier:function(){var e=void 0,t=document.querySelector('input[type="hidden"].shipping_method');t?e=t.getAttribute("value"):e=document.querySelector("input.shipping_method:checked").getAttribute("value");return e},showError:function(t){e.map.close(),alert(t)}},document.addEventListener("DOMContentLoaded",function(){e.util.isWoocommerceBlocks()?e.blocks.init():e.legacy.init()})}(); -
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/class-plugin.php
r3202256 r3202868 61 61 $this['path'] = realpath( plugin_dir_path( $this['file'] ) ) . DIRECTORY_SEPARATOR; 62 62 $this['url'] = plugin_dir_url( $this['file'] ); 63 $this['version'] = '1.3. 1';63 $this['version'] = '1.3.2'; 64 64 $this['min-wc-version'] = '2.6.14'; 65 65 $this['min-php-version'] = '5.6.0'; -
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-controller.php
r3147056 r3202868 99 99 public function parcel_point_scripts() { 100 100 if ( $this->is_checkout_or_cart() ) { 101 $translations = array(102 'Unable to find carrier' => __( 'Unable to find carrier', 'boxtal-connect' ),103 'Opening hours' => __( 'Opening hours', 'boxtal-connect' ),104 'Choose this parcel point' => __( 'Choose this parcel point', 'boxtal-connect' ),105 'Close map' => __( 'Close map', 'boxtal-connect' ),106 'Your parcel point:' => __( 'Your parcel point:', 'boxtal-connect' ),107 /* translators: %s: distance in km */108 '%skm away' => __( '%skm away', 'boxtal-connect' ),109 );110 101 wp_enqueue_script( 'bw_polyfills', $this->plugin_url . 'Boxtal/BoxtalConnectWoocommerce/assets/js/polyfills.min.js', array(), $this->plugin_version, false ); 111 102 wp_enqueue_script( 'bw_mapbox_gl', $this->plugin_url . 'Boxtal/BoxtalConnectWoocommerce/assets/js/mapbox-gl.js', array( 'bw_polyfills' ), $this->plugin_version, false ); 112 103 wp_enqueue_script( 'bw_shipping', $this->plugin_url . 'Boxtal/BoxtalConnectWoocommerce/assets/js/parcel-point.min.js', array( 'bw_mapbox_gl', 'bw_polyfills' ), $this->plugin_version, false ); 113 104 Frontend_Util::inject_inline_data( 'bw_shipping', 'bwData', Frontend_Util::get_frontend_data() ); 114 wp_localize_script( 'bw_shipping', 'translations', $translations);105 wp_localize_script( 'bw_shipping', 'translations', Frontend_Util::get_map_translations() ); 115 106 wp_set_script_translations( 'bw_translation', 'boxtal-connect' ); 116 107 } -
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/shipping-method/parcel-point/class-parcel-point-block-integration.php
r3202256 r3202868 36 36 $assets_path = plugins_url( 'boxtal-connect/Boxtal/BoxtalConnectWoocommerce/assets', 'boxtal-connect.php' ); 37 37 38 wp_enqueue_script( 'bw_polyfills', $assets_path . '/js/polyfills.min.js', array(), '1.3.1', false ); 39 wp_enqueue_script( 'bw_mapbox_gl', $assets_path . '/js/mapbox-gl.js', array( 'bw_polyfills' ), '1.3.1', false ); 40 wp_enqueue_script( 'bw_shipping', $assets_path . '/js/parcel-point.min.js', array( 'bw_mapbox_gl', 'bw_polyfills', 'jquery-core', 'wp-hooks' ), '1.3.1', false ); 41 wp_enqueue_style( 'bw_mapbox_gl', $assets_path . '/css/mapbox-gl.min.css', array(), '1.3.1' ); 42 wp_enqueue_style( 'bw_parcel_point', $assets_path . '/css/parcel-point.css', array(), '1.3.1' ); 38 wp_enqueue_script( 'bw_polyfills', $assets_path . '/js/polyfills.min.js', array(), '1.3.2', false ); 39 wp_enqueue_script( 'bw_mapbox_gl', $assets_path . '/js/mapbox-gl.js', array( 'bw_polyfills' ), '1.3.2', false ); 40 wp_enqueue_script( 'bw_shipping', $assets_path . '/js/parcel-point.min.js', array( 'bw_mapbox_gl', 'bw_polyfills', 'jquery-core', 'wp-hooks' ), '1.3.2', false ); 41 wp_enqueue_style( 'bw_mapbox_gl', $assets_path . '/css/mapbox-gl.min.css', array(), '1.3.2' ); 42 wp_enqueue_style( 'bw_parcel_point', $assets_path . '/css/parcel-point.css', array(), '1.3.2' ); 43 wp_localize_script( 'bw_shipping', 'translations', Frontend_Util::get_map_translations() ); 43 44 wp_set_script_translations( 'bw_translation', 'boxtal-connect' ); 44 45 // frontend data injection for legacy scripts. -
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/util/class-api-util.php
r3202256 r3202868 25 25 */ 26 26 public static function send_api_response( $code, $body = null ) { 27 header( 'X-Version: 1.3. 1' );27 header( 'X-Version: 1.3.2' ); 28 28 http_response_code( $code ); 29 29 if ( null !== $body ) { -
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/util/class-configuration-report-util.php
r3202256 r3202868 68 68 $versions['wordpress'] = isset( $wp_version ) ? $wp_version : null; 69 69 $versions['woocommerce'] = defined( 'WC_VERSION' ) ? WC_VERSION : null; 70 $versions['plugin'] = '1.3. 1';70 $versions['plugin'] = '1.3.2'; 71 71 72 72 return $versions; -
boxtal-connect/trunk/Boxtal/BoxtalConnectWoocommerce/util/class-frontend-util.php
r3147056 r3202868 281 281 282 282 /** 283 * Return an array of translation map display 284 * 285 * @return array 286 */ 287 public static function get_map_translations() { 288 return array( 289 'Unable to find carrier' => __( 'Unable to find carrier', 'boxtal-connect' ), 290 'Opening hours' => __( 'Opening hours', 'boxtal-connect' ), 291 'Choose this parcel point' => __( 'Choose this parcel point', 'boxtal-connect' ), 292 'Close map' => __( 'Close map', 'boxtal-connect' ), 293 'Your parcel point:' => __( 'Your parcel point:', 'boxtal-connect' ), 294 /* translators: %s: distance in km */ 295 '%skm away' => __( '%skm away', 'boxtal-connect' ), 296 'MONDAY' => substr( __( 'MONDAY', 'boxtal-connect' ), 0, 1 ), 297 'TUESDAY' => substr( __( 'TUESDAY', 'boxtal-connect' ), 0, 1 ), 298 'WEDNESDAY' => substr( __( 'WEDNESDAY', 'boxtal-connect' ), 0, 1 ), 299 'THURSDAY' => substr( __( 'THURSDAY', 'boxtal-connect' ), 0, 1 ), 300 'FRIDAY' => substr( __( 'FRIDAY', 'boxtal-connect' ), 0, 1 ), 301 'SATURDAY' => substr( __( 'SATURDAY', 'boxtal-connect' ), 0, 1 ), 302 'SUNDAY' => substr( __( 'SUNDAY', 'boxtal-connect' ), 0, 1 ), 303 ); 304 } 305 306 /** 283 307 * 284 308 * Inject an array of string as an inline script -
boxtal-connect/trunk/boxtal-connect.php
r3202256 r3202868 7 7 * Text Domain: boxtal-connect 8 8 * Domain Path: /Boxtal/BoxtalConnectWoocommerce/translation 9 * Version: 1.3. 19 * Version: 1.3.2 10 10 * License: GPLv3 11 11 * License URI: https://www.gnu.org/licenses/gpl-3.0.html -
boxtal-connect/trunk/changelog.txt
r3202256 r3202868 1 1 == Changelog == 2 3 2024-12-05 - version 1.3.2 4 * Fixed frontoffice translation issues 2 5 3 6 2024-10-30 - version 1.3.1 -
boxtal-connect/trunk/readme.txt
r3202256 r3202868 5 5 Tested up to: 6.7.0 6 6 Requires PHP: 5.6.0 7 Stable tag: 1.3. 17 Stable tag: 1.3.2 8 8 License: GPLv3 9 9 License URI: https://www.gnu.org/licenses/gpl-3.0.html … … 51 51 == Changelog == 52 52 53 2024-12-05 - version 1.3.2 54 * Fixed frontoffice translation issue 55 53 56 2024-10-31 - version 1.3.1 54 57 * Updated onboarding url
Note: See TracChangeset
for help on using the changeset viewer.