Plugin Directory

Changeset 1887530


Ignore:
Timestamp:
06/05/2018 01:29:43 PM (8 years ago)
Author:
apeschar
Message:

Update plugin

Location:
webwinkelkeur/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • webwinkelkeur/trunk/common/woocommerce.php

    r1815758 r1887530  
    6868        $with_order_data = !get_option($this->get_option_name('limit_order_data')) && is_callable([$order, 'get_data']);
    6969        if ($with_order_data) {
    70             $order_arr = $order->get_data();
    71             $customer_arr = $order_arr['customer_id'] ? (new WC_Customer($order_arr['customer_id']))->get_data() : [];
     70            $order_arr = $this->get_data($order, []);
     71            $customer_arr = !empty($order_arr['customer_id']) ? $this->get_data(new WC_Customer($order_arr['customer_id']), []) : [];
    7272            $pf = new WC_Product_Factory();
     73            $products = [];
    7374            foreach ($order_arr['line_items'] as $line_item) {
    7475                $product = $pf->get_product($line_item['product_id']);
     
    7677                    continue;
    7778                }
    78                 $product_arr = $product->get_data();
     79                $product_arr = $this->get_data($product, []);
    7980                $images = get_attached_media('image', $product->get_id());
    8081                foreach ($images as $image) {
    8182                    $product_arr['product_image'][] = wp_get_attachment_image_src($image->ID, 'full')[0];
    8283                }
     84                $products[] = $product_arr;
    8385            }
    8486            $order_data = [
    8587                'order' => $order_arr,
    8688                'customer' => $customer_arr,
    87                 'products' => $product_arr,
     89                'products' => $products,
    8890                'invoice_address' => $invoice_address,
    8991                'delivery_address' => $delivery_address,
     
    142144        }
    143145        if (is_callable([$value, 'get_data'])) {
    144             return $this->filter_data(@$value->get_data());
     146            return $this->get_data($value);
    145147        }
    146148        if (is_callable([$value, '__toString'])) {
     
    152154        return $value;
    153155    }
     156
     157    private function get_data($value, $default = null) {
     158        if (!is_callable([$value, 'get_data']) || !is_object($value)) {
     159            return $default;
     160        }
     161        $method = new ReflectionMethod($value, 'get_data');
     162        if ($method->getNumberOfRequiredParameters() > 0) {
     163            return $default;
     164        }
     165        return @$value->get_data();
     166    }
    154167}
  • webwinkelkeur/trunk/readme.txt

    r1857959 r1887530  
    2828
    2929== Changelog ==
     30
     31= 1.6.7 =
     32* Check required parameters before calling get_data().
    3033
    3134= 1.6.6 =
  • webwinkelkeur/trunk/webwinkelkeur.php

    r1857950 r1887530  
    44Plugin URI: https://www.webwinkelkeur.nl/webwinkel/mogelijkheden/wordpress-module/
    55Description: De WordPress plugin zorgt voor een eenvoudige integratie van het WebwinkelKeur binnen jouw webwinkel. Hiermee is het heel eenvoudig om de innovatieve <a href="https://www.webwinkelkeur.nl/webwinkel/mogelijkheden/sidebar/">WebwinkelKeur Sidebar</a> in jouw WordPress website of WooCommerce webwinkel te integreren. Wanneer je WooCommerce gebruikt, kunnen er bovendien automatisch uitnodigingen naar je klanten worden gestuurd.
    6 Version: v1.6.6
     6Version: v1.6.7
    77Author: Albert Peschar
    88Author URI: https://peschar.net/
Note: See TracChangeset for help on using the changeset viewer.