Changeset 3306770
- Timestamp:
- 06/04/2025 11:44:33 PM (10 months ago)
- Location:
- baselinker-woo/trunk
- Files:
-
- 2 edited
-
baselinker.php (modified) (6 diffs)
-
readme.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
baselinker-woo/trunk/baselinker.php
r3191130 r3306770 1 1 <?php 2 2 /** 3 * @package Base Linker4 * @version 1.0.2 53 * @package Base 4 * @version 1.0.26 5 5 */ 6 6 /* 7 Plugin Name: BaseLinker-Woo8 Plugin URI: https://developers.baselinker.com/shops_api/extensions/9 Description: This modules offers faster WooCommerce product synchronizations to BaseLinker, improved offer filtering and order searching. A must-have for any BaseLinker user.10 7 Text Domain: baselinker-woo 11 8 Domain Path: /languages 12 Author: BaseLinker 13 Version: 1.0.25 14 Author URI: http://baselinker.com/ 15 License: GPLv3 or later 9 Author: Base 10 Version: 1.0.26 16 11 */ 17 12 … … 23 18 function baselinker_version($data) 24 19 { 25 return '1.0.2 5';20 return '1.0.26'; 26 21 } 27 22 … … 51 46 52 47 // polkurier 53 if (!empty($response->data['shipping_lines'][0]['method_title']) 54 and preg_match('/orlen/i', $response->data['shipping_lines'][0]['method_title'])) 55 { 56 if ($result = $wpdb->get_row($wpdb->prepare("SELECT meta_value FROM `{$wpdb->prefix}postmeta` WHERE `post_id` = %s AND `meta_key` = '_polkurier_point_id'", (int)$post->get_id()))) 57 { 58 $response->data['bl_delivery_point_id'] = $result->meta_value; 59 $response->data['bl_delivery_point_name'] = $result->meta_value; 60 61 if ($result = $wpdb->get_row($wpdb->prepare("SELECT meta_value FROM `{$wpdb->prefix}postmeta` WHERE `post_id` = %s AND `meta_key` = '_polkurier_point_label'", (int)$post->get_id()))) 62 { 63 if (preg_match('/^(.+?)\r?\n(\d\d-\d{3}) (.+?)\r?\n(.+)/s', $result->meta_value, $m)) 64 { 65 $response->data['bl_delivery_point_address'] = $m[1]; 66 $response->data['bl_delivery_point_postcode'] = $m[2]; 67 $response->data['bl_delivery_point_city'] = $m[3]; 68 $response->data['bl_delivery_point_name'] = $m[4]; 69 } 70 } 71 } 72 } 48 if (!empty($response->data['shipping_lines'][0]['method_title'])) 49 { 50 if (preg_match('/orlen/i', $response->data['shipping_lines'][0]['method_title'])) 51 { 52 if ($result = $wpdb->get_row($wpdb->prepare("SELECT meta_value FROM `{$wpdb->prefix}postmeta` WHERE `post_id` = %s AND `meta_key` = '_polkurier_point_id'", (int)$post->get_id()))) 53 { 54 $response->data['bl_delivery_point_id'] = $result->meta_value; 55 $response->data['bl_delivery_point_name'] = $result->meta_value; 56 57 if ($result = $wpdb->get_row($wpdb->prepare("SELECT meta_value FROM `{$wpdb->prefix}postmeta` WHERE `post_id` = %s AND `meta_key` = '_polkurier_point_label'", (int)$post->get_id()))) 58 { 59 if (preg_match('/^(.+?)\r?\n(\d\d-\d{3}) (.+?)\r?\n(.+)/s', $result->meta_value, $m)) 60 { 61 $response->data['bl_delivery_point_address'] = $m[1]; 62 $response->data['bl_delivery_point_postcode'] = $m[2]; 63 $response->data['bl_delivery_point_city'] = $m[3]; 64 $response->data['bl_delivery_point_name'] = $m[4]; 65 } 66 } 67 } 68 } 69 70 // sameday 71 elseif (!empty($response->data['shipping_lines'][0]['method_title']) 72 and preg_match('/sameday point|easybox/i', $response->data['shipping_lines'][0]['method_title'])) 73 { 74 if ($result = $wpdb->get_row($wpdb->prepare("SELECT `meta_value` FROM `{$wpdb->prefix}postmeta` WHERE `post_id` = %s AND `meta_key` = '_sameday_shipping_locker_id'", (int)$post->get_id()))) 75 { 76 $result = json_decode($result->meta_value); 77 78 if ($result) 79 { 80 $response->data['bl_delivery_point_id'] = $result->lockerId; 81 $response->data['bl_delivery_point_name'] = $result->name; 82 $response->data['bl_delivery_point_city'] = $result->city; 83 $response->data['bl_delivery_point_postcode'] = $result->postalCode; 84 $response->data['bl_delivery_point_address'] = $result->address; 85 } 86 } 87 } 88 } // delivery point based on metadata from shipping_lines 73 89 74 90 $q = array('post_parent' => $post->get_id(), 'post_type' => 'shipment'); … … 196 212 { 197 213 $cutoff_limit = (int)$data['limit']; 214 215 if ($cutoff_limit < $args['limit']) 216 { 217 $args['limit'] = $cutoff_limit; 218 } 219 } 220 221 if (isset($data['order']) and preg_match('/^(asc|desc)$/i', $data['order'])) 222 { 223 $args['order'] = strtoupper($data['order']); 224 } 225 226 if (isset($data['orderby']) and preg_match('/^(ID|name|none|date|modified)$/', $data['orderby'])) 227 { 228 $args['orderby'] = $data['orderby']; 198 229 } 199 230 200 231 if (isset($data['offset'])) 201 232 { 202 $page = ceil(( $data['offset']+1)/100);233 $page = ceil(((int)$data['offset']+1)/$args['limit']); 203 234 unset($data['offset']); 204 235 } 205 236 206 if (isset($data['lang']) )237 if (isset($data['lang']) and preg_match('/^\w+/', $data['lang'])) 207 238 { 208 239 $args['lang'] = $data['lang']; 209 240 } 210 241 211 if (isset($data['exclude']) )242 if (isset($data['exclude']) and preg_match('/^\d[\d,]*$/', $args['exclude'])) 212 243 { 213 244 $args['exclude'] = $data['exclude']; 214 245 } 215 246 216 if (isset($data['include']) )247 if (isset($data['include']) and preg_match('/^\d[\d,]*$/', $args['include'])) 217 248 { 218 249 $args['include'] = $data['include']; 219 250 } 220 251 221 if (isset($data['type']) )252 if (isset($data['type']) and in_array($args['type'], ['external', 'grouped', 'simple', 'variable'])) 222 253 { 223 254 $args['type'] = $data['type']; … … 226 257 if (isset($data['parent'])) 227 258 { 228 $args['parent'] = $data['parent'];259 $args['parent'] = (int)$data['parent']; 229 260 } 230 261 231 262 if (isset($data['status'])) 232 263 { 233 $args['status'] = $data['status'];264 $args['status'] = preg_replace('/[^\w\s]/', '', $data['status']); 234 265 } 235 266 … … 357 388 while ($variations_subset = array_splice($variation_ids, 0, 100)) 358 389 { 359 $prod_variations = baselinker_product_list(array('include' => $variations_subset, 'type' => 'variation', 'limit' => 100));390 $prod_variations = baselinker_product_list(array('include' => $variations_subset, 'type' => 'variation', 'limit' => $args['limit'])); 360 391 361 392 foreach ($prod_variations as $vid => $v) -
baselinker-woo/trunk/readme.txt
r3207805 r3306770 2 2 Plugin Name: Base (formerly BaseLinker) - 300+ marketplaces, 150+ carriers & PIM & OMS & WMS in one 3 3 Contributors: baselinker 4 Stable tag: 1.0.2 55 Tested up to: 6. 6.24 Stable tag: 1.0.26 5 Tested up to: 6.8.1 6 6 Requires at least: 4.5.0 7 7 Requires Plugins: woocommerce
Note: See TracChangeset
for help on using the changeset viewer.