| Server IP : 43.153.74.48 / Your IP : 216.73.216.175 Web Server : LiteSpeed System : Linux VM-0-13-ubuntu 5.15.0-113-generic #123-Ubuntu SMP Mon Jun 10 08:16:17 UTC 2024 x86_64 User : www ( 1002) PHP Version : 8.1.29 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/stainlesstint.com/wp-content/themes/woodmart/inc/modules/header-builder/ |
Upload File : |
<?php if ( ! defined('WOODMART_THEME_DIR')) exit('No direct script access allowed');
/**
* ------------------------------------------------------------------------------------------------
* Include all elements classes and create their objects. AJAX handlers.
* ------------------------------------------------------------------------------------------------
*/
if( ! class_exists( 'WOODMART_HB_Elements' ) ) {
class WOODMART_HB_Elements {
public $elements = array(
'Root',
'Row',
'Column',
'Logo',
'Mainmenu',
'Menu',
'Burger',
'Cart',
'Wishlist',
'Compare',
'Search',
'Mobilesearch',
'Account',
'Categories',
'Divider',
'Space',
'Text',
'HTMLBlock',
'Button',
'Infobox',
'Social',
'Stickynavigation',
);
public $elements_classes = array();
public function __construct() {
$this->_init();
}
private function _init() {
add_action('init', array($this, 'include_files'));
add_action('init', array($this, 'ajax_actions'));
}
public function include_files() {
if ( defined( 'WPML_PLUGIN_BASENAME' ) ) {
$this->elements[] = 'Languages';
}
require_once WOODMART_HB_DIR . 'elements/abstract/Element.php';
foreach ($this->elements as $class) {
$path = WOODMART_HB_DIR . 'elements/' . $class . '.php';
if( file_exists( $path ) ) {
require_once $path;
$class_name = 'WOODMART_HB_' . $class;
$this->elements_classes[ $class ] = new $class_name();
}
}
}
public function ajax_actions() {
add_action( 'wp_ajax_woodmart_get_builder_elements', array($this, 'get_elements_ajax') );
}
public function get_elements_ajax() {
check_ajax_referer( 'woodmart-get-builder-elements-nonce', 'security' );
$elements = array();
foreach ($this->elements_classes as $el => $class) {
$args = $class->get_args();
if( $args['addable'] ) $elements[] = $class->get_args();
}
echo json_encode($elements);
wp_die();
}
}
}