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-pro/includes/Blocks/Manager.php
<?php

namespace WeDevs\DokanPro\Blocks;

defined( 'ABSPATH' ) || exit;

/**
 * Dokan Block manager class for PRO.
 *
 * @since 3.7.13
 */
class Manager {

    /**
     * Block class mapping.
     *
     * @since 3.7.13
     *
     * @var array
     */
    protected $block_classes;

    /**
     * Constructor class.
     *
     * @since 3.7.13
     */
    public function __construct() {
        /**
         * Include classes for blocks or sections.
         */
        $this->init_block_classes();
        $this->include_block_classes();
    }

    /**
     * Init block classes.
     *
     * @since 3.7.13
     *
     * @return void
     */
    public function init_block_classes() {
        if ( ! empty( $this->block_classes ) ) {
            return;
        }

        $this->block_classes = apply_filters(
            'dokan_block_classes', [
                Product::class,
                ProductShipping::class,
                ProductAttribute::class,
            ]
        );
    }

    /**
     * Include block classes.
     *
     * @since 3.7.13
     *
     * @return void
     */
    public function include_block_classes() {
        foreach ( $this->block_classes as $block ) {
            new $block();
        }
    }
}