diff --git a/Makefile b/Makefile index adf4eb2229962d3b70e2b4fd00190acad7154af5..f19906cda73e5cf6195e6440abc54438b661964e 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ BASE=rules_shipping BASE_ADV=rules_shipping_advanced PLUGINTYPE=vmshipment ZIPBASE=opentools_vm2 -VERSION=3.0.0 +VERSION=3.0.1 PLUGINFILES=$(BASE).php $(BASE)_base.php $(BASE).script.php $(BASE).xml index.html PLUGINFILES_ADV=$(BASE_ADV).php $(BASE)_base.php $(BASE_ADV).script.php $(BASE_ADV).xml index.html diff --git a/releases/plg_opentools_vm2_rules_shipping_advanced_v3.0.1.zip b/releases/plg_opentools_vm2_rules_shipping_advanced_v3.0.1.zip new file mode 100644 index 0000000000000000000000000000000000000000..39ec21a860f05df43e676c086fd2a0f244141c0b Binary files /dev/null and b/releases/plg_opentools_vm2_rules_shipping_advanced_v3.0.1.zip differ diff --git a/releases/plg_opentools_vm2_rules_shipping_v3.0.1.zip b/releases/plg_opentools_vm2_rules_shipping_v3.0.1.zip new file mode 100644 index 0000000000000000000000000000000000000000..3eef15285a36b0b117f3649a10db6a5346752498 Binary files /dev/null and b/releases/plg_opentools_vm2_rules_shipping_v3.0.1.zip differ diff --git a/rules_shipping.xml b/rules_shipping.xml index 173b8a59694065edc347701964829bddec1c9f01..2c1fb8a39bb0e23c2330a24ba4bcbf24c2a5b751 100644 --- a/rules_shipping.xml +++ b/rules_shipping.xml @@ -6,7 +6,7 @@ <authorUrl>http://www.open-tools.net</authorUrl> <copyright>Copyright (C) 2013, Reinhold Kainhofer</copyright> <license>GPL v3+</license> - <version>3.0.0</version> + <version>3.0.1</version> <description>VMSHIPMENT_RULES_DESC</description> <files> <filename plugin="rules_shipping">rules_shipping.php</filename> diff --git a/rules_shipping_advanced.php b/rules_shipping_advanced.php index c95e74a1e8bfb33d9692a462d02e23f48829ddc0..deb537ec28685904668a9877c084dab6f0835563 100644 --- a/rules_shipping_advanced.php +++ b/rules_shipping_advanced.php @@ -68,7 +68,7 @@ class plgVmShipmentRules_Shipping_Advanced extends plgVmShipmentRules_Shipping_B // Postal code Check for UK postal codes: Use regexp to determine if ZIP structure matches and also to extract the parts. // Also handle UK overseas areas/islands that use four-letter outward codes rather than "A{1,2}0{1,2}A{0,1} 0AA" - if ($zip and preg_match('/^\s*(([A-Za-z]{1,2})(\d{1,2})([A-Za-z]?)|[A-Za-z]{4})\s*(\d[A-Za-z]{2})\s*$/', $zip, $match)) { + if (defined($zip) and preg_match('/^\s*(([A-Za-z]{1,2})(\d{1,2})([A-Za-z]?)|[A-Za-z]{4})\s*(\d[A-Za-z]{2})\s*$/', $zip, $match)) { $values['uk_outward'] = $match[1]; $values['uk_area'] = $match[2]; $values['uk_district'] = $match[3]; @@ -82,7 +82,7 @@ class plgVmShipmentRules_Shipping_Advanced extends plgVmShipmentRules_Shipping_B $values['uk_inward'] = NULL; } // Postal code Check for Canadian postal codes: Use regexp to determine if ZIP structure matches and also to extract the parts. - if ($zip and preg_match('/^\s*(([A-Za-z])(\d)([A-Za-z]))\s*(\d[A-Za-z]\d)\s*$/', $zip, $match)) { + if (defined($zip) and preg_match('/^\s*(([A-Za-z])(\d)([A-Za-z]))\s*(\d[A-Za-z]\d)\s*$/', $zip, $match)) { $values['canada_fsa'] = $match[1]; $values['canada_area'] = $match[2]; $values['canada_urban'] = $match[3]; diff --git a/rules_shipping_advanced.xml b/rules_shipping_advanced.xml index 590dd483daef3427cfdc97333e70242e418d09e5..723f54911e5d0e2e98f2306957048ad6a066a32e 100644 --- a/rules_shipping_advanced.xml +++ b/rules_shipping_advanced.xml @@ -6,7 +6,7 @@ <authorUrl>http://www.open-tools.net</authorUrl> <copyright>Copyright (C) 2013, Reinhold Kainhofer</copyright> <license>GPL v3+</license> - <version>3.0.0</version> + <version>3.0.1</version> <description>VMSHIPMENT_RULES_ADV_DESC</description> <files> <filename plugin="rules_shipping_advanced">rules_shipping_advanced.php</filename> diff --git a/rules_shipping_base.php b/rules_shipping_base.php index 6e72ed26c788be8776496993af88f2e1593a9325..73d4c5c9686d750040f81f0ba04492472c50658c 100644 --- a/rules_shipping_base.php +++ b/rules_shipping_base.php @@ -709,15 +709,16 @@ class ShippingRule { $func = strtolower($function); // Functions with no argument: if (count($args) == 0) { + $dt = getdate(); switch ($func) { - case "second": return getdate()["seconds"]; break; - case "minute": return getdate()["minutes"]; break; - case "hour": return getdate()["hours"]; break; - case "day": return getdate()["mday"]; break; - case "weekday":return getdate()["wday"]; break; - case "month": return getdate()["mon"]; break; - case "year": return getdate()["year"]; break; - case "yearday":return getdate()["yday"]; break; + case "second": return $dt['seconds']; break; + case "minute": return $dt['minutes']; break; + case "hour": return $dt['hours']; break; + case "day": return $dt['mday']; break; + case "weekday":return $dt['wday']; break; + case "month": return $dt['mon']; break; + case "year": return $dt['year']; break; + case "yearday":return $dt['yday']; break; } } // Functions with exactly one argument: