File "class-wc-shortcode-order-tracking.php"

Full path: /home/kosmetik/public_html/wp-content/plugins/woocommerce/includes/shortcodes/class-wc-shortcode-order-tracking.php
File size: 1.83 B
MIME-type: text/x-php
Charset: utf-8

Download   Open   Edit   Advanced Editor   Back

<?php

defined('ABSPATH') || exit;
class WC_Shortcode_Order_Tracking
{
    public static function get($atts)
    {
        return WC_Shortcodes::shortcode_wrapper(array(__CLASS__, 'output'), $atts);
    }
    public static function output($atts)
    {
        if (is_null(WC()->cart)) {
            return;
        }
        $atts = shortcode_atts(array(), $atts, 'woocommerce_order_tracking');
        $nonce_value = wc_get_var($_REQUEST['woocommerce-order-tracking-nonce'], wc_get_var($_REQUEST['_wpnonce'], ''));
        if (isset($_REQUEST['orderid']) && wp_verify_nonce($nonce_value, 'woocommerce-order_tracking')) {
            $order_id = empty($_REQUEST['orderid']) ? 0 : ltrim(wc_clean(wp_unslash($_REQUEST['orderid'])), '#');
            $order_email = empty($_REQUEST['order_email']) ? '' : sanitize_email(wp_unslash($_REQUEST['order_email']));
            if (!$order_id) {
                wc_print_notice(__('Please enter a valid order ID', 'woocommerce'), 'error');
            } elseif (!$order_email) {
                wc_print_notice(__('Please enter a valid email address', 'woocommerce'), 'error');
            } else {
                $order = wc_get_order(apply_filters('woocommerce_shortcode_order_tracking_order_id', $order_id));
                if ($order && $order->get_id() && strtolower($order->get_billing_email()) === strtolower($order_email)) {
                    do_action('woocommerce_track_order', $order->get_id());
                    wc_get_template('order/tracking.php', array('order' => $order));
                    return;
                } else {
                    wc_print_notice(__('Sorry, the order could not be found. Please contact us if you are having difficulty finding your order details.', 'woocommerce'), 'error');
                }
            }
        }
        wc_get_template('order/form-tracking.php');
    }
}