PluginProbe ʕ •ᴥ•ʔ
PiWeb Delivery & Pickup Date Time for WooCommerce / 3.0.49.3
PiWeb Delivery & Pickup Date Time for WooCommerce v3.0.49.3
3.0.63 3.0.62 3.0.61 3.0.60 3.0.49.49 3.0.49.6 3.0.49.60 3.0.49.61 3.0.49.62 3.0.49.63 3.0.49.64 3.0.49.66 3.0.49.67 3.0.49.69 3.0.49.7 3.0.49.70 3.0.49.72 3.0.49.73 3.0.49.74 3.0.49.76 3.0.49.77 3.0.49.79 3.0.49.9 3.0.49.90 3.0.49.91 3.0.49.92 3.0.49.93 3.0.49.94 3.0.49.96 3.0.49.97 3.0.49.99 trunk 1.0 1.1 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 2.9.17 3.0.47 3.0.49 3.0.49.1 3.0.49.10 3.0.49.11 3.0.49.12 3.0.49.13 3.0.49.16 3.0.49.17 3.0.49.19 3.0.49.2 3.0.49.20 3.0.49.21 3.0.49.22 3.0.49.23 3.0.49.24 3.0.49.26 3.0.49.27 3.0.49.29 3.0.49.3 3.0.49.30 3.0.49.31 3.0.49.32 3.0.49.33 3.0.49.34 3.0.49.36 3.0.49.37 3.0.49.39 3.0.49.4 3.0.49.40 3.0.49.41 3.0.49.42 3.0.49.43 3.0.49.44 3.0.49.46 3.0.49.47
pi-woocommerce-order-date-time-and-type / public / js / save-checkout-data.js
pi-woocommerce-order-date-time-and-type / public / js Last commit date
pi-divi-page-builder.js 2 years ago pi-woocommerce-order-date-time-and-type-pro-public.js 2 years ago save-checkout-data.js 2 years ago
save-checkout-data.js
108 lines
1 (function ($) {
2 'use strict';
3
4 function saveCheckoutField() {
5
6 this.fields = ['pi_system_delivery_date', 'pi_delivery_time', 'billing_email', 'billing_first_name', 'billing_last_name', 'billing_phone', 'billing_company', 'shipping_first_name', 'shipping_last_name', 'shipping_company', 'order_comments', 'createaccount', 'ship-to-different-address-checkbox'];
7
8 this.init = function () {
9 this.detectChange();
10 this.setData();
11 this.pickupLocationChange();
12 }
13
14 this.detectChange = function () {
15 var parent = this;
16 jQuery(document).on("keyup keypress change", "#pi_system_delivery_date, #pi_delivery_time, #billing_email, #billing_phone, #createaccount, #ship-to-different-address-checkbox, input.input-text, textarea.input-text", function () {
17 parent.getCheckoutData();
18 });
19 }
20
21 this.getCheckoutData = function () {
22
23 var data;
24
25 var length = this.fields.length;
26 for (var i = 0; i < length; i++) {
27 var index = this.fields[i];
28 var element = jQuery("#" + index);
29 if (element.is(':checkbox')) {
30 data = jQuery("#" + index).prop("checked");
31 } else if (index == 'pickup_location') {
32 if (jQuery("select[name='pickup_location']").length) {
33 data = jQuery("select[name='pickup_location']").val();
34 } else if (jQuery("input[name='pickup_location']").length) {
35 data = jQuery("input[name='pickup_location']:checked").val();
36 } else {
37 data = null;
38 }
39
40 } else {
41 data = jQuery("#" + index).val();
42 }
43 if (data !== "" && data != undefined) {
44 localStorage.setItem("pisol_" + index, data);
45 } else if (data == "") {
46 localStorage.removeItem("pisol_" + index);
47 }
48 }
49
50 }
51
52 this.setData = function () {
53
54
55 var length = this.fields.length;
56 for (var i = 0; i < length; i++) {
57 var field = this.fields[i];
58 this.setIndividualFields(field);
59 }
60
61 }
62
63 this.setIndividualFields = function (field) {
64 var data = localStorage.getItem("pisol_" + field);
65 var element = jQuery("#" + field);
66 var present_val = element.val();
67
68 if (element.is(':checkbox') && data != null && data != 'undefined' && data != "") {
69 if (data == "true") {
70 element.prop('checked', true);
71 } else {
72 element.prop('checked', false);
73 }
74 } else {
75 if (data != null && data != 'undefined' && data != "" && present_val != data) {
76 if (field != 'pi_system_delivery_date') {
77 element.val(data);
78 }
79 }
80 }
81
82 }
83
84 this.pickupLocationChange = function () {
85 var parent = this;
86 jQuery(document).on('change', '.pisol-location-radio, #pickup_location', function () {
87 var data = null;
88 if (jQuery("select[name='pickup_location']").length) {
89 data = jQuery("select[name='pickup_location']").val();
90 } else if (jQuery("input[name='pickup_location']").length) {
91 data = jQuery("input[name='pickup_location']:checked").val();
92 }
93 if (data !== "" && data != undefined && data != null) {
94 localStorage.setItem("pisol_pickup_location", data);
95 } else if (data == "") {
96 localStorage.removeItem("pisol_pickup_location");
97 }
98 });
99 }
100 }
101
102 jQuery(function ($) {
103 var saveCheckoutFieldObj = new saveCheckoutField();
104 saveCheckoutFieldObj.init();
105 });
106
107
108 })(jQuery);