modulesLoaded(); $app = $container[ WPEMERGE_APPLICATION_KEY ]; $container[ 'depicter.modules.manager' ] = function () { return new Modules(); }; $app->alias( 'modules', 'depicter.modules.manager' ); $container[ 'depicter.modules.woocommerce' ] = function () { return new Module(); }; $app->alias( 'WooCommerce', 'depicter.modules.woocommerce' ); } public function elementorModulesLoaded() { if( defined( 'ELEMENTOR_VERSION' ) ){ New Elementor\Module(); } } public function modulesLoaded(){ add_action( 'init', [ $this, 'loadGutenbergModule' ] ); add_action( 'init', [ $this, 'initBeaverModule' ] ); add_action( 'wp_enqueue_scripts', [ $this, 'load_beaver_builder_widget_script'] ); add_action( 'vc_before_init', [ $this, 'initWPBakeryModule' ] ); add_action( 'init', [ $this, 'initDiviModule' ], 99 ); add_action( 'init', [ $this, 'loadOxygenModule' ] ); add_action( 'init', [ $this, 'loadBricksElements'], 11 ); } /** * {@inheritDoc} */ public function bootstrap( $container ) { } public function load_beaver_builder_widget_script() { if ( class_exists( '\FLBuilderModel' ) && \FLBuilderModel::is_builder_active() ) { $this->enqueueEditorScripts(); } } public function enqueueEditorScripts() { \Depicter::core()->assets()->enqueueStyle( 'depicter-admin', \Depicter::core()->assets()->getUrl() . '/resources/styles/admin/admin.css' ); \Depicter::core()->assets()->enqueueScript( 'depicter-admin', \Depicter::core()->assets()->getUrl() . '/resources/scripts/admin/index.js', ['jquery'], true ); wp_localize_script( 'depicter-admin', 'depicterParams',[ 'ajaxUrl' => admin_url( 'admin-ajax.php' ), 'editorUrl' => \Depicter::editor()->getEditUrl('1'), 'token' => \Depicter::csrf()->getToken( \Depicter\Security\CSRF::EDITOR_ACTION ), 'publishedText' => esc_html__( 'Published', 'depicter' ) ]); } public function loadGutenbergModule() { require_once 'Gutenberg/module.php'; } /** * Load beaver builder module * * @return void */ public function initBeaverModule() { if ( class_exists( '\FLBuilder' ) ) { require_once 'Beaver/module.php'; } } /** * Load WPBakery module * * @return void */ public function initWPBakeryModule() { require_once 'WPBakery/module.php'; if ( !empty( $_GET['vc_action'] ) && $_GET['vc_action'] == 'vc_inline' ) { $this->enqueueEditorScripts(); } } /** * Load divi module * * @return void */ public function initDiviModule() { if ( class_exists( 'DiviExtension' ) ) { require_once 'Divi/depicter-divi.php'; if ( !empty( $_GET['et_fb'] ) ) { add_action( 'wp_enqueue_scripts', [ $this, 'enqueueEditorScripts' ] ); } } } public function loadOxygenModule() { if ( class_exists('\OxyEl') ) { require_once 'Oxygen/module.php'; } if ( isset( $_GET['ct_builder'] ) ) { add_action( 'wp_enqueue_scripts', [ $this, 'enqueueEditorScripts' ] ); } } public function loadBricksElements() { if ( ! class_exists( '\Bricks\Elements' ) ) { return; } \Bricks\Elements::register_element( __DIR__ . '/Bricks/widget.php', ); } }