Plugin Directory

Changeset 3245801


Ignore:
Timestamp:
02/24/2025 02:07:26 PM (14 months ago)
Author:
voo2021
Message:

release 3.0.6

Location:
voo-shipping
Files:
37 added
4 edited

Legend:

Unmodified
Added
Removed
  • voo-shipping/trunk/includes/orders_page.php

    r3243323 r3245801  
    33
    44// Helper function to update order meta efficiently
    5 function update_order_meta($order, $tracking_status, $tracking_number, $payment_link, $cash_collection, $payment_status)
    6 {
     5function update_order_meta($order, $tracking_status, $tracking_number, $payment_link, $cash_collection, $payment_status,$awp_label)
     6{
     7
     8    $existing_label = get_post_meta($order, 'sideup_awp_label', true);
     9
     10    if ($existing_label != $awp_label) {
     11        update_post_meta($order, 'sideup_awp_label', $awp_label);
     12    }
     13
    714    if (get_post_meta($order, 'sideup_status', true) != $tracking_status) {
    815        update_post_meta($order, 'sideup_status', $tracking_status);
    916    }
     17
    1018
    1119    if (get_post_meta($order, 'sideup_tracking_number', true) != $tracking_number) {
     
    3644
    3745/** Call Side-up Integration  get Order Info**/
    38 function getWowCommerceData($keys,$orders) {
     46 function getWowCommerceData($keys,$orders) {
    3947
    4048    $result = send_keys_to_api(['keys' => $keys], 'getWooCommerceData');
    41 
    4249    if (!is_wp_error($result) && isset(json_decode($result['body'])->data)) {
    4350        $response_data = json_decode($result['body'])->data;
     
    5461                $cash_collection = $data->cash_collection ?? null;
    5562                $payment_status = $data->payment_status ?? null;
     63                $awp_label = ((!empty($data->awp_label) )? $data->awp_label : null);
    5664
    5765                if ($tracking_status && $tracking_status != 'cancelled') {
    58                     update_order_meta($order, $tracking_status, $tracking_number, $payment_link, $cash_collection, $payment_status);
     66                    update_order_meta($order, $tracking_status, $tracking_number, $payment_link, $cash_collection, $payment_status, $awp_label);
    5967                }
    6068                else {
     
    6371            }
    6472        }
     73        return $response_data;
    6574    }
    6675}
     
    8291        'limit'  => 15, // Change to desired per_page value
    8392    ]);
     93
    8494    if (empty($orders)) {
    8595        return;
     
    95105    // Prepare keys for the API request
    96106    $keys = array_map(function($order) {
    97     $post = get_post($order);
    98     $orderInfo = wc_get_order($order);
     107        $post = get_post($order);
     108        $orderInfo = wc_get_order($order);
    99109        return ($post->post_password ?: get_post_meta($order, '_order_key', true)) ?: $orderInfo->order_key;
    100110    }, $orders);
     
    104114    }
    105115
    106         $data=  getWowCommerceData($keys,$orders);
    107 
    108     if (!is_wp_error($data) && !is_bool(json_decode($data['body'])->data[0]->code)) {
    109         $response_data = json_decode($data['body']);
     116    $data=  getWowCommerceData($keys,$orders);
     117
    110118        foreach ($orders as $index => $order) {
    111             $tracking_number = $response_data->data[$index]->code;
    112             $tracking_status = $response_data->data[$index]->status;
    113             $payment_link = $response_data->data[$index]->payment_link;
    114             $cash_collection = $response_data->data[$index]->cash_collection;
    115             $payment_status = $response_data->data[$index]->payment_status;
     119            $tracking_number = $data[$index]->code;
     120            $tracking_status = $data[$index]->status;
     121            $payment_link = $data[$index]->payment_link;
     122            $cash_collection = $data[$index]->cash_collection;
     123            $payment_status = $data[$index]->payment_status;
     124            $awp_label = $data[$index]->awp_label;
     125            update_post_meta($order, 'sideup_awp_label', $awp_label);
     126
    116127            if ($tracking_status && $tracking_status != 'cancelled') {
    117128                update_post_meta($order, 'sideup_status', $tracking_status);
     
    126137            }
    127138        }
    128     } else {
    129         // Handle error
    130         $error_message = $data->get_error_message();
    131         wp_die($error_message);
    132     }
    133         add_filter("manage_{$screen->id}_columns", 'sideup_wco_add_columns');
    134         add_action("manage_{$screen->post_type}_posts_custom_column", 'sideup_wco_column_cb_data', 10, 2);
     139    add_filter("manage_{$screen->id}_columns", 'sideup_wco_add_columns');
     140    add_action("manage_{$screen->post_type}_posts_custom_column", 'sideup_wco_column_cb_data', 10, 2);
    135141}
    136142
     
    158164        "sideup_status" => __("SIDEUP Status", "themeprefix"),
    159165        "sideup_tracking_number" => __("SIDEUP Tracking Number", "themeprefix"),
     166        "sideup_awp_label" => __("SIDEUP Awp Label", "themeprefix"),
    160167        "order_date" => $order_date,
    161168        "shipping_request" => __("Ship With SIDEUP", "themeprefix"),
     
    212219    if ($colname == 'sideup_status') {
    213220        $sideup_status = get_post_meta($orderId, 'sideup_status', true);
    214         if (!empty($sideup_status)) {
     221        if (!empty($sideup_status) ) {
    215222            echo $sideup_status;
     223        } else {
     224            echo "---";
     225        }
     226    }
     227
     228
     229    if ($colname == 'sideup_awp_label') {
     230        $sideup_awp = get_post_meta($orderId, 'sideup_awp_label', true);
     231        if (!empty($sideup_awp)) {
     232            include (plugin_dir_path(__FILE__) . '../views/print_awp.php');
    216233        } else {
    217234            echo "---";
     
    247264    $orderKey = $orderInfo->order_key;
    248265    $data_key = ($key) ? $key : $orderKey;
     266
     267    $args = array('post__in' => [$orderId]);
     268    $order = wc_get_orders($args);
     269    $items = $order[0]->get_items();
     270    $desc = 'Products: ';
     271    foreach ($items as $item_id => $item_data) {
     272        $product = $item_data->get_product();
     273        $product_name = $product->get_name();
     274        $item_quantity = $item_data->get_quantity();
     275        $desc .= $product_name . " ( " . $item_quantity . " ) ";
     276    }
    249277    echo "<a href='#' class='cancel_order' 
    250278            data-order-key='" . esc_attr($data_key) . "'
    251279            bearerToken='" . esc_attr($bearerToken) . "'
     280         data-products=".$desc."
     281           
    252282            >
    253283                <span class='btn btn-danger cancel-button'>Cancel</span>
     
    275305
    276306        $shipping = $orderInfo->get_data()['shipping'];
    277         $city = $orderInfo->get_shipping_city();
    278         $state = $orderInfo->get_shipping_state();
     307        $city = $orderInfo->get_billing_city();
     308        $state = $orderInfo->get_billing_state();
    279309        $total = $orderInfo->get_total();
    280310        $key = $orderInfo->get_order_key();
    281         $shipping_address = $orderInfo->get_shipping_state() . ' - ' . $orderInfo->get_shipping_city() . ' - ' . $orderInfo->get_shipping_address_1();
    282 
    283         $mobile = $orderInfo->get_shipping_phone();
    284         $customer_first_name = $orderInfo->get_shipping_first_name();
    285         $customer_last_name = $orderInfo->get_shipping_last_name();
    286         $customer_phone = $orderInfo->get_shipping_phone();
     311        $shipping_address = $orderInfo->get_billing_state() . ' - ' . $orderInfo->get_billing_city() . ' - ' . $orderInfo->get_billing_address_1();
     312
     313        $mobile = $orderInfo->get_billing_phone();
     314        $customer_first_name = $orderInfo->get_billing_first_name();
     315        $customer_last_name = $orderInfo->get_billing_last_name();
     316        $customer_phone = $orderInfo->get_billing_phone();
    287317        $bearerToken = SIDEUP_API_KEY;
    288318        $currency = CURRENCY;
  • voo-shipping/trunk/public/js/side-up-manger.js

    r3243390 r3245801  
    441441    });
    442442
     443    $(document).on('click', '.print_awp', function (e) {
     444        e.preventDefault();
     445        let printFile = $(this).attr("data-file");
     446
     447        if (printFile) {
     448            let printWindow = window.open(printFile, "_blank"); // Open the file
     449
     450            if (printWindow) {
     451                printWindow.onload = function () {
     452                    printWindow.print(); // Auto-trigger print
     453                };
     454            } else {
     455                alert("Popup blocked! Please allow popups for this site.");
     456            }
     457        } else {
     458            alert("No print file URL found.");
     459        }
     460    });
     461
    443462
    444463    function isValidEgyptianPhone(phone) {
  • voo-shipping/trunk/readme.txt

    r3243390 r3245801  
    77Requires PHP: 7.4
    88Tested up to: 6.7.1
    9 Stable tag: 3.0.5   
     9Stable tag: 3.0.6
    1010License: GPL v2 or later
    1111License URI: https://www.gnu.org/licenses/gpl-2.0.html
  • voo-shipping/trunk/sideup.php

    r3243390 r3245801  
    44 * Plugin URI:        https://plugins.svn.wordpress.org/voo-shipping/
    55 * Description:       SIDEUP’s official extension for WooCommerce on WordPress in EG.
    6  * Version:           3.0.5
     6 * Version:           3.0.6
    77 * Requires at least: 5.2
    88 * Requires PHP:      7.2
Note: See TracChangeset for help on using the changeset viewer.