HEX
Server: nginx/1.27.1
System: Linux in-3 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64
User: ivenus-clone (3297)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
Upload Files
File: /storage/v4513/tepnot/public_html/wp-content/plugins/dokan-lite/includes/Upgrade/Upgrades/V_1_2.php
<?php

namespace WeDevs\Dokan\Upgrade\Upgrades;

use WeDevs\Dokan\Abstracts\DokanUpgrader;

class V_1_2 extends DokanUpgrader {
    public static function generate_sync_table() {
        self::dokan_generate_sync_table();
    }

    /**
     * Generate dokan sync table
     *
     * @since 3.8.0 moved from includes/functions.php file
     *
     * @deprecated since 2.4.3
     */
    private static function dokan_generate_sync_table() {
        global $wpdb;

        $orders = $wpdb->get_results( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching
            $wpdb->prepare(
                "SELECT oi.order_id, p.ID as product_id, p.post_title, p.post_author as seller_id,
                oim2.meta_value as order_total, p.post_status as order_status
            FROM {$wpdb->prefix}woocommerce_order_items oi
            INNER JOIN {$wpdb->prefix}woocommerce_order_itemmeta oim ON oim.order_item_id = oi.order_item_id
            INNER JOIN {$wpdb->prefix}woocommerce_order_itemmeta oim2 ON oim2.order_item_id = oi.order_item_id
            INNER JOIN $wpdb->posts p ON oi.order_id = p.ID
            WHERE
                oim.meta_key = %s AND
                oim2.meta_key = %s
            GROUP BY oi.order_id",
                '_product_id',
                '_line_total'
            )
        );

        $table_name = $wpdb->prefix . 'dokan_orders';

        $wpdb->query( "TRUNCATE TABLE {$wpdb->prefix}dokan_orders" );

        foreach ( $orders as $order ) {
            $net_amount = dokan()->commission->get_earning_by_order( $order->order_id, 'seller' );
            $wpdb->insert( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery
                $table_name,
                [
                    'order_id'     => $order->order_id,
                    'seller_id'    => $order->seller_id,
                    'order_total'  => $order->order_total,
                    'net_amount'   => $net_amount,
                    'order_status' => $order->order_status,
                ],
                [
                    '%d',
                    '%d',
                    '%f',
                    '%f',
                    '%s',
                ]
            );
        }
    }
}