Version Description
- 2022-06-09 =
- Fix - Hide shipping options in Google Pay form for virtual products. #800
- Fix - State-specific tax calculation when using Google Pay. #778
- Add - Validation that Business Location or SOR is set and Square settings are saved before enabling Import Products button. #463
Download this release
Release Info
Developer | automattic |
Plugin | WooCommerce Square |
Version | 3.1.0 |
Comparing to | |
See all releases |
Code changes from version 3.0.3 to 3.1.0
- assets/js/admin/wc-square-admin-settings.min.js +1 -1
- changelog.txt +5 -0
- i18n/languages/woocommerce-square.pot +39 -31
- includes/Admin/Settings_Page.php +1 -4
- includes/Gateway/Digital_Wallet.php +115 -44
- includes/Plugin.php +1 -1
- includes/Settings.php +7 -2
- readme.txt +6 -1
- vendor/autoload.php +1 -1
- vendor/composer/InstalledVersions.php +2 -14
- vendor/composer/autoload_real.php +4 -4
- vendor/composer/autoload_static.php +5 -5
- vendor/composer/installed.php +6 -6
- woocommerce-square.php +16 -9
assets/js/admin/wc-square-admin-settings.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
"use strict";jQuery(document).ready($=>{var pagenow=window.pagenow||"";if("woocommerce_page_wc-settings"!==pagenow){return}if(!wc_square_admin_settings.is_sandbox){$("#wc_square_sandbox_settings").hide();$("#wc_square_sandbox_settings").next().hide();$(".wc_square_sandbox_settings").closest("tr").hide()}$("#wc_square_system_of_record").on("change",e=>{var system_of_record=$(e.target).val();var $inventory_sync=$("#wc_square_enable_inventory_sync");var $inventory_sync_row=$inventory_sync.closest("tr");if("square"===system_of_record||"woocommerce"===system_of_record){
|
1 |
+
"use strict";jQuery(document).ready($=>{var pagenow=window.pagenow||"";if("woocommerce_page_wc-settings"!==pagenow){return}window.serialize_form=form=>{var form_data=$(form).serializeArray();form_data=$.grep(form_data,e=>{return e.name!=="_wp_http_referer"&&e.name!=="_wpnonce"});form_data.sort((a,b)=>a.name>b.name?1:-1);return form_data};var is_square_settings_page=false;var url_params=new window.URLSearchParams(window.location.search);var new_square_settings;var current_square_settings;var is_sor_set;var location_id=$("#wc_square_location_id, #wc_square_sandbox_location_id").val();var show_changes_message=$(".wc_square_save_changes_message");if("square"===url_params.get("tab")&&(!url_params.get("section")||""!==url_params.get("section"))){is_square_settings_page=true;current_square_settings=serialize_form($("#mainform"))}$(document).on("change",function(e,ignore){if(ignore){return}var $import_products=$("#wc_square_import_products");var $import_products_row=$import_products.closest("tr");if(is_sor_set&&location_id&&location_id.length){$import_products_row.show()}else{$import_products_row.hide()}});$("#mainform :input").on("change",function(e,ignore){if(ignore){return}var $import_products=$("#wc_square_import_products");new_square_settings=serialize_form("#mainform");if(JSON.stringify(current_square_settings)!==JSON.stringify(new_square_settings)){if(e.target.name==="wc_square_sandbox_location_id"||e.target.name==="wc_square_location_id"){return}show_changes_message.show();$import_products.addClass("disabled")}else{show_changes_message.hide();$import_products.removeClass("disabled")}});$("#wc_square_sandbox_location_id, #wc_square_location_id").on("change",function(){location_id=$(this).val()});if(!wc_square_admin_settings.is_sandbox){$("#wc_square_sandbox_settings").hide();$("#wc_square_sandbox_settings").next().hide();$(".wc_square_sandbox_settings").closest("tr").hide()}$("#wc_square_system_of_record").on("change",e=>{var system_of_record=$(e.target).val();var $inventory_sync=$("#wc_square_enable_inventory_sync");var $inventory_sync_row=$inventory_sync.closest("tr");var $import_products=$("#wc_square_import_products");var $import_products_row=$import_products.closest("tr");if("square"===system_of_record||"woocommerce"===system_of_record){is_sor_set=true;$inventory_sync.next("span").html(wc_square_admin_settings.i18n.sync_inventory_label[system_of_record]);$inventory_sync_row.find(".description").html(wc_square_admin_settings.i18n.sync_inventory_description[system_of_record]);$inventory_sync_row.show();$import_products_row.show()}else{is_sor_set=false;$inventory_sync.prop("checked",false);$inventory_sync_row.hide();$import_products_row.hide()}if("square"===system_of_record){$("#wc_square_hide_missing_products").closest("tr").show()}else{$("#wc_square_hide_missing_products").closest("tr").hide()}}).trigger("change",[true]);$(".js-import-square-products").on("click",function(e){e.preventDefault();if($(this).hasClass("disabled")){return}new $.WCBackboneModal.View({target:"wc-square-import-products"});$("#btn-close").on("click",e=>{e.preventDefault();$("button.modal-close").trigger("click")})});$("#wc-square-sync").on("click",e=>{e.preventDefault();new $.WCBackboneModal.View({target:"wc-square-sync"});$("#btn-close").on("click",e=>{e.preventDefault();$("button.modal-close").trigger("click")})});$(document.body).on("wc_backbone_modal_response",(e,target)=>{var data;switch(target){case"wc-square-import-products":$("#wpbody").block({message:null,overlayCSS:{opacity:"0.2"},onBlock:function onBlock(){$(".blockUI.blockOverlay").css({position:"fixed"})}});var update_during_import=$("#wc-square-import-product-updates").prop("checked");data={action:"wc_square_import_products_from_square",security:wc_square_admin_settings.import_products_from_square,update_during_import};$.post(wc_square_admin_settings.ajax_url,data,response=>{var message=response.data?response.data:null;if(message){alert(message)}location.reload()});break;case"wc-square-sync":$("table.sync").block({message:null,overlayCSS:{opacity:"0.2"}});$("table.records").block({message:null,overlayCSS:{opacity:"0.2"}});$("#wc-square_clear-sync-records").prop("disabled",true);data={action:"wc_square_sync_products_with_square",security:wc_square_admin_settings.sync_products_with_square};$.post(wc_square_admin_settings.ajax_url,data,response=>{if(response&&response.success){location.reload()}else{$("#wc-square_clear-sync-records").prop("disabled",false);$("table.sync").unblock();$("table.records").unblock()}});break;}});var noRecordsFoundRow="<tr><td colspan=\"4\"><em>"+wc_square_admin_settings.i18n.no_records_found+"</em></td></tr>";$("#wc-square_clear-sync-records").on("click",e=>{e.preventDefault();$("table.records").block({message:null,overlayCSS:{opacity:"0.2"}});var data={action:"wc_square_handle_sync_records",id:"all",handle:"delete",security:wc_square_admin_settings.handle_sync_with_square_records};$.post(wc_square_admin_settings.ajax_url,data,response=>{if(response&&response.success){$("table.records tbody").html(noRecordsFoundRow);$("#wc-square_clear-sync-records").prop("disabled",true)}else{if(response.data){alert(response.data)}console.log(response)}$("table.records").unblock()})});$(".records .actions button.action").on("click",e=>{e.preventDefault();$("table.records").block({message:null,overlayCSS:{opacity:"0.2"}});var recordId=$(e.currentTarget).data("id");var action=$(e.currentTarget).data("action");var data={action:"wc_square_handle_sync_records",id:recordId,handle:action,security:wc_square_admin_settings.handle_sync_with_square_records};$.post(wc_square_admin_settings.ajax_url,data,response=>{if(response&&response.success){var rowId="#record-"+recordId;if("delete"===action){$(rowId).remove();if(!$("table.records tbody tr").length){$("table.records tbody").html(noRecordsFoundRow);$("#wc-square_clear-sync-records").prop("disabled",true)}}else if("resolve"===action||"unsync"===action){$(rowId+" .type").html("<mark class=\"resolved\"><span>"+wc_square_admin_settings.i18n.resolved+"</span></mark>");$(rowId+" .actions").html("—")}}else{if(response&&response.data){alert(response.data)}console.log({record:recordId,action,response})}$("table.records").unblock()})});$("form").on("submit",e=>{var environment=$("#wc_square_enable_sandbox").is(":checked")?"sandbox":"production";$(e.target).append($("<input>",{type:"hidden",name:"wc_square_environment",value:environment}))});var getSyncStatus=job_id=>{var $progress=$("span.progress");if(!$progress||0===$progress.length){$("p.sync-result").append(" <span class=\"progress\" style=\"display:block\"></span>");$progress=$("span.progress")}var data={action:"wc_square_get_sync_with_square_status",security:wc_square_admin_settings.get_sync_with_square_status_nonce,job_id};$.post(wc_square_admin_settings.ajax_url,data,response=>{if(response&&response.data){if(response.success&&response.data.id){$("table.sync .spinner").css("visibility","visible");$("#wc-square_clear-sync-records").prop("disabled",true);$("table.records .actions button").prop("disabled",true);if("completed"!==response.data.status&&"failed"!==response.data.status){var progress=" ";if("product_import"===response.data.action){progress+=wc_square_admin_settings.i18n.skipped+": "+parseInt(response.data.skipped_products_count,10)+"<br/>";progress+=wc_square_admin_settings.i18n.updated+": "+parseInt(response.data.updated_products_count,10)+"<br/>";progress+=wc_square_admin_settings.i18n.imported+": "+parseInt(response.data.imported_products_count,10)}else if(response.data.percentage){progress+=parseInt(response.data.percentage,10)+"%"}$progress.html(progress);setTimeout(()=>{getSyncStatus(response.data.id)},30*1000)}else{location.reload()}}else{$("#wc-square_clear-sync-records").prop("disabled",false);$("table.records .actions button").prop("disabled",false);$("table.sync .spinner").css("visibility","hidden");console.log(response)}}})};if(wc_square_admin_settings.existing_sync_job_id){getSyncStatus(wc_square_admin_settings.existing_sync_job_id)}$("#woocommerce_square_credit_card_enable_digital_wallets").on("change",()=>{var wallet_settings=$(".wc-square-digital-wallet-options");if($("#woocommerce_square_credit_card_enable_digital_wallets").is(":checked")){wallet_settings.closest("tr").show()}else{wallet_settings.closest("tr").hide()}}).trigger("change",[false])});
|
changelog.txt
CHANGED
@@ -1,5 +1,10 @@
|
|
1 |
*** WooCommerce Square Changelog ***
|
2 |
|
|
|
|
|
|
|
|
|
|
|
3 |
= 3.0.3 - 2022-06-01 =
|
4 |
* Fix - Customer Token Editor wasn't loading for some stores after updating to Square 3.0.0. #799
|
5 |
* Fix - No such file or directory warnings on case-sensitive filesystems. #799
|
1 |
*** WooCommerce Square Changelog ***
|
2 |
|
3 |
+
= 3.1.0 - 2022-06-09 =
|
4 |
+
* Fix - Hide shipping options in Google Pay form for virtual products. #800
|
5 |
+
* Fix - State-specific tax calculation when using Google Pay. #778
|
6 |
+
* Add - Validation that Business Location or SOR is set and Square settings are saved before enabling Import Products button. #463
|
7 |
+
|
8 |
= 3.0.3 - 2022-06-01 =
|
9 |
* Fix - Customer Token Editor wasn't loading for some stores after updating to Square 3.0.0. #799
|
10 |
* Fix - No such file or directory warnings on case-sensitive filesystems. #799
|
i18n/languages/woocommerce-square.pot
CHANGED
@@ -2,10 +2,10 @@
|
|
2 |
# This file is distributed under the GNU General Public License v3.0.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: WooCommerce Square 3.0
|
6 |
"Report-Msgid-Bugs-To: "
|
7 |
"https://wordpress.org/support/plugin/woocommerce-square\n"
|
8 |
-
"POT-Creation-Date: 2022-06-01
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=utf-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -69,7 +69,7 @@ msgid "Stock must be fetched from Square before editing stock quantity"
|
|
69 |
msgstr ""
|
70 |
|
71 |
#: includes/Admin/Privacy.php:43 includes/Admin/Settings_Page.php:54
|
72 |
-
#: includes/Gateway.php:82 includes/Settings.php:221 includes/Settings.php:
|
73 |
msgid "Square"
|
74 |
msgstr ""
|
75 |
|
@@ -105,8 +105,7 @@ msgstr ""
|
|
105 |
msgid "Close modal window"
|
106 |
msgstr ""
|
107 |
|
108 |
-
#: includes/Admin/Settings_Page.php:
|
109 |
-
#. translators: Placeholders: %1$s - <strong>, %2%s - </strong>
|
110 |
msgid ""
|
111 |
"You are about to import all new products, variations and categories from "
|
112 |
"Square. This will create a new product in WooCommerce for every product "
|
@@ -114,11 +113,11 @@ msgid ""
|
|
114 |
"imports, these will be ignored in the import."
|
115 |
msgstr ""
|
116 |
|
117 |
-
#: includes/Admin/Settings_Page.php:
|
118 |
msgid "Do you wish to import existing product updates from Square?"
|
119 |
msgstr ""
|
120 |
|
121 |
-
#: includes/Admin/Settings_Page.php:
|
122 |
#. translators: Placeholders: %1$s - <a> tag linking to WooCommerce Square
|
123 |
#. docs, %2%s - closing </a> tag
|
124 |
msgid ""
|
@@ -126,18 +125,18 @@ msgid ""
|
|
126 |
"information from Square. %1$sView Documentation%2$s."
|
127 |
msgstr ""
|
128 |
|
129 |
-
#: includes/Admin/Settings_Page.php:
|
130 |
msgid "Update existing products during import."
|
131 |
msgstr ""
|
132 |
|
133 |
-
#: includes/Admin/Settings_Page.php:
|
134 |
#: includes/Framework/PaymentGateway/Admin/views/html-order-partial-capture.php:41
|
135 |
#: includes/Framework/PaymentGateway/Payment_Gateway_My_Payment_Methods.php:203
|
136 |
#: vendor/woocommerce/action-scheduler/classes/ActionScheduler_ListTable.php:133
|
137 |
msgid "Cancel"
|
138 |
msgstr ""
|
139 |
|
140 |
-
#: includes/Admin/Settings_Page.php:
|
141 |
msgid "Import Products"
|
142 |
msgstr ""
|
143 |
|
@@ -834,17 +833,17 @@ msgstr ""
|
|
834 |
|
835 |
#: includes/Framework/PaymentGateway/ApplePay/Payment_Gateway_Apple_Pay.php:541
|
836 |
#: includes/Gateway/API/Requests/Orders.php:77
|
837 |
-
#: includes/Gateway/Digital_Wallet.php:
|
838 |
msgid "Discount"
|
839 |
msgstr ""
|
840 |
|
841 |
#: includes/Framework/PaymentGateway/ApplePay/Payment_Gateway_Apple_Pay.php:551
|
842 |
-
#: includes/Gateway/Digital_Wallet.php:
|
843 |
msgid "Shipping"
|
844 |
msgstr ""
|
845 |
|
846 |
#: includes/Framework/PaymentGateway/ApplePay/Payment_Gateway_Apple_Pay.php:561
|
847 |
-
#: includes/Gateway/Digital_Wallet.php:
|
848 |
msgid "Fees"
|
849 |
msgstr ""
|
850 |
|
@@ -1084,7 +1083,7 @@ msgstr ""
|
|
1084 |
#: includes/Framework/PaymentGateway/Integrations/Payment_Gateway_Integration_Subscriptions.php:353
|
1085 |
#: includes/Framework/PaymentGateway/Payment_Gateway.php:2523
|
1086 |
#: includes/Gateway/Blocks_Handler.php:137
|
1087 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1088 |
#: includes/Gateway/Payment_Form.php:238 includes/Gateway.php:251
|
1089 |
msgid "An error occurred, please try again or try an alternate form of payment."
|
1090 |
msgstr ""
|
@@ -1920,7 +1919,7 @@ msgid ""
|
|
1920 |
"version of WooCommerce Blocks or WooCommerce to fix these issues."
|
1921 |
msgstr ""
|
1922 |
|
1923 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1924 |
#. Translators: %1$s: expected location of apple pay verification file, %2$s:
|
1925 |
#. opening href tag with link to Square documentation, %3$s: closing href tag
|
1926 |
msgid ""
|
@@ -1929,7 +1928,7 @@ msgid ""
|
|
1929 |
"information, please read our documentation on %2$sSetting up Apple Pay%3$s."
|
1930 |
msgstr ""
|
1931 |
|
1932 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1933 |
#. Translators: %1$s: opening bold tags, %2$s: closing strong/bold tags, %3$s:
|
1934 |
#. expected location of apple pay verification file, %4$s: opening href tag
|
1935 |
#. with link to Square documentation, %5$s: closing href tag
|
@@ -1939,51 +1938,51 @@ msgid ""
|
|
1939 |
"logs%2$s to find out what caused the registration to fail."
|
1940 |
msgstr ""
|
1941 |
|
1942 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1943 |
msgid "OR"
|
1944 |
msgstr ""
|
1945 |
|
1946 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1947 |
#. translators: product ID
|
1948 |
msgid "Product with the ID (%d) cannot be found."
|
1949 |
msgstr ""
|
1950 |
|
1951 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1952 |
#. translators: 1: product name 2: quantity in stock
|
1953 |
msgid ""
|
1954 |
"You cannot add that amount of \"%1$s\"; to the cart because there is not "
|
1955 |
"enough stock (%2$s remaining)."
|
1956 |
msgstr ""
|
1957 |
|
1958 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1959 |
#. translators: 1: product name
|
1960 |
msgid "You cannot purchase \"%1$s\" because it is currently not available."
|
1961 |
msgstr ""
|
1962 |
|
1963 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1964 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1965 |
msgid "Tax"
|
1966 |
msgstr ""
|
1967 |
|
1968 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1969 |
msgid "This payment method cannot be used for multiple shipments."
|
1970 |
msgstr ""
|
1971 |
|
1972 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1973 |
#: vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Store.php:378
|
1974 |
msgid "Pending"
|
1975 |
msgstr ""
|
1976 |
|
1977 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1978 |
#. translators: Context (product, cart, checkout or page)
|
1979 |
msgid "Empty payment request data for %s."
|
1980 |
msgstr ""
|
1981 |
|
1982 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1983 |
msgid "Empty cart"
|
1984 |
msgstr ""
|
1985 |
|
1986 |
-
#: includes/Gateway/Digital_Wallet.php:
|
1987 |
msgid "Unable to verify domain with Apple Pay - missing access token."
|
1988 |
msgstr ""
|
1989 |
|
@@ -2441,10 +2440,16 @@ msgstr ""
|
|
2441 |
msgid "Please choose a location"
|
2442 |
msgstr ""
|
2443 |
|
2444 |
-
#: includes/Settings.php:
|
2445 |
msgid "Import all products from Square"
|
2446 |
msgstr ""
|
2447 |
|
|
|
|
|
|
|
|
|
|
|
|
|
2448 |
#: includes/Sync/Interval_Polling.php:98
|
2449 |
msgid "Updated data for %d category."
|
2450 |
msgid_plural "Updated data for %d categories."
|
@@ -3236,19 +3241,22 @@ msgstr[1] ""
|
|
3236 |
msgid "Migrated action with ID %1$d in %2$s to ID %3$d in %4$s"
|
3237 |
msgstr ""
|
3238 |
|
3239 |
-
#: woocommerce-square.php:
|
|
|
3240 |
msgid ""
|
3241 |
"<strong>All features in %1$s have been disabled</strong> due to unsupported "
|
3242 |
"settings:<br>"
|
3243 |
msgstr ""
|
3244 |
|
3245 |
-
#: woocommerce-square.php:
|
|
|
3246 |
msgid ""
|
3247 |
"• <strong>Invalid PHP version: </strong>The minimum PHP version "
|
3248 |
"required is %1$s. You are running %2$s.<br>"
|
3249 |
msgstr ""
|
3250 |
|
3251 |
-
#: woocommerce-square.php:
|
|
|
3252 |
msgid ""
|
3253 |
"• <strong>Invalid OPcache config: </strong><a href=\"%s\" "
|
3254 |
"target=\"_blank\">Please ensure the <code>save_comments</code> PHP option "
|
2 |
# This file is distributed under the GNU General Public License v3.0.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: WooCommerce Square 3.1.0\n"
|
6 |
"Report-Msgid-Bugs-To: "
|
7 |
"https://wordpress.org/support/plugin/woocommerce-square\n"
|
8 |
+
"POT-Creation-Date: 2022-06-09 01:29:29+00:00\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=utf-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
69 |
msgstr ""
|
70 |
|
71 |
#: includes/Admin/Privacy.php:43 includes/Admin/Settings_Page.php:54
|
72 |
+
#: includes/Gateway.php:82 includes/Settings.php:221 includes/Settings.php:762
|
73 |
msgid "Square"
|
74 |
msgstr ""
|
75 |
|
105 |
msgid "Close modal window"
|
106 |
msgstr ""
|
107 |
|
108 |
+
#: includes/Admin/Settings_Page.php:178
|
|
|
109 |
msgid ""
|
110 |
"You are about to import all new products, variations and categories from "
|
111 |
"Square. This will create a new product in WooCommerce for every product "
|
113 |
"imports, these will be ignored in the import."
|
114 |
msgstr ""
|
115 |
|
116 |
+
#: includes/Admin/Settings_Page.php:180
|
117 |
msgid "Do you wish to import existing product updates from Square?"
|
118 |
msgstr ""
|
119 |
|
120 |
+
#: includes/Admin/Settings_Page.php:182
|
121 |
#. translators: Placeholders: %1$s - <a> tag linking to WooCommerce Square
|
122 |
#. docs, %2%s - closing </a> tag
|
123 |
msgid ""
|
125 |
"information from Square. %1$sView Documentation%2$s."
|
126 |
msgstr ""
|
127 |
|
128 |
+
#: includes/Admin/Settings_Page.php:183
|
129 |
msgid "Update existing products during import."
|
130 |
msgstr ""
|
131 |
|
132 |
+
#: includes/Admin/Settings_Page.php:187 includes/Admin/Sync_Page.php:392
|
133 |
#: includes/Framework/PaymentGateway/Admin/views/html-order-partial-capture.php:41
|
134 |
#: includes/Framework/PaymentGateway/Payment_Gateway_My_Payment_Methods.php:203
|
135 |
#: vendor/woocommerce/action-scheduler/classes/ActionScheduler_ListTable.php:133
|
136 |
msgid "Cancel"
|
137 |
msgstr ""
|
138 |
|
139 |
+
#: includes/Admin/Settings_Page.php:188 includes/Settings.php:242
|
140 |
msgid "Import Products"
|
141 |
msgstr ""
|
142 |
|
833 |
|
834 |
#: includes/Framework/PaymentGateway/ApplePay/Payment_Gateway_Apple_Pay.php:541
|
835 |
#: includes/Gateway/API/Requests/Orders.php:77
|
836 |
+
#: includes/Gateway/Digital_Wallet.php:427
|
837 |
msgid "Discount"
|
838 |
msgstr ""
|
839 |
|
840 |
#: includes/Framework/PaymentGateway/ApplePay/Payment_Gateway_Apple_Pay.php:551
|
841 |
+
#: includes/Gateway/Digital_Wallet.php:411
|
842 |
msgid "Shipping"
|
843 |
msgstr ""
|
844 |
|
845 |
#: includes/Framework/PaymentGateway/ApplePay/Payment_Gateway_Apple_Pay.php:561
|
846 |
+
#: includes/Gateway/Digital_Wallet.php:435
|
847 |
msgid "Fees"
|
848 |
msgstr ""
|
849 |
|
1083 |
#: includes/Framework/PaymentGateway/Integrations/Payment_Gateway_Integration_Subscriptions.php:353
|
1084 |
#: includes/Framework/PaymentGateway/Payment_Gateway.php:2523
|
1085 |
#: includes/Gateway/Blocks_Handler.php:137
|
1086 |
+
#: includes/Gateway/Digital_Wallet.php:209
|
1087 |
#: includes/Gateway/Payment_Form.php:238 includes/Gateway.php:251
|
1088 |
msgid "An error occurred, please try again or try an alternate form of payment."
|
1089 |
msgstr ""
|
1919 |
"version of WooCommerce Blocks or WooCommerce to fix these issues."
|
1920 |
msgstr ""
|
1921 |
|
1922 |
+
#: includes/Gateway/Digital_Wallet.php:115
|
1923 |
#. Translators: %1$s: expected location of apple pay verification file, %2$s:
|
1924 |
#. opening href tag with link to Square documentation, %3$s: closing href tag
|
1925 |
msgid ""
|
1928 |
"information, please read our documentation on %2$sSetting up Apple Pay%3$s."
|
1929 |
msgstr ""
|
1930 |
|
1931 |
+
#: includes/Gateway/Digital_Wallet.php:131
|
1932 |
#. Translators: %1$s: opening bold tags, %2$s: closing strong/bold tags, %3$s:
|
1933 |
#. expected location of apple pay verification file, %4$s: opening href tag
|
1934 |
#. with link to Square documentation, %5$s: closing href tag
|
1938 |
"logs%2$s to find out what caused the registration to fail."
|
1939 |
msgstr ""
|
1940 |
|
1941 |
+
#: includes/Gateway/Digital_Wallet.php:178
|
1942 |
msgid "OR"
|
1943 |
msgstr ""
|
1944 |
|
1945 |
+
#: includes/Gateway/Digital_Wallet.php:280
|
1946 |
#. translators: product ID
|
1947 |
msgid "Product with the ID (%d) cannot be found."
|
1948 |
msgstr ""
|
1949 |
|
1950 |
+
#: includes/Gateway/Digital_Wallet.php:296
|
1951 |
#. translators: 1: product name 2: quantity in stock
|
1952 |
msgid ""
|
1953 |
"You cannot add that amount of \"%1$s\"; to the cart because there is not "
|
1954 |
"enough stock (%2$s remaining)."
|
1955 |
msgstr ""
|
1956 |
|
1957 |
+
#: includes/Gateway/Digital_Wallet.php:301
|
1958 |
#. translators: 1: product name
|
1959 |
msgid "You cannot purchase \"%1$s\" because it is currently not available."
|
1960 |
msgstr ""
|
1961 |
|
1962 |
+
#: includes/Gateway/Digital_Wallet.php:323
|
1963 |
+
#: includes/Gateway/Digital_Wallet.php:419
|
1964 |
msgid "Tax"
|
1965 |
msgstr ""
|
1966 |
|
1967 |
+
#: includes/Gateway/Digital_Wallet.php:358
|
1968 |
msgid "This payment method cannot be used for multiple shipments."
|
1969 |
msgstr ""
|
1970 |
|
1971 |
+
#: includes/Gateway/Digital_Wallet.php:369
|
1972 |
#: vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Store.php:378
|
1973 |
msgid "Pending"
|
1974 |
msgstr ""
|
1975 |
|
1976 |
+
#: includes/Gateway/Digital_Wallet.php:470
|
1977 |
#. translators: Context (product, cart, checkout or page)
|
1978 |
msgid "Empty payment request data for %s."
|
1979 |
msgstr ""
|
1980 |
|
1981 |
+
#: includes/Gateway/Digital_Wallet.php:734
|
1982 |
msgid "Empty cart"
|
1983 |
msgstr ""
|
1984 |
|
1985 |
+
#: includes/Gateway/Digital_Wallet.php:868
|
1986 |
msgid "Unable to verify domain with Apple Pay - missing access token."
|
1987 |
msgstr ""
|
1988 |
|
2440 |
msgid "Please choose a location"
|
2441 |
msgstr ""
|
2442 |
|
2443 |
+
#: includes/Settings.php:357
|
2444 |
msgid "Import all products from Square"
|
2445 |
msgstr ""
|
2446 |
|
2447 |
+
#: includes/Settings.php:359
|
2448 |
+
msgid ""
|
2449 |
+
"You have made changes to the settings. Please save the changes to enable "
|
2450 |
+
"the button."
|
2451 |
+
msgstr ""
|
2452 |
+
|
2453 |
#: includes/Sync/Interval_Polling.php:98
|
2454 |
msgid "Updated data for %d category."
|
2455 |
msgid_plural "Updated data for %d categories."
|
3241 |
msgid "Migrated action with ID %1$d in %2$s to ID %3$d in %4$s"
|
3242 |
msgstr ""
|
3243 |
|
3244 |
+
#: woocommerce-square.php:349
|
3245 |
+
#. translators: plugin name
|
3246 |
msgid ""
|
3247 |
"<strong>All features in %1$s have been disabled</strong> due to unsupported "
|
3248 |
"settings:<br>"
|
3249 |
msgstr ""
|
3250 |
|
3251 |
+
#: woocommerce-square.php:357
|
3252 |
+
#. translators: minimum PHP version, current PHP version
|
3253 |
msgid ""
|
3254 |
"• <strong>Invalid PHP version: </strong>The minimum PHP version "
|
3255 |
"required is %1$s. You are running %2$s.<br>"
|
3256 |
msgstr ""
|
3257 |
|
3258 |
+
#: woocommerce-square.php:366
|
3259 |
+
#. translators: link to documentation
|
3260 |
msgid ""
|
3261 |
"• <strong>Invalid OPcache config: </strong><a href=\"%s\" "
|
3262 |
"target=\"_blank\">Please ensure the <code>save_comments</code> PHP option "
|
includes/Admin/Settings_Page.php
CHANGED
@@ -175,8 +175,7 @@ class Settings_Page extends \WC_Settings_Page {
|
|
175 |
</button>
|
176 |
</header>
|
177 |
<article>
|
178 |
-
|
179 |
-
<p><?php printf( esc_html__( 'You are about to import all new products, variations and categories from Square. This will create a new product in WooCommerce for every product retrieved from Square. If you have products in the trash from the previous imports, these will be ignored in the import.', 'woocommerce-square' ), '<strong>', '</strong>' ); ?></p>
|
180 |
<hr>
|
181 |
<h4><?php esc_html_e( 'Do you wish to import existing product updates from Square?', 'woocommerce-square' ); ?></h4>
|
182 |
<?php /* translators: Placeholders: %1$s - <a> tag linking to WooCommerce Square docs, %2%s - closing </a> tag */ ?>
|
@@ -196,6 +195,4 @@ class Settings_Page extends \WC_Settings_Page {
|
|
196 |
</script>
|
197 |
<?php
|
198 |
}
|
199 |
-
|
200 |
-
|
201 |
}
|
175 |
</button>
|
176 |
</header>
|
177 |
<article>
|
178 |
+
<p><?php esc_html_e( 'You are about to import all new products, variations and categories from Square. This will create a new product in WooCommerce for every product retrieved from Square. If you have products in the trash from the previous imports, these will be ignored in the import.', 'woocommerce-square' ); ?></p>
|
|
|
179 |
<hr>
|
180 |
<h4><?php esc_html_e( 'Do you wish to import existing product updates from Square?', 'woocommerce-square' ); ?></h4>
|
181 |
<?php /* translators: Placeholders: %1$s - <a> tag linking to WooCommerce Square docs, %2%s - closing </a> tag */ ?>
|
195 |
</script>
|
196 |
<?php
|
197 |
}
|
|
|
|
|
198 |
}
|
includes/Gateway/Digital_Wallet.php
CHANGED
@@ -65,6 +65,7 @@ class Digital_Wallet {
|
|
65 |
|
66 |
// Calculate the value of option `wc_square_apple_pay_enabled` which is not stored in the DB for WC Admin inbox notifications
|
67 |
add_filter( 'pre_option_wc_square_apple_pay_enabled', array( $this, 'get_option_is_apple_pay_enabled' ), 10, 1 );
|
|
|
68 |
}
|
69 |
|
70 |
/**
|
@@ -325,7 +326,7 @@ class Digital_Wallet {
|
|
325 |
);
|
326 |
}
|
327 |
|
328 |
-
$data['requestShippingContact'] =
|
329 |
$data['lineItems'] = $items;
|
330 |
|
331 |
return $this->build_payment_request( $amount, $data );
|
@@ -345,7 +346,7 @@ class Digital_Wallet {
|
|
345 |
$data = wp_parse_args(
|
346 |
$data,
|
347 |
array(
|
348 |
-
'requestShippingContact' =>
|
349 |
'requestEmailAddress' => true,
|
350 |
'requestBillingContact' => true,
|
351 |
'countryCode' => substr( get_option( 'woocommerce_default_country' ), 0, 2 ),
|
@@ -572,6 +573,37 @@ class Digital_Wallet {
|
|
572 |
WC()->shipping->calculate_shipping( $packages );
|
573 |
}
|
574 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
575 |
/**
|
576 |
* Recalculate shipping methods and cart totals and send the updated information
|
577 |
* data as a square payment request json object.
|
@@ -586,58 +618,70 @@ class Digital_Wallet {
|
|
586 |
$shipping_address = array();
|
587 |
$payment_request = array();
|
588 |
|
589 |
-
if (
|
590 |
-
$
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
|
|
601 |
|
602 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
603 |
|
604 |
-
|
605 |
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
|
|
613 |
}
|
614 |
-
}
|
615 |
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
|
629 |
-
|
630 |
-
|
631 |
|
632 |
-
|
633 |
-
|
634 |
|
635 |
-
|
636 |
-
|
|
|
|
|
|
|
|
|
637 |
}
|
638 |
-
} elseif ( ! empty( $_POST['shipping_option'] ) ) {
|
639 |
-
$chosen_methods = array( wc_clean( wp_unslash( $_POST['shipping_option'] ) ) );
|
640 |
-
$this->update_shipping_method( $chosen_methods );
|
641 |
}
|
642 |
|
643 |
WC()->cart->calculate_totals();
|
@@ -652,6 +696,33 @@ class Digital_Wallet {
|
|
652 |
wp_send_json_success( $payment_request );
|
653 |
}
|
654 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
655 |
/**
|
656 |
* Process the digital wallet checkout
|
657 |
*
|
65 |
|
66 |
// Calculate the value of option `wc_square_apple_pay_enabled` which is not stored in the DB for WC Admin inbox notifications
|
67 |
add_filter( 'pre_option_wc_square_apple_pay_enabled', array( $this, 'get_option_is_apple_pay_enabled' ), 10, 1 );
|
68 |
+
add_filter( 'woocommerce_checkout_posted_data', array( $this, 'filter_posted_data' ) );
|
69 |
}
|
70 |
|
71 |
/**
|
326 |
);
|
327 |
}
|
328 |
|
329 |
+
$data['requestShippingContact'] = $product->needs_shipping();
|
330 |
$data['lineItems'] = $items;
|
331 |
|
332 |
return $this->build_payment_request( $amount, $data );
|
346 |
$data = wp_parse_args(
|
347 |
$data,
|
348 |
array(
|
349 |
+
'requestShippingContact' => isset( WC()->cart ) && WC()->cart->needs_shipping(),
|
350 |
'requestEmailAddress' => true,
|
351 |
'requestBillingContact' => true,
|
352 |
'countryCode' => substr( get_option( 'woocommerce_default_country' ), 0, 2 ),
|
573 |
WC()->shipping->calculate_shipping( $packages );
|
574 |
}
|
575 |
|
576 |
+
/**
|
577 |
+
* Returns location's state code by state name.
|
578 |
+
*
|
579 |
+
* @param string $country_code The country's 2 letter ISO 3166-1 alpha-2 code.
|
580 |
+
* @param string $state_name The full name of the state that is to be search for its code.
|
581 |
+
*
|
582 |
+
* @return string|null
|
583 |
+
*/
|
584 |
+
public static function get_state_code_by_name( $country_code = '', $state_name = '' ) {
|
585 |
+
if ( empty( $country_code ) || empty( $state_name ) ) {
|
586 |
+
return null;
|
587 |
+
}
|
588 |
+
|
589 |
+
$states = WC()->countries->get_states( $country_code );
|
590 |
+
|
591 |
+
/**
|
592 |
+
* Return the state code if $state_name already contains a valid state code.
|
593 |
+
*/
|
594 |
+
if ( isset( $states[ $state_name ] ) ) {
|
595 |
+
return $state_name;
|
596 |
+
}
|
597 |
+
|
598 |
+
foreach ( $states as $code => $name ) {
|
599 |
+
if ( $name === $state_name ) {
|
600 |
+
return $code;
|
601 |
+
}
|
602 |
+
}
|
603 |
+
|
604 |
+
return null;
|
605 |
+
}
|
606 |
+
|
607 |
/**
|
608 |
* Recalculate shipping methods and cart totals and send the updated information
|
609 |
* data as a square payment request json object.
|
618 |
$shipping_address = array();
|
619 |
$payment_request = array();
|
620 |
|
621 |
+
if ( WC()->cart->needs_shipping() ) {
|
622 |
+
if ( ! empty( $_POST['shipping_contact'] ) ) {
|
623 |
+
$shipping_address = wp_parse_args(
|
624 |
+
wc_clean( wp_unslash( $_POST['shipping_contact'] ) ),
|
625 |
+
array(
|
626 |
+
'countryCode' => null,
|
627 |
+
'state' => null,
|
628 |
+
'city' => null,
|
629 |
+
'postalCode' => null,
|
630 |
+
'address' => null,
|
631 |
+
'address_2' => null,
|
632 |
+
)
|
633 |
+
);
|
634 |
|
635 |
+
/**
|
636 |
+
* WooCommerce requires state code but for few countries, Google Pay
|
637 |
+
* returns the state's full name instead of the state code.
|
638 |
+
*
|
639 |
+
* The following line converts state name to code.
|
640 |
+
*/
|
641 |
+
if ( isset( $shipping_address['countryCode'] ) && isset( $shipping_address['state'] ) ) {
|
642 |
+
$shipping_address['state'] = self::get_state_code_by_name( $shipping_address['countryCode'], $shipping_address['state'] );
|
643 |
+
}
|
644 |
+
|
645 |
+
$this->calculate_shipping( $shipping_address );
|
646 |
|
647 |
+
$packages = WC()->shipping->get_packages();
|
648 |
|
649 |
+
if ( ! empty( $packages ) ) {
|
650 |
+
foreach ( $packages[0]['rates'] as $method ) {
|
651 |
+
$payment_request['shippingOptions'][] = array(
|
652 |
+
'id' => $method->id,
|
653 |
+
'label' => $method->get_label(),
|
654 |
+
'amount' => number_format( $method->cost, 2, '.', '' ),
|
655 |
+
);
|
656 |
+
}
|
657 |
}
|
|
|
658 |
|
659 |
+
// sort the shippingOptions so that the default/chosen shipping method is the first option so that it's displayed first in the Apple Pay/Google Pay window
|
660 |
+
if ( isset( $payment_request['shippingOptions'][0] ) ) {
|
661 |
+
if ( isset( $chosen_methods[0] ) ) {
|
662 |
+
$chosen_method_id = $chosen_methods[0];
|
663 |
+
$compare_shipping_options = function ( $a, $b ) use ( $chosen_method_id ) {
|
664 |
+
if ( $a['id'] === $chosen_method_id ) {
|
665 |
+
return -1;
|
666 |
+
}
|
667 |
|
668 |
+
if ( $b['id'] === $chosen_method_id ) {
|
669 |
+
return 1;
|
670 |
+
}
|
671 |
|
672 |
+
return 0;
|
673 |
+
};
|
674 |
|
675 |
+
usort( $payment_request['shippingOptions'], $compare_shipping_options );
|
676 |
+
}
|
677 |
|
678 |
+
$first_shipping_method_id = $payment_request['shippingOptions'][0]['id'];
|
679 |
+
$this->update_shipping_method( array( $first_shipping_method_id ) );
|
680 |
+
}
|
681 |
+
} elseif ( ! empty( $_POST['shipping_option'] ) ) {
|
682 |
+
$chosen_methods = array( wc_clean( wp_unslash( $_POST['shipping_option'] ) ) );
|
683 |
+
$this->update_shipping_method( $chosen_methods );
|
684 |
}
|
|
|
|
|
|
|
685 |
}
|
686 |
|
687 |
WC()->cart->calculate_totals();
|
696 |
wp_send_json_success( $payment_request );
|
697 |
}
|
698 |
|
699 |
+
/**
|
700 |
+
* Filters the post data just before checkout.
|
701 |
+
*
|
702 |
+
* WooCommerce requires the state code but Google Pay returns
|
703 |
+
* the full name of the state. We filter the post data to convert
|
704 |
+
* the full state name into its equivalent state code.
|
705 |
+
*
|
706 |
+
* @param array $posted_data The $_POST data submitted at checkout.
|
707 |
+
*
|
708 |
+
* @return array
|
709 |
+
*/
|
710 |
+
public function filter_posted_data( $posted_data ) {
|
711 |
+
if ( isset( $posted_data['payment_method'] ) && 'square_credit_card' !== $posted_data['payment_method'] ) {
|
712 |
+
return $posted_data;
|
713 |
+
}
|
714 |
+
|
715 |
+
if ( isset( $posted_data['shipping_country'] ) && isset( $posted_data['shipping_state'] ) ) {
|
716 |
+
$posted_data['shipping_state'] = self::get_state_code_by_name( $posted_data['shipping_country'], $posted_data['shipping_state'] );
|
717 |
+
}
|
718 |
+
|
719 |
+
if ( isset( $posted_data['billing_country'] ) && isset( $posted_data['billing_state'] ) ) {
|
720 |
+
$posted_data['billing_state'] = self::get_state_code_by_name( $posted_data['billing_country'], $posted_data['billing_state'] );
|
721 |
+
}
|
722 |
+
|
723 |
+
return $posted_data;
|
724 |
+
}
|
725 |
+
|
726 |
/**
|
727 |
* Process the digital wallet checkout
|
728 |
*
|
includes/Plugin.php
CHANGED
@@ -43,7 +43,7 @@ class Plugin extends Payment_Gateway_Plugin {
|
|
43 |
|
44 |
|
45 |
/** plugin version number */
|
46 |
-
const VERSION = '3.0
|
47 |
|
48 |
/** plugin ID */
|
49 |
const PLUGIN_ID = 'square';
|
43 |
|
44 |
|
45 |
/** plugin version number */
|
46 |
+
const VERSION = '3.1.0';
|
47 |
|
48 |
/** plugin ID */
|
49 |
const PLUGIN_ID = 'square';
|
includes/Settings.php
CHANGED
@@ -342,16 +342,21 @@ class Settings extends \WC_Settings_API {
|
|
342 |
*/
|
343 |
public function generate_import_products_html( $id, $field ) {
|
344 |
|
|
|
|
|
|
|
|
|
345 |
ob_start();
|
346 |
?>
|
347 |
-
<tr valign="top">
|
348 |
<th scope="row" class="titledesc">
|
349 |
<label for="<?php echo esc_attr( $id ); ?>"><?php echo wp_kses_post( $field['title'] ); ?> <?php echo $this->get_tooltip_html( $field ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></label>
|
350 |
</th>
|
351 |
<td class="forminp">
|
352 |
-
<a href='#' class='button js-import-square-products'>
|
353 |
<?php echo esc_html__( 'Import all products from Square', 'woocommerce-square' ); ?>
|
354 |
</a>
|
|
|
355 |
</td>
|
356 |
</tr>
|
357 |
<?php
|
342 |
*/
|
343 |
public function generate_import_products_html( $id, $field ) {
|
344 |
|
345 |
+
$is_location_set = (bool)$this->get_location_id();
|
346 |
+
$is_sor_set = (bool)$this->get_system_of_record_name();
|
347 |
+
$display = $is_location_set && $is_sor_set ? '' : 'display: none';
|
348 |
+
|
349 |
ob_start();
|
350 |
?>
|
351 |
+
<tr valign="top" style="<?php echo esc_attr( $display ); ?>">
|
352 |
<th scope="row" class="titledesc">
|
353 |
<label for="<?php echo esc_attr( $id ); ?>"><?php echo wp_kses_post( $field['title'] ); ?> <?php echo $this->get_tooltip_html( $field ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></label>
|
354 |
</th>
|
355 |
<td class="forminp">
|
356 |
+
<a id="wc_square_import_products" href='#' class='button js-import-square-products <?php echo ( ! $this->get_location_id() ? 'disabled' : '' ); ?>'>
|
357 |
<?php echo esc_html__( 'Import all products from Square', 'woocommerce-square' ); ?>
|
358 |
</a>
|
359 |
+
<p class="description wc_square_save_changes_message" style="display: none;"><?php esc_html_e( 'You have made changes to the settings. Please save the changes to enable the button.', 'woocommerce-square' ); ?></p>
|
360 |
</td>
|
361 |
</tr>
|
362 |
<?php
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: credit card, square, woocommerce, inventory sync
|
|
4 |
Requires at least: 4.6
|
5 |
Tested up to: 6.0
|
6 |
Requires PHP: 7.2
|
7 |
-
Stable tag: 3.0
|
8 |
License: GPLv3
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -71,6 +71,11 @@ If you get stuck, you can ask for help in the [Plugin Forum](https://wordpress.o
|
|
71 |
2. The payment gateway settings.
|
72 |
|
73 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
74 |
= 3.0.3 - 2022-06-01 =
|
75 |
* Fix - Customer Token Editor wasn't loading for some stores after updating to Square 3.0.0. #799
|
76 |
* Fix - No such file or directory warnings on case-sensitive filesystems. #799
|
4 |
Requires at least: 4.6
|
5 |
Tested up to: 6.0
|
6 |
Requires PHP: 7.2
|
7 |
+
Stable tag: 3.1.0
|
8 |
License: GPLv3
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
71 |
2. The payment gateway settings.
|
72 |
|
73 |
== Changelog ==
|
74 |
+
= 3.1.0 - 2022-06-09 =
|
75 |
+
* Fix - Hide shipping options in Google Pay form for virtual products. #800
|
76 |
+
* Fix - State-specific tax calculation when using Google Pay. #778
|
77 |
+
* Add - Validation that Business Location or SOR is set and Square settings are saved before enabling Import Products button. #463
|
78 |
+
|
79 |
= 3.0.3 - 2022-06-01 =
|
80 |
* Fix - Customer Token Editor wasn't loading for some stores after updating to Square 3.0.0. #799
|
81 |
* Fix - No such file or directory warnings on case-sensitive filesystems. #799
|
vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInite7caf2f4fab3115779a90b736801dd4b::getLoader();
|
vendor/composer/InstalledVersions.php
CHANGED
@@ -249,13 +249,7 @@ class InstalledVersions
|
|
249 |
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
|
250 |
|
251 |
if (null === self::$installed) {
|
252 |
-
|
253 |
-
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
|
254 |
-
if (substr(__DIR__, -8, 1) !== 'C') {
|
255 |
-
self::$installed = include __DIR__ . '/installed.php';
|
256 |
-
} else {
|
257 |
-
self::$installed = array();
|
258 |
-
}
|
259 |
}
|
260 |
|
261 |
return self::$installed;
|
@@ -322,13 +316,7 @@ class InstalledVersions
|
|
322 |
}
|
323 |
|
324 |
if (null === self::$installed) {
|
325 |
-
|
326 |
-
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
|
327 |
-
if (substr(__DIR__, -8, 1) !== 'C') {
|
328 |
-
self::$installed = require __DIR__ . '/installed.php';
|
329 |
-
} else {
|
330 |
-
self::$installed = array();
|
331 |
-
}
|
332 |
}
|
333 |
$installed[] = self::$installed;
|
334 |
|
249 |
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
|
250 |
|
251 |
if (null === self::$installed) {
|
252 |
+
self::$installed = include __DIR__ . '/installed.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
253 |
}
|
254 |
|
255 |
return self::$installed;
|
316 |
}
|
317 |
|
318 |
if (null === self::$installed) {
|
319 |
+
self::$installed = require __DIR__ . '/installed.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
320 |
}
|
321 |
$installed[] = self::$installed;
|
322 |
|
vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -24,15 +24,15 @@ class ComposerAutoloaderInit6c004c5aa07454b927fc64c1448a79c5
|
|
24 |
|
25 |
require __DIR__ . '/platform_check.php';
|
26 |
|
27 |
-
spl_autoload_register(array('
|
28 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
|
29 |
-
spl_autoload_unregister(array('
|
30 |
|
31 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
32 |
if ($useStaticLoader) {
|
33 |
require __DIR__ . '/autoload_static.php';
|
34 |
|
35 |
-
call_user_func(\Composer\Autoload\
|
36 |
} else {
|
37 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
38 |
foreach ($map as $namespace => $path) {
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInite7caf2f4fab3115779a90b736801dd4b
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
24 |
|
25 |
require __DIR__ . '/platform_check.php';
|
26 |
|
27 |
+
spl_autoload_register(array('ComposerAutoloaderInite7caf2f4fab3115779a90b736801dd4b', 'loadClassLoader'), true, true);
|
28 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
|
29 |
+
spl_autoload_unregister(array('ComposerAutoloaderInite7caf2f4fab3115779a90b736801dd4b', 'loadClassLoader'));
|
30 |
|
31 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
32 |
if ($useStaticLoader) {
|
33 |
require __DIR__ . '/autoload_static.php';
|
34 |
|
35 |
+
call_user_func(\Composer\Autoload\ComposerStaticInite7caf2f4fab3115779a90b736801dd4b::getInitializer($loader));
|
36 |
} else {
|
37 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
38 |
foreach ($map as $namespace => $path) {
|
vendor/composer/autoload_static.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
-
class
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'a' =>
|
@@ -45,10 +45,10 @@ class ComposerStaticInit6c004c5aa07454b927fc64c1448a79c5
|
|
45 |
public static function getInitializer(ClassLoader $loader)
|
46 |
{
|
47 |
return \Closure::bind(function () use ($loader) {
|
48 |
-
$loader->prefixLengthsPsr4 =
|
49 |
-
$loader->prefixDirsPsr4 =
|
50 |
-
$loader->prefixesPsr0 =
|
51 |
-
$loader->classMap =
|
52 |
|
53 |
}, null, ClassLoader::class);
|
54 |
}
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
+
class ComposerStaticInite7caf2f4fab3115779a90b736801dd4b
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'a' =>
|
45 |
public static function getInitializer(ClassLoader $loader)
|
46 |
{
|
47 |
return \Closure::bind(function () use ($loader) {
|
48 |
+
$loader->prefixLengthsPsr4 = ComposerStaticInite7caf2f4fab3115779a90b736801dd4b::$prefixLengthsPsr4;
|
49 |
+
$loader->prefixDirsPsr4 = ComposerStaticInite7caf2f4fab3115779a90b736801dd4b::$prefixDirsPsr4;
|
50 |
+
$loader->prefixesPsr0 = ComposerStaticInite7caf2f4fab3115779a90b736801dd4b::$prefixesPsr0;
|
51 |
+
$loader->classMap = ComposerStaticInite7caf2f4fab3115779a90b736801dd4b::$classMap;
|
52 |
|
53 |
}, null, ClassLoader::class);
|
54 |
}
|
vendor/composer/installed.php
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
<?php return array(
|
2 |
'root' => array(
|
3 |
-
'pretty_version' => 'dev-release/3.0
|
4 |
-
'version' => 'dev-release/3.0
|
5 |
'type' => 'library',
|
6 |
'install_path' => __DIR__ . '/../../',
|
7 |
'aliases' => array(),
|
8 |
-
'reference' => '
|
9 |
'name' => 'woocommerce/woocommerce-square',
|
10 |
'dev' => false,
|
11 |
),
|
@@ -47,12 +47,12 @@
|
|
47 |
'dev_requirement' => false,
|
48 |
),
|
49 |
'woocommerce/woocommerce-square' => array(
|
50 |
-
'pretty_version' => 'dev-release/3.0
|
51 |
-
'version' => 'dev-release/3.0
|
52 |
'type' => 'library',
|
53 |
'install_path' => __DIR__ . '/../../',
|
54 |
'aliases' => array(),
|
55 |
-
'reference' => '
|
56 |
'dev_requirement' => false,
|
57 |
),
|
58 |
),
|
1 |
<?php return array(
|
2 |
'root' => array(
|
3 |
+
'pretty_version' => 'dev-release/3.1.0',
|
4 |
+
'version' => 'dev-release/3.1.0',
|
5 |
'type' => 'library',
|
6 |
'install_path' => __DIR__ . '/../../',
|
7 |
'aliases' => array(),
|
8 |
+
'reference' => '9d99889923ef103d2bdea1a828aa4845ad234d21',
|
9 |
'name' => 'woocommerce/woocommerce-square',
|
10 |
'dev' => false,
|
11 |
),
|
47 |
'dev_requirement' => false,
|
48 |
),
|
49 |
'woocommerce/woocommerce-square' => array(
|
50 |
+
'pretty_version' => 'dev-release/3.1.0',
|
51 |
+
'version' => 'dev-release/3.1.0',
|
52 |
'type' => 'library',
|
53 |
'install_path' => __DIR__ . '/../../',
|
54 |
'aliases' => array(),
|
55 |
+
'reference' => '9d99889923ef103d2bdea1a828aa4845ad234d21',
|
56 |
'dev_requirement' => false,
|
57 |
),
|
58 |
),
|
woocommerce-square.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
* Plugin Name: WooCommerce Square
|
4 |
-
* Version: 3.0
|
5 |
* Plugin URI: https://woocommerce.com/products/square/
|
6 |
* Description: Adds ability to sync inventory between WooCommerce and Square POS. In addition, you can also make purchases through the Square payment gateway.
|
7 |
* Author: WooCommerce
|
@@ -25,7 +25,7 @@
|
|
25 |
|
26 |
defined( 'ABSPATH' ) || exit;
|
27 |
|
28 |
-
require_once
|
29 |
|
30 |
if ( ! defined( 'WC_SQUARE_PLUGIN_URL' ) ) {
|
31 |
define( 'WC_SQUARE_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
|
@@ -93,6 +93,7 @@ class WooCommerce_Square_Loader {
|
|
93 |
*/
|
94 |
public function __clone() {
|
95 |
|
|
|
96 |
_doing_it_wrong( __FUNCTION__, sprintf( 'You cannot clone instances of %s.', get_class( $this ) ), '2.0.0' );
|
97 |
}
|
98 |
|
@@ -104,6 +105,7 @@ class WooCommerce_Square_Loader {
|
|
104 |
*/
|
105 |
public function __wakeup() {
|
106 |
|
|
|
107 |
_doing_it_wrong( __FUNCTION__, sprintf( 'You cannot unserialize instances of %s.', get_class( $this ) ), '2.0.0' );
|
108 |
}
|
109 |
|
@@ -122,12 +124,12 @@ class WooCommerce_Square_Loader {
|
|
122 |
$this->load_framework();
|
123 |
|
124 |
// autoload plugin and vendor files
|
125 |
-
$loader = require_once
|
126 |
|
127 |
// register plugin namespace with autoloader
|
128 |
$loader->addPsr4( 'WooCommerce\\Square\\', __DIR__ . '/includes' );
|
129 |
|
130 |
-
require_once
|
131 |
|
132 |
// fire it up!
|
133 |
wc_square();
|
@@ -140,8 +142,8 @@ class WooCommerce_Square_Loader {
|
|
140 |
* @since 2.0.0
|
141 |
*/
|
142 |
protected function load_framework() {
|
143 |
-
require_once
|
144 |
-
require_once
|
145 |
}
|
146 |
|
147 |
|
@@ -268,7 +270,9 @@ class WooCommerce_Square_Loader {
|
|
268 |
|
269 |
deactivate_plugins( plugin_basename( __FILE__ ) );
|
270 |
|
|
|
271 |
if ( isset( $_GET['activate'] ) ) {
|
|
|
272 |
unset( $_GET['activate'] );
|
273 |
}
|
274 |
}
|
@@ -341,14 +345,16 @@ class WooCommerce_Square_Loader {
|
|
341 |
|
342 |
if ( ! $is_php_valid || ! $is_opcache_config_valid ) {
|
343 |
$error_message .= sprintf(
|
344 |
-
|
|
|
345 |
self::PLUGIN_NAME
|
346 |
);
|
347 |
}
|
348 |
|
349 |
if ( ! $is_php_valid ) {
|
350 |
$error_message .= sprintf(
|
351 |
-
|
|
|
352 |
self::MINIMUM_PHP_VERSION,
|
353 |
PHP_VERSION
|
354 |
);
|
@@ -356,7 +362,8 @@ class WooCommerce_Square_Loader {
|
|
356 |
|
357 |
if ( ! $is_opcache_config_valid ) {
|
358 |
$error_message .= sprintf(
|
359 |
-
|
|
|
360 |
'https://woocommerce.com/document/woocommerce-square/#section-43'
|
361 |
);
|
362 |
}
|
1 |
<?php
|
2 |
/**
|
3 |
* Plugin Name: WooCommerce Square
|
4 |
+
* Version: 3.1.0
|
5 |
* Plugin URI: https://woocommerce.com/products/square/
|
6 |
* Description: Adds ability to sync inventory between WooCommerce and Square POS. In addition, you can also make purchases through the Square payment gateway.
|
7 |
* Author: WooCommerce
|
25 |
|
26 |
defined( 'ABSPATH' ) || exit;
|
27 |
|
28 |
+
require_once plugin_dir_path( __FILE__ ) . 'vendor/woocommerce/action-scheduler/action-scheduler.php';
|
29 |
|
30 |
if ( ! defined( 'WC_SQUARE_PLUGIN_URL' ) ) {
|
31 |
define( 'WC_SQUARE_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
|
93 |
*/
|
94 |
public function __clone() {
|
95 |
|
96 |
+
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
97 |
_doing_it_wrong( __FUNCTION__, sprintf( 'You cannot clone instances of %s.', get_class( $this ) ), '2.0.0' );
|
98 |
}
|
99 |
|
105 |
*/
|
106 |
public function __wakeup() {
|
107 |
|
108 |
+
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
109 |
_doing_it_wrong( __FUNCTION__, sprintf( 'You cannot unserialize instances of %s.', get_class( $this ) ), '2.0.0' );
|
110 |
}
|
111 |
|
124 |
$this->load_framework();
|
125 |
|
126 |
// autoload plugin and vendor files
|
127 |
+
$loader = require_once plugin_dir_path( __FILE__ ) . 'vendor/autoload.php';
|
128 |
|
129 |
// register plugin namespace with autoloader
|
130 |
$loader->addPsr4( 'WooCommerce\\Square\\', __DIR__ . '/includes' );
|
131 |
|
132 |
+
require_once plugin_dir_path( __FILE__ ) . 'includes/Functions.php';
|
133 |
|
134 |
// fire it up!
|
135 |
wc_square();
|
142 |
* @since 2.0.0
|
143 |
*/
|
144 |
protected function load_framework() {
|
145 |
+
require_once plugin_dir_path( __FILE__ ) . 'includes/Framework/Plugin.php';
|
146 |
+
require_once plugin_dir_path( __FILE__ ) . 'includes/Framework/PaymentGateway/Payment_Gateway_Plugin.php';
|
147 |
}
|
148 |
|
149 |
|
270 |
|
271 |
deactivate_plugins( plugin_basename( __FILE__ ) );
|
272 |
|
273 |
+
// phpcs:ignore WordPress.Security.NonceVerification.Recommended
|
274 |
if ( isset( $_GET['activate'] ) ) {
|
275 |
+
// phpcs:ignore WordPress.Security.NonceVerification.Recommended
|
276 |
unset( $_GET['activate'] );
|
277 |
}
|
278 |
}
|
345 |
|
346 |
if ( ! $is_php_valid || ! $is_opcache_config_valid ) {
|
347 |
$error_message .= sprintf(
|
348 |
+
// translators: plugin name
|
349 |
+
esc_html__( '<strong>All features in %1$s have been disabled</strong> due to unsupported settings:<br>', 'woocommerce-square' ),
|
350 |
self::PLUGIN_NAME
|
351 |
);
|
352 |
}
|
353 |
|
354 |
if ( ! $is_php_valid ) {
|
355 |
$error_message .= sprintf(
|
356 |
+
// translators: minimum PHP version, current PHP version
|
357 |
+
esc_html__( '• <strong>Invalid PHP version: </strong>The minimum PHP version required is %1$s. You are running %2$s.<br>', 'woocommerce-square' ),
|
358 |
self::MINIMUM_PHP_VERSION,
|
359 |
PHP_VERSION
|
360 |
);
|
362 |
|
363 |
if ( ! $is_opcache_config_valid ) {
|
364 |
$error_message .= sprintf(
|
365 |
+
// translators: link to documentation
|
366 |
+
esc_html__( '• <strong>Invalid OPcache config: </strong><a href="%s" target="_blank">Please ensure the <code>save_comments</code> PHP option is enabled.</a> You may need to contact your hosting provider to change caching options.', 'woocommerce-square' ),
|
367 |
'https://woocommerce.com/document/woocommerce-square/#section-43'
|
368 |
);
|
369 |
}
|