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/CatalogMode/Controller.php
<?php

namespace WeDevs\Dokan\CatalogMode;

use WeDevs\Dokan\Traits\ChainableContainer;
use WeDevs\Dokan\CatalogMode\Admin\Settings as AdminSettings;
use WeDevs\Dokan\CatalogMode\Dashboard\ProductBulkEdit;
use WeDevs\Dokan\CatalogMode\Dashboard\Products;
use WeDevs\Dokan\CatalogMode\Dashboard\Settings as VendorSettings;

/**
 * Class Controller
 *
 * This class will include all the related files required for Catalog Mode feature and will work as an entry point for
 * all the hooks.
 *
 * @since   3.6.4
 *
 * @package WeDevs\Dokan\CatalogMode
 */
class Controller {

    use ChainableContainer;

    /**
     * Class constructor
     *
     * @since 3.6.4
     *
     * @return void
     */
    public function __construct() {
        $this->set_controllers();
    }

    /**
     * This method will load all the required files
     *
     * @since 3.6.4
     *
     * @return void
     */
    private function set_controllers() {
        // load admin stuff
        $this->container['admin_settings'] = new AdminSettings();
        // load frontend stuff
        if ( ! is_admin() ) {
            $this->container['products']  = new Products();
            $this->container['bulk_edit'] = new ProductBulkEdit();
        }

        // ajax hooks won't work with inline_edit
        $this->container['vendor_settings'] = new VendorSettings();
        $this->container['hooks']           = new Hooks();
    }
}