Plugin Directory

Changeset 3306770


Ignore:
Timestamp:
06/04/2025 11:44:33 PM (10 months ago)
Author:
baselinker
Message:

updated trunk baselinker.php header

Location:
baselinker-woo/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • baselinker-woo/trunk/baselinker.php

    r3191130 r3306770  
    11<?php
    22/**
    3  * @package BaseLinker
    4  * @version 1.0.25
     3 * @package Base
     4 * @version 1.0.26
    55 */
    66/*
    7 Plugin Name: BaseLinker-Woo
    8 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.
    107Text Domain:  baselinker-woo
    118Domain Path: /languages
    12 Author: BaseLinker
    13 Version: 1.0.25
    14 Author URI: http://baselinker.com/
    15 License: GPLv3 or later
     9Author: Base
     10Version: 1.0.26
    1611*/
    1712
     
    2318function baselinker_version($data)
    2419{
    25     return '1.0.25';
     20    return '1.0.26';
    2621}
    2722
     
    5146
    5247    // 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
    7389
    7490    $q = array('post_parent' => $post->get_id(), 'post_type' => 'shipment');
     
    196212    {
    197213        $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'];
    198229    }
    199230
    200231    if (isset($data['offset']))
    201232    {
    202         $page = ceil(($data['offset']+1)/100);
     233        $page = ceil(((int)$data['offset']+1)/$args['limit']);
    203234        unset($data['offset']);
    204235    }
    205236
    206     if (isset($data['lang']))
     237    if (isset($data['lang']) and preg_match('/^\w+/', $data['lang']))
    207238    {
    208239        $args['lang'] = $data['lang'];
    209240    }
    210241
    211     if (isset($data['exclude']))
     242    if (isset($data['exclude']) and preg_match('/^\d[\d,]*$/', $args['exclude']))
    212243    {
    213244        $args['exclude'] = $data['exclude'];
    214245    }
    215246
    216     if (isset($data['include']))
     247    if (isset($data['include']) and preg_match('/^\d[\d,]*$/', $args['include']))
    217248    {
    218249        $args['include'] = $data['include'];
    219250    }
    220251
    221     if (isset($data['type']))
     252    if (isset($data['type']) and in_array($args['type'], ['external', 'grouped', 'simple', 'variable']))
    222253    {
    223254        $args['type'] = $data['type'];
     
    226257    if (isset($data['parent']))
    227258    {
    228         $args['parent'] = $data['parent'];
     259        $args['parent'] = (int)$data['parent'];
    229260    }
    230261
    231262    if (isset($data['status']))
    232263    {
    233         $args['status'] = $data['status'];
     264        $args['status'] = preg_replace('/[^\w\s]/', '', $data['status']);
    234265    }
    235266
     
    357388                        while ($variations_subset = array_splice($variation_ids, 0, 100))
    358389                        {
    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']));
    360391
    361392                            foreach ($prod_variations as $vid => $v)
  • baselinker-woo/trunk/readme.txt

    r3207805 r3306770  
    22Plugin Name: Base (formerly BaseLinker) - 300+ marketplaces, 150+ carriers & PIM & OMS & WMS in one
    33Contributors: baselinker
    4 Stable tag: 1.0.25
    5 Tested up to: 6.6.2
     4Stable tag: 1.0.26
     5Tested up to: 6.8.1
    66Requires at least: 4.5.0
    77Requires Plugins: woocommerce
Note: See TracChangeset for help on using the changeset viewer.