Changeset 3478259
- Timestamp:
- 03/09/2026 03:15:34 PM (3 weeks ago)
- Location:
- europarcel-com
- Files:
-
- 17 edited
- 20 copied
-
tags/1.0.8 (copied) (copied from europarcel-com/trunk)
-
tags/1.0.8/README.txt (copied) (copied from europarcel-com/trunk/README.txt) (3 diffs)
-
tags/1.0.8/assets/css/europarcel-admin.css (copied) (copied from europarcel-com/trunk/assets/css/europarcel-admin.css) (1 diff)
-
tags/1.0.8/assets/js/europarcel-admin.js (copied) (copied from europarcel-com/trunk/assets/js/europarcel-admin.js) (1 diff)
-
tags/1.0.8/assets/js/europarcel-locker-selector.js (copied) (copied from europarcel-com/trunk/assets/js/europarcel-locker-selector.js) (1 diff)
-
tags/1.0.8/assets/js/europarcel-modal.js (copied) (copied from europarcel-com/trunk/assets/js/europarcel-modal.js) (5 diffs)
-
tags/1.0.8/europarcel-com.php (copied) (copied from europarcel-com/trunk/europarcel-com.php) (10 diffs)
-
tags/1.0.8/includes/class-europarcel-activator.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-activator.php) (3 diffs)
-
tags/1.0.8/includes/class-europarcel-checkout.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-checkout.php) (11 diffs)
-
tags/1.0.8/includes/class-europarcel-constants.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-constants.php) (4 diffs)
-
tags/1.0.8/includes/class-europarcel-customer.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-customer.php) (12 diffs)
-
tags/1.0.8/includes/class-europarcel-deactivator.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-deactivator.php) (3 diffs)
-
tags/1.0.8/includes/class-europarcel-http-request.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-http-request.php) (8 diffs)
-
tags/1.0.8/includes/class-europarcel-main.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-main.php) (12 diffs)
-
tags/1.0.8/includes/class-europarcel-request-data.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-request-data.php) (9 diffs)
-
tags/1.0.8/includes/class-europarcel-shipping.php (copied) (copied from europarcel-com/trunk/includes/class-europarcel-shipping.php) (11 diffs)
-
tags/1.0.8/languages/europarcel-com-ro_RO.mo (copied) (copied from europarcel-com/trunk/languages/europarcel-com-ro_RO.mo)
-
tags/1.0.8/languages/europarcel-com-ro_RO.po (copied) (copied from europarcel-com/trunk/languages/europarcel-com-ro_RO.po) (1 diff)
-
tags/1.0.8/languages/europarcel-com.pot (copied) (copied from europarcel-com/trunk/languages/europarcel-com.pot)
-
tags/1.0.8/uninstall.php (copied) (copied from europarcel-com/trunk/uninstall.php) (1 diff)
-
trunk/README.txt (modified) (3 diffs)
-
trunk/assets/css/europarcel-admin.css (modified) (1 diff)
-
trunk/assets/js/europarcel-admin.js (modified) (1 diff)
-
trunk/assets/js/europarcel-locker-selector.js (modified) (1 diff)
-
trunk/assets/js/europarcel-modal.js (modified) (5 diffs)
-
trunk/europarcel-com.php (modified) (10 diffs)
-
trunk/includes/class-europarcel-activator.php (modified) (3 diffs)
-
trunk/includes/class-europarcel-checkout.php (modified) (11 diffs)
-
trunk/includes/class-europarcel-constants.php (modified) (4 diffs)
-
trunk/includes/class-europarcel-customer.php (modified) (12 diffs)
-
trunk/includes/class-europarcel-deactivator.php (modified) (3 diffs)
-
trunk/includes/class-europarcel-http-request.php (modified) (8 diffs)
-
trunk/includes/class-europarcel-main.php (modified) (12 diffs)
-
trunk/includes/class-europarcel-request-data.php (modified) (9 diffs)
-
trunk/includes/class-europarcel-shipping.php (modified) (11 diffs)
-
trunk/languages/europarcel-com-ro_RO.po (modified) (1 diff)
-
trunk/uninstall.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
europarcel-com/tags/1.0.8/README.txt
r3441645 r3478259 5 5 Tested up to: 6.9 6 6 Requires PHP: 7.4 7 Stable tag: 1.0. 77 Stable tag: 1.0.8 8 8 License: GPL-2.0+ 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.txt … … 77 77 == Changelog == 78 78 79 = 1.0.8 = 80 * Fixed: Price fields now accept decimal values (e.g., 15.99) instead of integers only 81 79 82 = 1.0.7 = 80 83 * Performance fix: Eliminated unnecessary API requests on cart and checkout pages … … 104 107 == Upgrade Notice == 105 108 109 = 1.0.8 = 110 Bug fix: Price fields now accept decimal values. 111 106 112 = 1.0.7 = 107 113 Performance fix: Eliminated unnecessary API requests on cart and checkout pages. -
europarcel-com/tags/1.0.8/assets/css/europarcel-admin.css
r3441645 r3478259 6 6 * 7 7 * @package Europarcel 8 * @since 1.0. 78 * @since 1.0.8 9 9 */ 10 10 -
europarcel-com/tags/1.0.8/assets/js/europarcel-admin.js
r3441645 r3478259 6 6 * 7 7 * @package Europarcel 8 * @since 1.0. 78 * @since 1.0.8 9 9 */ 10 10 -
europarcel-com/tags/1.0.8/assets/js/europarcel-locker-selector.js
r3441645 r3478259 7 7 * 8 8 * @package Europarcel 9 * @since 1.0. 79 * @since 1.0.8 10 10 */ 11 11 -
europarcel-com/tags/1.0.8/assets/js/europarcel-modal.js
r3441645 r3478259 7 7 * @package Europarcel 8 8 * @subpackage Assets/JavaScript 9 * @since 1.0. 79 * @since 1.0.8 10 10 */ 11 11 … … 16 16 * EuroParcel Modal object 17 17 * 18 * @since 1.0. 718 * @since 1.0.8 19 19 */ 20 20 window.EuroparcelModal = { … … 26 26 * Handles both desktop and mobile responsive display. 27 27 * 28 * @since 1.0. 728 * @since 1.0.8 29 29 * @param {string} iframeUrl - The URL to load in the iframe 30 30 */ … … 92 92 * Configures click handlers, escape key handler, and other modal interactions. 93 93 * 94 * @since 1.0. 794 * @since 1.0.8 95 95 * @param {HTMLElement} modal - The modal element 96 96 * @param {boolean} isMobile - Whether the device is mobile … … 141 141 * Cleans up event listeners to prevent memory leaks. 142 142 * 143 * @since 1.0. 7143 * @since 1.0.8 144 144 */ 145 145 close: function() { -
europarcel-com/tags/1.0.8/europarcel-com.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * @package Europarcel 13 13 * … … 15 15 * Plugin Name: EuroParcel Integration for WooCommerce 16 16 * Description: Connect your WooCommerce store with eAWB shipping platform 17 * Version: 1.0. 717 * Version: 1.0.8 18 18 * Author: EuroParcel 19 19 * Author URI: https://eawb.ro/ … … 31 31 } 32 32 33 define('EUROPARCELCOM_WC_VERSION', '1.0. 7');33 define('EUROPARCELCOM_WC_VERSION', '1.0.8'); 34 34 35 35 /** … … 65 65 * Declare compatibility with WooCommerce High-Performance Order Storage (HPOS) 66 66 * 67 * @since 1.0. 767 * @since 1.0.8 68 68 */ 69 69 add_action('before_woocommerce_init', function() { … … 76 76 * Initialize the shipping method 77 77 * 78 * @since 1.0. 778 * @since 1.0.8 79 79 */ 80 80 add_action('woocommerce_shipping_init', 'europarcelcom_wc_shipping_init'); … … 83 83 * Load the shipping method class 84 84 * 85 * @since 1.0. 785 * @since 1.0.8 86 86 */ 87 87 function europarcelcom_wc_shipping_init() { … … 95 95 * Register the shipping method with WooCommerce 96 96 * 97 * @since 1.0. 797 * @since 1.0.8 98 98 * @param array $methods Existing shipping methods 99 99 * @return array Updated shipping methods … … 107 107 * Enqueue admin styles and scripts 108 108 * 109 * @since 1.0. 7109 * @since 1.0.8 110 110 */ 111 111 add_action('admin_enqueue_scripts', function () { 112 112 $current_screen = get_current_screen(); 113 113 if (is_admin() && $current_screen && strpos($current_screen->id, 'woocommerce_page_wc-settings') !== false) { 114 wp_enqueue_style('europarcel-admin', plugins_url('assets/css/europarcel-admin.css', __FILE__), array(), '1.0. 7');115 wp_enqueue_script('europarcel-admin', plugins_url('assets/js/europarcel-admin.js', __FILE__), array('jquery', 'select2'), '1.0. 7', true);114 wp_enqueue_style('europarcel-admin', plugins_url('assets/css/europarcel-admin.css', __FILE__), array(), '1.0.8'); 115 wp_enqueue_script('europarcel-admin', plugins_url('assets/js/europarcel-admin.js', __FILE__), array('jquery', 'select2'), '1.0.8', true); 116 116 } 117 117 }); … … 120 120 * Initialize the main plugin class 121 121 * 122 * @since 1.0. 7122 * @since 1.0.8 123 123 */ 124 124 function europarcelcom_wc_plugin_run() { … … 133 133 * Add plugin row meta links (Documentation, Video Tutorial) 134 134 * 135 * @since 1.0. 7135 * @since 1.0.8 136 136 * @param array $links Existing meta links 137 137 * @param string $file Plugin file path -
europarcel-com/tags/1.0.8/includes/class-europarcel-activator.php
r3441645 r3478259 9 9 * 10 10 * @link https://europarcel.com 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 20 20 * This class defines all code necessary to run during the plugin's activation. 21 21 * 22 * @since 1.0. 722 * @since 1.0.8 23 23 * @package Europarcel 24 24 * @subpackage Europarcel/includes … … 32 32 * Handles any setup tasks required when the plugin is activated. 33 33 * 34 * @since 1.0. 734 * @since 1.0.8 35 35 */ 36 36 public static function activate() { 37 37 // Store plugin version 38 38 if (!get_option('EUROPARCELCOM_WC_VERSION')) { 39 add_option('EUROPARCELCOM_WC_VERSION', '1.0. 7');39 add_option('EUROPARCELCOM_WC_VERSION', '1.0.8'); 40 40 } 41 41 -
europarcel-com/tags/1.0.8/includes/class-europarcel-checkout.php
r3441645 r3478259 13 13 * 14 14 * @link https://eawb.ro 15 * @since 1.0. 715 * @since 1.0.8 16 16 * 17 17 * @package Europarcel … … 28 28 * for locker selection and shipping updates. 29 29 * 30 * @since 1.0. 730 * @since 1.0.8 31 31 * @package Europarcel 32 32 * @subpackage Europarcel/includes … … 38 38 * Whether the current checkout is blocks-based 39 39 * 40 * @since 1.0. 740 * @since 1.0.8 41 41 * @access private 42 42 * @var bool $is_blocks_checkout True if blocks checkout detected … … 50 50 * via smart_init method to detect checkout type first. 51 51 * 52 * @since 1.0. 752 * @since 1.0.8 53 53 */ 54 54 public function __construct() { … … 62 62 * or Blocks-based and initializes the appropriate functionality. 63 63 * 64 * @since 1.0. 764 * @since 1.0.8 65 65 */ 66 66 public function smart_init() { … … 83 83 * Enqueues scripts and localizes data for WooCommerce Blocks checkout. 84 84 * 85 * @since 1.0. 785 * @since 1.0.8 86 86 */ 87 87 private function init_blocks_checkout() { … … 96 96 * Enqueues scripts and localizes data for WooCommerce Classic checkout. 97 97 * 98 * @since 1.0. 798 * @since 1.0.8 99 99 */ 100 100 private function init_classic_checkout() { … … 110 110 * and checkout type information for JavaScript usage. 111 111 * 112 * @since 1.0. 7112 * @since 1.0.8 113 113 */ 114 114 private function localize_script_data() { … … 191 191 * Validates nonce and returns carrier data via JSON response. 192 192 * 193 * @since 1.0. 7193 * @since 1.0.8 194 194 */ 195 195 public function wp_ajax_europarcelcomwc_get_locker_carriers() { … … 221 221 * Validates nonce and sanitizes all input data. 222 222 * 223 * @since 1.0. 7223 * @since 1.0.8 224 224 */ 225 225 public function wp_ajax_europarcelcomwc_update_locker_shipping() { … … 276 276 * the locker selection button in classic checkout when applicable. 277 277 * 278 * @since 1.0. 7278 * @since 1.0.8 279 279 */ 280 280 public function classic_checkout_button() { -
europarcel-com/tags/1.0.8/includes/class-europarcel-constants.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 27 27 * shipping services for both admin configuration and API requests. 28 28 * 29 * @since 1.0. 729 * @since 1.0.8 30 30 * @package Europarcel 31 31 * @subpackage Europarcel/includes … … 41 41 * All strings are internationalized for translation support. 42 42 * 43 * @since 1.0. 743 * @since 1.0.8 44 44 * @return array Array of service keys and their translated display names 45 45 */ … … 69 69 * - 2: Locker delivery (home to locker) 70 70 * 71 * @since 1.0. 771 * @since 1.0.8 72 72 * @param array|string $services Array of service keys to convert (or string for backward compatibility) 73 73 * @return array Array of carrier configuration arrays -
europarcel-com/tags/1.0.8/includes/class-europarcel-customer.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 31 31 * and carrier service availability. 32 32 * 33 * @since 1.0. 733 * @since 1.0.8 34 34 * @package Europarcel 35 35 * @subpackage Europarcel/includes … … 41 41 * The WooCommerce shipping instance ID 42 42 * 43 * @since 1.0. 743 * @since 1.0.8 44 44 * @access private 45 45 * @var int $instance_id WooCommerce shipping method instance ID … … 50 50 * The shipping method settings 51 51 * 52 * @since 1.0. 752 * @since 1.0.8 53 53 * @access public 54 54 * @var array $settings WooCommerce shipping method settings … … 62 62 * configuration and loads the associated settings. 63 63 * 64 * @since 1.0. 764 * @since 1.0.8 65 65 * @param int $instance_id WooCommerce shipping method instance ID 66 66 */ … … 76 76 * the EuroParcel API including name, contact details, and account status. 77 77 * 78 * @since 1.0. 778 * @since 1.0.8 79 79 * @return array|null Customer account data or null on failure 80 80 */ … … 100 100 * EuroParcel account for use in shipping calculations. 101 101 * 102 * @since 1.0. 7102 * @since 1.0.8 103 103 * @return array Array of billing addresses with ID as key and formatted address as value 104 104 */ … … 138 138 * EuroParcel account for use as pickup locations. 139 139 * 140 * @since 1.0. 7140 * @since 1.0.8 141 141 * @return array Array of pickup addresses with ID as key and formatted address as value 142 142 */ … … 177 177 * and destination address. 178 178 * 179 * @since 1.0. 7179 * @since 1.0.8 180 180 * @param array $package WooCommerce package data with destination details 181 181 * @param bool $allow_locker Whether to include locker delivery options … … 262 262 * Used with usort() to arrange services from lowest to highest cost. 263 263 * 264 * @since 1.0. 7264 * @since 1.0.8 265 265 * @param array $first_service First service for comparison 266 266 * @param array $second_service Second service for comparison … … 280 280 * based on the configured available services. 281 281 * 282 * @since 1.0. 7282 * @since 1.0.8 283 283 * @return array Array of carrier IDs that support locker delivery 284 284 */ … … 316 316 * based on the configured available services. 317 317 * 318 * @since 1.0. 7318 * @since 1.0.8 319 319 * @return array|false Array of carrier IDs that support standard delivery or false if none available 320 320 */ -
europarcel-com/tags/1.0.8/includes/class-europarcel-deactivator.php
r3441645 r3478259 9 9 * 10 10 * @link https://europarcel.com 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 20 20 * This class defines all code necessary to run during the plugin's deactivation. 21 21 * 22 * @since 1.0. 722 * @since 1.0.8 23 23 * @package Europarcel 24 24 * @subpackage Europarcel/includes … … 32 32 * Handles any cleanup tasks required when the plugin is deactivated. 33 33 * 34 * @since 1.0. 734 * @since 1.0.8 35 35 */ 36 36 public static function deactivate() { -
europarcel-com/tags/1.0.8/includes/class-europarcel-http-request.php
r3441645 r3478259 8 8 * 9 9 * @link https://eawb.ro 10 * @since 1.0. 710 * @since 1.0.8 11 11 * 12 12 * @package Europarcel … … 26 26 * for both GET and POST requests with proper error handling. 27 27 * 28 * @since 1.0. 728 * @since 1.0.8 29 29 * @package Europarcel 30 30 * @subpackage Europarcel/includes … … 36 36 * The shipping method instance ID 37 37 * 38 * @since 1.0. 738 * @since 1.0.8 39 39 * @access private 40 40 * @var int $instance_id WooCommerce shipping method instance ID … … 48 48 * shipping method settings and API key. 49 49 * 50 * @since 1.0. 750 * @since 1.0.8 51 51 * @param int $instance_id WooCommerce shipping method instance ID 52 52 */ … … 60 60 * query parameters and handles the response. 61 61 * 62 * @since 1.0. 762 * @since 1.0.8 63 63 * @param string $function API endpoint function name 64 64 * @param array $data Optional query parameters … … 89 89 * the provided data and handles the response. 90 90 * 91 * @since 1.0. 791 * @since 1.0.8 92 92 * @param string $function API endpoint function name 93 93 * @param array $data POST data to send … … 115 115 * Throws exceptions for various error conditions. 116 116 * 117 * @since 1.0. 7117 * @since 1.0.8 118 118 * @param array|WP_Error $response WordPress HTTP API response 119 119 * @return array Decoded JSON response … … 155 155 * the headers required for EuroParcel API authentication. 156 156 * 157 * @since 1.0. 7157 * @since 1.0.8 158 158 * @return array HTTP headers array with API key 159 159 */ -
europarcel-com/tags/1.0.8/includes/class-europarcel-main.php
r3441645 r3478259 13 13 * 14 14 * @link https://eawb.ro 15 * @since 1.0. 715 * @since 1.0.8 16 16 * 17 17 * @package Europarcel … … 26 26 * both classic and blocks checkout types. 27 27 * 28 * @since 1.0. 728 * @since 1.0.8 29 29 * @package Europarcel 30 30 * @subpackage Europarcel/includes … … 36 36 * The plugin name 37 37 * 38 * @since 1.0. 738 * @since 1.0.8 39 39 * @access protected 40 40 * @var string $plugin_name The plugin identifier name … … 45 45 * The plugin version 46 46 * 47 * @since 1.0. 747 * @since 1.0.8 48 48 * @access protected 49 49 * @var string $version The current plugin version … … 54 54 * The checkout handler instance 55 55 * 56 * @since 1.0. 756 * @since 1.0.8 57 57 * @access protected 58 58 * @var EuroparcelCheckout $checkout_handler Handles checkout functionality … … 66 66 * and defines WooCommerce hooks for checkout functionality. 67 67 * 68 * @since 1.0. 768 * @since 1.0.8 69 69 */ 70 70 public function __construct() { … … 72 72 $this->version = EUROPARCELCOM_WC_VERSION; 73 73 } else { 74 $this->version = '1.0. 7';74 $this->version = '1.0.8'; 75 75 } 76 76 $this->plugin_name = 'europarcel-com'; … … 86 86 * managing checkout functionality and locker selection. 87 87 * 88 * @since 1.0. 788 * @since 1.0.8 89 89 */ 90 90 private function load_dependencies() { … … 99 99 * WordPress hooks for AJAX functionality and checkout integration. 100 100 * 101 * @since 1.0. 7101 * @since 1.0.8 102 102 */ 103 103 private function define_woocommerce_hooks() { … … 123 123 * so this method is available for future use if needed. 124 124 * 125 * @since 1.0. 7125 * @since 1.0.8 126 126 */ 127 127 public function run() { … … 132 132 * Get the plugin name 133 133 * 134 * @since 1.0. 7134 * @since 1.0.8 135 135 * @return string The plugin name 136 136 */ … … 142 142 * Get the plugin version 143 143 * 144 * @since 1.0. 7144 * @since 1.0.8 145 145 * @return string The plugin version number 146 146 */ -
europarcel-com/tags/1.0.8/includes/class-europarcel-request-data.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 29 29 * based on WooCommerce shipping instance configuration. 30 30 * 31 * @since 1.0. 731 * @since 1.0.8 32 32 * @package Europarcel 33 33 * @subpackage Europarcel/includes … … 39 39 * The WooCommerce shipping instance ID 40 40 * 41 * @since 1.0. 741 * @since 1.0.8 42 42 * @access private 43 43 * @var int $instance_id WooCommerce shipping method instance ID … … 51 51 * including carrier info, addresses, content details, and extra options. 52 52 * 53 * @since 1.0. 753 * @since 1.0.8 54 54 * @access private 55 55 * @var array $request_data Complete shipping request data … … 117 117 * parcel specifications. 118 118 * 119 * @since 1.0. 7119 * @since 1.0.8 120 120 * @param int $instance_id WooCommerce shipping method instance ID 121 121 * @param bool $allow_locker Whether to allow locker delivery services … … 176 176 * Set the carrier ID for the shipping request 177 177 * 178 * @since 1.0. 7178 * @since 1.0.8 179 179 * @param int $carrier_id The carrier ID from EuroParcel 180 180 */ … … 186 186 * Set the service ID for the shipping request 187 187 * 188 * @since 1.0. 7188 * @since 1.0.8 189 189 * @param int $service_id The service ID (1=standard, 2=locker) 190 190 */ … … 196 196 * Set the delivery address for the shipping request 197 197 * 198 * @since 1.0. 7198 * @since 1.0.8 199 199 * @param array $delivery_address Complete delivery address data 200 200 */ … … 208 208 * Returns the prepared shipping request data ready for EuroParcel API calls. 209 209 * 210 * @since 1.0. 7210 * @since 1.0.8 211 211 * @return array Complete shipping request data 212 212 */ -
europarcel-com/tags/1.0.8/includes/class-europarcel-shipping.php
r3441645 r3478259 13 13 * 14 14 * @link https://eawb.ro 15 * @since 1.0. 715 * @since 1.0.8 16 16 * 17 17 * @package Europarcel … … 29 29 * and both standard and locker delivery options. 30 30 * 31 * @since 1.0. 731 * @since 1.0.8 32 32 * @package Europarcel 33 33 * @subpackage Europarcel/includes … … 42 42 * instance ID, method title, description, and supported features. 43 43 * 44 * @since 1.0. 744 * @since 1.0.8 45 45 * @param int $instance_id WooCommerce shipping zone instance ID 46 46 */ … … 67 67 * and initializes the admin form fields. 68 68 * 69 * @since 1.0. 769 * @since 1.0.8 70 70 */ 71 71 public function init() { … … 87 87 * Dynamically loads customer information when API key is provided. 88 88 * 89 * @since 1.0. 789 * @since 1.0.8 90 90 */ 91 91 public function init_form_fields() { … … 221 221 'description' => __('Set the fixed shipping cost for address deliveries', 'europarcel-com'), 222 222 'desc_tip' => false, 223 'custom_attributes' => array('step' => '0.01'), 223 224 ), 224 225 'free_shipping_amount_to_home' => array( … … 228 229 'description' => __('Minimum order amount required to qualify for free home delivery (leave empty for no free shipping)', 'europarcel-com'), 229 230 'desc_tip' => false, 231 'custom_attributes' => array('step' => '0.01'), 230 232 ), 231 233 'free_shipping_classes_to_home' => array( … … 258 260 'description' => __('Set the fixed shipping cost for locker deliveries', 'europarcel-com'), 259 261 'desc_tip' => false, 262 'custom_attributes' => array('step' => '0.01'), 260 263 ), 261 264 'free_shipping_amount_to_locker' => array( … … 265 268 'description' => __('Minimum order amount required to qualify for free locker delivery (leave empty for no free shipping)', 'europarcel-com'), 266 269 'desc_tip' => false, 270 'custom_attributes' => array('step' => '0.01'), 267 271 ), 268 272 'free_shipping_classes_to_locker' => array( … … 295 299 * Validates nonce for security and processes each form field. 296 300 * 297 * @since 1.0. 7301 * @since 1.0.8 298 302 * @return bool True if options were saved successfully, false otherwise 299 303 */ … … 335 339 * Creates shipping rates for both standard and locker delivery options. 336 340 * 337 * @since 1.0. 7341 * @since 1.0.8 338 342 * @param array $package WooCommerce package data with contents and destination 339 343 */ -
europarcel-com/tags/1.0.8/languages/europarcel-com-ro_RO.po
r3441645 r3478259 4 4 msgid "" 5 5 msgstr "" 6 "Project-Id-Version: EuroParcel Integration for WooCommerce 1.0. 7\n"6 "Project-Id-Version: EuroParcel Integration for WooCommerce 1.0.8\n" 7 7 "Report-Msgid-Bugs-To: cs@europarcel.com\n" 8 8 "POT-Creation-Date: 2026-01-17 19:00+0200\n" -
europarcel-com/tags/1.0.8/uninstall.php
r3408287 r3478259 10 10 * 11 11 * @link https://eawb.ro 12 * @since 1.0. 612 * @since 1.0.8 13 13 * 14 14 * @package Europarcel -
europarcel-com/trunk/README.txt
r3441645 r3478259 5 5 Tested up to: 6.9 6 6 Requires PHP: 7.4 7 Stable tag: 1.0. 77 Stable tag: 1.0.8 8 8 License: GPL-2.0+ 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.txt … … 77 77 == Changelog == 78 78 79 = 1.0.8 = 80 * Fixed: Price fields now accept decimal values (e.g., 15.99) instead of integers only 81 79 82 = 1.0.7 = 80 83 * Performance fix: Eliminated unnecessary API requests on cart and checkout pages … … 104 107 == Upgrade Notice == 105 108 109 = 1.0.8 = 110 Bug fix: Price fields now accept decimal values. 111 106 112 = 1.0.7 = 107 113 Performance fix: Eliminated unnecessary API requests on cart and checkout pages. -
europarcel-com/trunk/assets/css/europarcel-admin.css
r3441645 r3478259 6 6 * 7 7 * @package Europarcel 8 * @since 1.0. 78 * @since 1.0.8 9 9 */ 10 10 -
europarcel-com/trunk/assets/js/europarcel-admin.js
r3441645 r3478259 6 6 * 7 7 * @package Europarcel 8 * @since 1.0. 78 * @since 1.0.8 9 9 */ 10 10 -
europarcel-com/trunk/assets/js/europarcel-locker-selector.js
r3441645 r3478259 7 7 * 8 8 * @package Europarcel 9 * @since 1.0. 79 * @since 1.0.8 10 10 */ 11 11 -
europarcel-com/trunk/assets/js/europarcel-modal.js
r3441645 r3478259 7 7 * @package Europarcel 8 8 * @subpackage Assets/JavaScript 9 * @since 1.0. 79 * @since 1.0.8 10 10 */ 11 11 … … 16 16 * EuroParcel Modal object 17 17 * 18 * @since 1.0. 718 * @since 1.0.8 19 19 */ 20 20 window.EuroparcelModal = { … … 26 26 * Handles both desktop and mobile responsive display. 27 27 * 28 * @since 1.0. 728 * @since 1.0.8 29 29 * @param {string} iframeUrl - The URL to load in the iframe 30 30 */ … … 92 92 * Configures click handlers, escape key handler, and other modal interactions. 93 93 * 94 * @since 1.0. 794 * @since 1.0.8 95 95 * @param {HTMLElement} modal - The modal element 96 96 * @param {boolean} isMobile - Whether the device is mobile … … 141 141 * Cleans up event listeners to prevent memory leaks. 142 142 * 143 * @since 1.0. 7143 * @since 1.0.8 144 144 */ 145 145 close: function() { -
europarcel-com/trunk/europarcel-com.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * @package Europarcel 13 13 * … … 15 15 * Plugin Name: EuroParcel Integration for WooCommerce 16 16 * Description: Connect your WooCommerce store with eAWB shipping platform 17 * Version: 1.0. 717 * Version: 1.0.8 18 18 * Author: EuroParcel 19 19 * Author URI: https://eawb.ro/ … … 31 31 } 32 32 33 define('EUROPARCELCOM_WC_VERSION', '1.0. 7');33 define('EUROPARCELCOM_WC_VERSION', '1.0.8'); 34 34 35 35 /** … … 65 65 * Declare compatibility with WooCommerce High-Performance Order Storage (HPOS) 66 66 * 67 * @since 1.0. 767 * @since 1.0.8 68 68 */ 69 69 add_action('before_woocommerce_init', function() { … … 76 76 * Initialize the shipping method 77 77 * 78 * @since 1.0. 778 * @since 1.0.8 79 79 */ 80 80 add_action('woocommerce_shipping_init', 'europarcelcom_wc_shipping_init'); … … 83 83 * Load the shipping method class 84 84 * 85 * @since 1.0. 785 * @since 1.0.8 86 86 */ 87 87 function europarcelcom_wc_shipping_init() { … … 95 95 * Register the shipping method with WooCommerce 96 96 * 97 * @since 1.0. 797 * @since 1.0.8 98 98 * @param array $methods Existing shipping methods 99 99 * @return array Updated shipping methods … … 107 107 * Enqueue admin styles and scripts 108 108 * 109 * @since 1.0. 7109 * @since 1.0.8 110 110 */ 111 111 add_action('admin_enqueue_scripts', function () { 112 112 $current_screen = get_current_screen(); 113 113 if (is_admin() && $current_screen && strpos($current_screen->id, 'woocommerce_page_wc-settings') !== false) { 114 wp_enqueue_style('europarcel-admin', plugins_url('assets/css/europarcel-admin.css', __FILE__), array(), '1.0. 7');115 wp_enqueue_script('europarcel-admin', plugins_url('assets/js/europarcel-admin.js', __FILE__), array('jquery', 'select2'), '1.0. 7', true);114 wp_enqueue_style('europarcel-admin', plugins_url('assets/css/europarcel-admin.css', __FILE__), array(), '1.0.8'); 115 wp_enqueue_script('europarcel-admin', plugins_url('assets/js/europarcel-admin.js', __FILE__), array('jquery', 'select2'), '1.0.8', true); 116 116 } 117 117 }); … … 120 120 * Initialize the main plugin class 121 121 * 122 * @since 1.0. 7122 * @since 1.0.8 123 123 */ 124 124 function europarcelcom_wc_plugin_run() { … … 133 133 * Add plugin row meta links (Documentation, Video Tutorial) 134 134 * 135 * @since 1.0. 7135 * @since 1.0.8 136 136 * @param array $links Existing meta links 137 137 * @param string $file Plugin file path -
europarcel-com/trunk/includes/class-europarcel-activator.php
r3441645 r3478259 9 9 * 10 10 * @link https://europarcel.com 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 20 20 * This class defines all code necessary to run during the plugin's activation. 21 21 * 22 * @since 1.0. 722 * @since 1.0.8 23 23 * @package Europarcel 24 24 * @subpackage Europarcel/includes … … 32 32 * Handles any setup tasks required when the plugin is activated. 33 33 * 34 * @since 1.0. 734 * @since 1.0.8 35 35 */ 36 36 public static function activate() { 37 37 // Store plugin version 38 38 if (!get_option('EUROPARCELCOM_WC_VERSION')) { 39 add_option('EUROPARCELCOM_WC_VERSION', '1.0. 7');39 add_option('EUROPARCELCOM_WC_VERSION', '1.0.8'); 40 40 } 41 41 -
europarcel-com/trunk/includes/class-europarcel-checkout.php
r3441645 r3478259 13 13 * 14 14 * @link https://eawb.ro 15 * @since 1.0. 715 * @since 1.0.8 16 16 * 17 17 * @package Europarcel … … 28 28 * for locker selection and shipping updates. 29 29 * 30 * @since 1.0. 730 * @since 1.0.8 31 31 * @package Europarcel 32 32 * @subpackage Europarcel/includes … … 38 38 * Whether the current checkout is blocks-based 39 39 * 40 * @since 1.0. 740 * @since 1.0.8 41 41 * @access private 42 42 * @var bool $is_blocks_checkout True if blocks checkout detected … … 50 50 * via smart_init method to detect checkout type first. 51 51 * 52 * @since 1.0. 752 * @since 1.0.8 53 53 */ 54 54 public function __construct() { … … 62 62 * or Blocks-based and initializes the appropriate functionality. 63 63 * 64 * @since 1.0. 764 * @since 1.0.8 65 65 */ 66 66 public function smart_init() { … … 83 83 * Enqueues scripts and localizes data for WooCommerce Blocks checkout. 84 84 * 85 * @since 1.0. 785 * @since 1.0.8 86 86 */ 87 87 private function init_blocks_checkout() { … … 96 96 * Enqueues scripts and localizes data for WooCommerce Classic checkout. 97 97 * 98 * @since 1.0. 798 * @since 1.0.8 99 99 */ 100 100 private function init_classic_checkout() { … … 110 110 * and checkout type information for JavaScript usage. 111 111 * 112 * @since 1.0. 7112 * @since 1.0.8 113 113 */ 114 114 private function localize_script_data() { … … 191 191 * Validates nonce and returns carrier data via JSON response. 192 192 * 193 * @since 1.0. 7193 * @since 1.0.8 194 194 */ 195 195 public function wp_ajax_europarcelcomwc_get_locker_carriers() { … … 221 221 * Validates nonce and sanitizes all input data. 222 222 * 223 * @since 1.0. 7223 * @since 1.0.8 224 224 */ 225 225 public function wp_ajax_europarcelcomwc_update_locker_shipping() { … … 276 276 * the locker selection button in classic checkout when applicable. 277 277 * 278 * @since 1.0. 7278 * @since 1.0.8 279 279 */ 280 280 public function classic_checkout_button() { -
europarcel-com/trunk/includes/class-europarcel-constants.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 27 27 * shipping services for both admin configuration and API requests. 28 28 * 29 * @since 1.0. 729 * @since 1.0.8 30 30 * @package Europarcel 31 31 * @subpackage Europarcel/includes … … 41 41 * All strings are internationalized for translation support. 42 42 * 43 * @since 1.0. 743 * @since 1.0.8 44 44 * @return array Array of service keys and their translated display names 45 45 */ … … 69 69 * - 2: Locker delivery (home to locker) 70 70 * 71 * @since 1.0. 771 * @since 1.0.8 72 72 * @param array|string $services Array of service keys to convert (or string for backward compatibility) 73 73 * @return array Array of carrier configuration arrays -
europarcel-com/trunk/includes/class-europarcel-customer.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 31 31 * and carrier service availability. 32 32 * 33 * @since 1.0. 733 * @since 1.0.8 34 34 * @package Europarcel 35 35 * @subpackage Europarcel/includes … … 41 41 * The WooCommerce shipping instance ID 42 42 * 43 * @since 1.0. 743 * @since 1.0.8 44 44 * @access private 45 45 * @var int $instance_id WooCommerce shipping method instance ID … … 50 50 * The shipping method settings 51 51 * 52 * @since 1.0. 752 * @since 1.0.8 53 53 * @access public 54 54 * @var array $settings WooCommerce shipping method settings … … 62 62 * configuration and loads the associated settings. 63 63 * 64 * @since 1.0. 764 * @since 1.0.8 65 65 * @param int $instance_id WooCommerce shipping method instance ID 66 66 */ … … 76 76 * the EuroParcel API including name, contact details, and account status. 77 77 * 78 * @since 1.0. 778 * @since 1.0.8 79 79 * @return array|null Customer account data or null on failure 80 80 */ … … 100 100 * EuroParcel account for use in shipping calculations. 101 101 * 102 * @since 1.0. 7102 * @since 1.0.8 103 103 * @return array Array of billing addresses with ID as key and formatted address as value 104 104 */ … … 138 138 * EuroParcel account for use as pickup locations. 139 139 * 140 * @since 1.0. 7140 * @since 1.0.8 141 141 * @return array Array of pickup addresses with ID as key and formatted address as value 142 142 */ … … 177 177 * and destination address. 178 178 * 179 * @since 1.0. 7179 * @since 1.0.8 180 180 * @param array $package WooCommerce package data with destination details 181 181 * @param bool $allow_locker Whether to include locker delivery options … … 262 262 * Used with usort() to arrange services from lowest to highest cost. 263 263 * 264 * @since 1.0. 7264 * @since 1.0.8 265 265 * @param array $first_service First service for comparison 266 266 * @param array $second_service Second service for comparison … … 280 280 * based on the configured available services. 281 281 * 282 * @since 1.0. 7282 * @since 1.0.8 283 283 * @return array Array of carrier IDs that support locker delivery 284 284 */ … … 316 316 * based on the configured available services. 317 317 * 318 * @since 1.0. 7318 * @since 1.0.8 319 319 * @return array|false Array of carrier IDs that support standard delivery or false if none available 320 320 */ -
europarcel-com/trunk/includes/class-europarcel-deactivator.php
r3441645 r3478259 9 9 * 10 10 * @link https://europarcel.com 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 20 20 * This class defines all code necessary to run during the plugin's deactivation. 21 21 * 22 * @since 1.0. 722 * @since 1.0.8 23 23 * @package Europarcel 24 24 * @subpackage Europarcel/includes … … 32 32 * Handles any cleanup tasks required when the plugin is deactivated. 33 33 * 34 * @since 1.0. 734 * @since 1.0.8 35 35 */ 36 36 public static function deactivate() { -
europarcel-com/trunk/includes/class-europarcel-http-request.php
r3441645 r3478259 8 8 * 9 9 * @link https://eawb.ro 10 * @since 1.0. 710 * @since 1.0.8 11 11 * 12 12 * @package Europarcel … … 26 26 * for both GET and POST requests with proper error handling. 27 27 * 28 * @since 1.0. 728 * @since 1.0.8 29 29 * @package Europarcel 30 30 * @subpackage Europarcel/includes … … 36 36 * The shipping method instance ID 37 37 * 38 * @since 1.0. 738 * @since 1.0.8 39 39 * @access private 40 40 * @var int $instance_id WooCommerce shipping method instance ID … … 48 48 * shipping method settings and API key. 49 49 * 50 * @since 1.0. 750 * @since 1.0.8 51 51 * @param int $instance_id WooCommerce shipping method instance ID 52 52 */ … … 60 60 * query parameters and handles the response. 61 61 * 62 * @since 1.0. 762 * @since 1.0.8 63 63 * @param string $function API endpoint function name 64 64 * @param array $data Optional query parameters … … 89 89 * the provided data and handles the response. 90 90 * 91 * @since 1.0. 791 * @since 1.0.8 92 92 * @param string $function API endpoint function name 93 93 * @param array $data POST data to send … … 115 115 * Throws exceptions for various error conditions. 116 116 * 117 * @since 1.0. 7117 * @since 1.0.8 118 118 * @param array|WP_Error $response WordPress HTTP API response 119 119 * @return array Decoded JSON response … … 155 155 * the headers required for EuroParcel API authentication. 156 156 * 157 * @since 1.0. 7157 * @since 1.0.8 158 158 * @return array HTTP headers array with API key 159 159 */ -
europarcel-com/trunk/includes/class-europarcel-main.php
r3441645 r3478259 13 13 * 14 14 * @link https://eawb.ro 15 * @since 1.0. 715 * @since 1.0.8 16 16 * 17 17 * @package Europarcel … … 26 26 * both classic and blocks checkout types. 27 27 * 28 * @since 1.0. 728 * @since 1.0.8 29 29 * @package Europarcel 30 30 * @subpackage Europarcel/includes … … 36 36 * The plugin name 37 37 * 38 * @since 1.0. 738 * @since 1.0.8 39 39 * @access protected 40 40 * @var string $plugin_name The plugin identifier name … … 45 45 * The plugin version 46 46 * 47 * @since 1.0. 747 * @since 1.0.8 48 48 * @access protected 49 49 * @var string $version The current plugin version … … 54 54 * The checkout handler instance 55 55 * 56 * @since 1.0. 756 * @since 1.0.8 57 57 * @access protected 58 58 * @var EuroparcelCheckout $checkout_handler Handles checkout functionality … … 66 66 * and defines WooCommerce hooks for checkout functionality. 67 67 * 68 * @since 1.0. 768 * @since 1.0.8 69 69 */ 70 70 public function __construct() { … … 72 72 $this->version = EUROPARCELCOM_WC_VERSION; 73 73 } else { 74 $this->version = '1.0. 7';74 $this->version = '1.0.8'; 75 75 } 76 76 $this->plugin_name = 'europarcel-com'; … … 86 86 * managing checkout functionality and locker selection. 87 87 * 88 * @since 1.0. 788 * @since 1.0.8 89 89 */ 90 90 private function load_dependencies() { … … 99 99 * WordPress hooks for AJAX functionality and checkout integration. 100 100 * 101 * @since 1.0. 7101 * @since 1.0.8 102 102 */ 103 103 private function define_woocommerce_hooks() { … … 123 123 * so this method is available for future use if needed. 124 124 * 125 * @since 1.0. 7125 * @since 1.0.8 126 126 */ 127 127 public function run() { … … 132 132 * Get the plugin name 133 133 * 134 * @since 1.0. 7134 * @since 1.0.8 135 135 * @return string The plugin name 136 136 */ … … 142 142 * Get the plugin version 143 143 * 144 * @since 1.0. 7144 * @since 1.0.8 145 145 * @return string The plugin version number 146 146 */ -
europarcel-com/trunk/includes/class-europarcel-request-data.php
r3441645 r3478259 9 9 * 10 10 * @link https://eawb.ro 11 * @since 1.0. 711 * @since 1.0.8 12 12 * 13 13 * @package Europarcel … … 29 29 * based on WooCommerce shipping instance configuration. 30 30 * 31 * @since 1.0. 731 * @since 1.0.8 32 32 * @package Europarcel 33 33 * @subpackage Europarcel/includes … … 39 39 * The WooCommerce shipping instance ID 40 40 * 41 * @since 1.0. 741 * @since 1.0.8 42 42 * @access private 43 43 * @var int $instance_id WooCommerce shipping method instance ID … … 51 51 * including carrier info, addresses, content details, and extra options. 52 52 * 53 * @since 1.0. 753 * @since 1.0.8 54 54 * @access private 55 55 * @var array $request_data Complete shipping request data … … 117 117 * parcel specifications. 118 118 * 119 * @since 1.0. 7119 * @since 1.0.8 120 120 * @param int $instance_id WooCommerce shipping method instance ID 121 121 * @param bool $allow_locker Whether to allow locker delivery services … … 176 176 * Set the carrier ID for the shipping request 177 177 * 178 * @since 1.0. 7178 * @since 1.0.8 179 179 * @param int $carrier_id The carrier ID from EuroParcel 180 180 */ … … 186 186 * Set the service ID for the shipping request 187 187 * 188 * @since 1.0. 7188 * @since 1.0.8 189 189 * @param int $service_id The service ID (1=standard, 2=locker) 190 190 */ … … 196 196 * Set the delivery address for the shipping request 197 197 * 198 * @since 1.0. 7198 * @since 1.0.8 199 199 * @param array $delivery_address Complete delivery address data 200 200 */ … … 208 208 * Returns the prepared shipping request data ready for EuroParcel API calls. 209 209 * 210 * @since 1.0. 7210 * @since 1.0.8 211 211 * @return array Complete shipping request data 212 212 */ -
europarcel-com/trunk/includes/class-europarcel-shipping.php
r3441645 r3478259 13 13 * 14 14 * @link https://eawb.ro 15 * @since 1.0. 715 * @since 1.0.8 16 16 * 17 17 * @package Europarcel … … 29 29 * and both standard and locker delivery options. 30 30 * 31 * @since 1.0. 731 * @since 1.0.8 32 32 * @package Europarcel 33 33 * @subpackage Europarcel/includes … … 42 42 * instance ID, method title, description, and supported features. 43 43 * 44 * @since 1.0. 744 * @since 1.0.8 45 45 * @param int $instance_id WooCommerce shipping zone instance ID 46 46 */ … … 67 67 * and initializes the admin form fields. 68 68 * 69 * @since 1.0. 769 * @since 1.0.8 70 70 */ 71 71 public function init() { … … 87 87 * Dynamically loads customer information when API key is provided. 88 88 * 89 * @since 1.0. 789 * @since 1.0.8 90 90 */ 91 91 public function init_form_fields() { … … 221 221 'description' => __('Set the fixed shipping cost for address deliveries', 'europarcel-com'), 222 222 'desc_tip' => false, 223 'custom_attributes' => array('step' => '0.01'), 223 224 ), 224 225 'free_shipping_amount_to_home' => array( … … 228 229 'description' => __('Minimum order amount required to qualify for free home delivery (leave empty for no free shipping)', 'europarcel-com'), 229 230 'desc_tip' => false, 231 'custom_attributes' => array('step' => '0.01'), 230 232 ), 231 233 'free_shipping_classes_to_home' => array( … … 258 260 'description' => __('Set the fixed shipping cost for locker deliveries', 'europarcel-com'), 259 261 'desc_tip' => false, 262 'custom_attributes' => array('step' => '0.01'), 260 263 ), 261 264 'free_shipping_amount_to_locker' => array( … … 265 268 'description' => __('Minimum order amount required to qualify for free locker delivery (leave empty for no free shipping)', 'europarcel-com'), 266 269 'desc_tip' => false, 270 'custom_attributes' => array('step' => '0.01'), 267 271 ), 268 272 'free_shipping_classes_to_locker' => array( … … 295 299 * Validates nonce for security and processes each form field. 296 300 * 297 * @since 1.0. 7301 * @since 1.0.8 298 302 * @return bool True if options were saved successfully, false otherwise 299 303 */ … … 335 339 * Creates shipping rates for both standard and locker delivery options. 336 340 * 337 * @since 1.0. 7341 * @since 1.0.8 338 342 * @param array $package WooCommerce package data with contents and destination 339 343 */ -
europarcel-com/trunk/languages/europarcel-com-ro_RO.po
r3441645 r3478259 4 4 msgid "" 5 5 msgstr "" 6 "Project-Id-Version: EuroParcel Integration for WooCommerce 1.0. 7\n"6 "Project-Id-Version: EuroParcel Integration for WooCommerce 1.0.8\n" 7 7 "Report-Msgid-Bugs-To: cs@europarcel.com\n" 8 8 "POT-Creation-Date: 2026-01-17 19:00+0200\n" -
europarcel-com/trunk/uninstall.php
r3408287 r3478259 10 10 * 11 11 * @link https://eawb.ro 12 * @since 1.0. 612 * @since 1.0.8 13 13 * 14 14 * @package Europarcel
Note: See TracChangeset
for help on using the changeset viewer.