Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-content
/
plugins
/
elements-plus
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php if (!defined('ABSPATH')) { exit; } add_action('plugins_loaded', 'elements_plus_init'); function elements_plus_init() { define('ELEMENTS_PLUS_VERSION', '2.14.2'); define('ELEMENTS_PLUS_URL', plugins_url('/', __FILE__)); define('ELEMENTS_PLUS_PATH', plugin_dir_path(__FILE__)); if (!defined('ELEMENTOR_VERSION')) { add_action('admin_notices', 'elements_plus_dependency'); return; } if (!version_compare(PHP_VERSION, '5.4', '>=')) { add_action('admin_notices', 'elements_plus_fail_php_version'); return; } add_action('init', 'elements_plus_load_plugin_textdomain'); add_action('elementor/init', 'elements_plus_category'); require_once ELEMENTS_PLUS_PATH . 'inc/elements-plus-options.php'; add_action('elementor/editor/before_enqueue_scripts', 'elements_plus_add_fonts'); add_action('elementor/init', 'elements_plus_add_elements'); add_action('wp_enqueue_scripts', 'elements_plus_scripts'); add_action('admin_enqueue_scripts', 'elements_plus_admin_styles'); add_action('elementor/preview/enqueue_styles', 'enqueue_wpforms_styles'); } function elements_plus_dependency() { $message = esc_html__('Elements Plus! requires the Elementor page builder to be active. Please activate Elementor to continue.', 'elements-plus'); $html_message = sprintf('<div class="error">%s</div>', wpautop($message)); echo wp_kses_post($html_message); } function elements_plus_fail_php_version() { $message = esc_html__('Elements Plus! requires PHP version 5.4+, the plugin is currently NOT ACTIVE.', 'elements-plus'); $html_message = sprintf('<div class="error">%s</div>', wpautop($message)); echo wp_kses_post($html_message); } function elements_plus_load_plugin_textdomain() { load_plugin_textdomain('elements-plus', false, dirname(plugin_basename(__FILE__)) . '/languages/'); } function elements_plus_category() { \Elementor\Plugin::instance()->elements_manager->add_category('elements-plus', ['title' => __('Elements Plus!', 'elements-plus'), 'icon' => 'font']); } function is_audioigniter_active() { _deprecated_function(__FUNCTION__, '1.4.0', 'elements_plus_is_audioigniter_active()'); return elements_plus_is_audioigniter_active(); } function elements_plus_is_audioigniter_active() { _deprecated_function(__FUNCTION__, '2.2.0', 'elements_plus_is_plugin_active()'); return elements_plus_is_plugin_active('AudioIgniter'); } function elements_plus_is_wp_instagram_active() { _deprecated_function(__FUNCTION__, '2.2.0', 'elements_plus_is_plugin_active()'); return elements_plus_is_plugin_active('null_instagram_widget'); } function elements_plus_is_plugin_active($class) { return class_exists($class); } function elements_plus_get_video_url_info($url) { $is_vimeo = preg_match('#(?:https?://)?(?:www\\.)?vimeo\\.com/([A-Za-z0-9\\-_]+)#', $url, $vimeo_id); $is_youtube = preg_match('~ # Match non-linked youtube URL in the wild. (Rev:20111012) https?:// # Required scheme. Either http or https. (?:[0-9A-Z-]+\\.)? # Optional subdomain. (?: # Group host alternatives. youtu\\.be/ # Either youtu.be, | youtube\\.com # or youtube.com followed by \\S* # Allow anything up to VIDEO_ID, [^\\w\\-\\s] # but char before ID is non-ID char. ) # End host alternatives. ([\\w\\-]{11}) # $1: VIDEO_ID is exactly 11 chars. (?=[^\\w\\-]|$) # Assert next char is non-ID or EOS. (?! # Assert URL is not pre-linked. [?=&+%\\w]* # Allow URL (query) remainder. (?: # Group pre-linked alternatives. [\'"][^<>]*> # Either inside a start tag, | </a> # or inside <a> element text contents. ) # End recognized pre-linked alts. ) # End negative lookahead assertion. [?=&+%\\w-]* # Consume any URL (query) remainder. ~ix', $url, $youtube_id); $info = array('supported' => false, 'provider' => '', 'video_id' => ''); if ($is_youtube) { $info['supported'] = true; $info['provider'] = 'youtube'; $info['video_id'] = $youtube_id[1]; } elseif ($is_vimeo) { $info['supported'] = true; $info['provider'] = 'vimeo'; $info['video_id'] = $vimeo_id[1]; } return $info; } function elements_plus_sanitize_settings($options) { $defaults = array('checkbox_label' => '', 'checkbox_dual_input' => '', 'checkbox_justified' => '', 'checkbox_cta' => '', 'checkbox_maps' => '', 'checkbox_audioigniter' => '', 'checkbox_video_slider' => '', 'checkbox_preloader' => '', 'checkbox_instagram' => '', 'checkbox_tooltip' => '', 'checkbox_scheduled' => '', 'checkbox_icon' => '', 'checkbox_flipclock' => '', 'checkbox_image_comparison' => '', 'checkbox_image_hover_effects' => '', 'api_maps' => '', 'checkbox_dual_button' => '', 'checkbox_instagram_filters' => '', 'checkbox_search' => '', 'checkbox_countdown' => '', 'checkbox_inline_svg' => '', 'checkbox_tilt' => '', 'checkbox_tables' => '', 'checkbox_wpforms' => '', 'checkbox_sticky_videos' => '', 'checkbox_cf7' => '', 'checkbox_hotspots' => '', 'checkbox_image_accordion' => '', 'checkbox_caldera_forms' => '', 'checkbox_content_toggle' => '', 'checkbox_heading' => '', 'checkbox_pricing_list' => ''); $options = wp_parse_args($options, $defaults); foreach ($options as $option => $value) { if ('api_maps' === $option) { $options[$option] = sanitize_text_field($value); } else { $options[$option] = intval($value); } } return $options; } function elements_plus_add_fonts() { wp_enqueue_style('ep-icon', ELEMENTS_PLUS_URL . 'assets/css/ep-icon.css', array(), ELEMENTS_PLUS_VERSION); wp_enqueue_style('ep-icon-module', ELEMENTS_PLUS_URL . 'assets/css/ep-icon-module.css', array(), ELEMENTS_PLUS_VERSION); wp_enqueue_style('ep-elementor-styles', ELEMENTS_PLUS_URL . 'assets/css/ep-elementor-styles.css', array(), ELEMENTS_PLUS_VERSION); } function elements_plus_add_elements() { $options = elements_plus_sanitize_settings(get_option('elements_plus_settings')); if ($options['checkbox_audioigniter'] && elements_plus_is_plugin_active('AudioIgniter')) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-audioigniter.php'; } if ($options['checkbox_dual_input']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-button-plus.php'; } if ($options['checkbox_caldera_forms'] && elements_plus_is_plugin_active('Caldera_Forms')) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-caldera-forms.php'; } if ($options['checkbox_cta']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-cta.php'; } if ($options['checkbox_cf7'] && elements_plus_is_plugin_active('WPCF7')) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-cf7.php'; } if ($options['checkbox_content_toggle']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-content-toggle.php'; } if ($options['checkbox_countdown']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-countdown.php'; } if ($options['checkbox_dual_button']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-dual-button.php'; } if ($options['checkbox_flipclock']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-flipclock.php'; } if ($options['checkbox_heading']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-heading.php'; } if ($options['checkbox_justified']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-justified-gallery.php'; } if ($options['checkbox_maps']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-styled-maps.php'; } if ($options['checkbox_hotspots']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-hotspots.php'; } if ($options['checkbox_icon']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-icon-plus.php'; } if ($options['checkbox_image_accordion']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-image-accordion.php'; } if ($options['checkbox_image_comparison']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-image-comparison.php'; } if ($options['checkbox_image_hover_effects']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-image-hover-effects.php'; } if ($options['checkbox_inline_svg'] && elements_plus_is_plugin_active('safe_svg')) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-inline-svg.php'; } if ($options['checkbox_instagram'] && elements_plus_is_plugin_active('null_instagram_widget')) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-instagram.php'; } if ($options['checkbox_instagram_filters']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-instagram-filters.php'; } if ($options['checkbox_label']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-label.php'; } if ($options['checkbox_preloader']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-preloader.php'; } if ($options['checkbox_pricing_list']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-pricing-list.php'; } if ($options['checkbox_scheduled']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-scheduled.php'; } if ($options['checkbox_search']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-search.php'; } if ($options['checkbox_sticky_videos']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-sticky-videos.php'; } if ($options['checkbox_tables']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-tables.php'; } if ($options['checkbox_tilt']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-tilt.php'; } if ($options['checkbox_tooltip']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-tooltip.php'; } if ($options['checkbox_wpforms'] && elements_plus_is_plugin_active('WPForms')) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-wpforms.php'; } if ($options['checkbox_video_slider']) { require_once ELEMENTS_PLUS_PATH . 'elements/ep-video-slider.php'; } } function elements_plus_scripts() { $options = elements_plus_sanitize_settings(get_option('elements_plus_settings')); $label = $options['checkbox_label']; $button_plus = $options['checkbox_dual_input']; $justified = $options['checkbox_justified']; $maps = $options['checkbox_maps']; $api_key = $options['api_maps']; $cta = $options['checkbox_cta']; $audioigniter = $options['checkbox_audioigniter']; $video_slider = $options['checkbox_video_slider']; $preloader = $options['checkbox_preloader']; $instagram = $options['checkbox_instagram']; $tooltip = $options['checkbox_tooltip']; $icon = $options['checkbox_icon']; $flipclock = $options['checkbox_flipclock']; $image_comparison = $options['checkbox_image_comparison']; $image_hover_effects = $options['checkbox_image_hover_effects']; $dual_button = $options['checkbox_dual_button']; $instagram_filters = $options['checkbox_instagram_filters']; $search = $options['checkbox_search']; $countdown = $options['checkbox_countdown']; $svg = $options['checkbox_inline_svg']; $tilt = $options['checkbox_tilt']; $tables = $options['checkbox_tables']; $sticky_videos = $options['checkbox_sticky_videos']; $hotspots = $options['checkbox_hotspots']; $image_accordion = $options['checkbox_image_accordion']; $content_toggle = $options['checkbox_content_toggle']; $heading = $options['checkbox_heading']; $pricing_list = $options['checkbox_pricing_list']; if (1 === $icon) { wp_enqueue_style('ep-icon-module', ELEMENTS_PLUS_URL . 'assets/css/ep-icon-module.css', array(), ELEMENTS_PLUS_VERSION); } if (1 === $justified) { wp_enqueue_style('justified-gallery', ELEMENTS_PLUS_URL . 'assets/css/justifiedGallery.min.css', array(), ELEMENTS_PLUS_VERSION); wp_enqueue_script('justified-gallery', ELEMENTS_PLUS_URL . 'assets/js/jquery.justifiedGallery.min.js', array('jquery'), '3.6.3', true); } if (1 === $justified || 1 === $maps || 1 === $audioigniter || 1 === $video_slider || 1 === $preloader || 1 === $flipclock || 1 === $image_comparison || 1 === $image_hover_effects) { wp_enqueue_script('ep-scripts', ELEMENTS_PLUS_URL . 'assets/js/ep-scripts.js', array('jquery'), ELEMENTS_PLUS_VERSION, true); } if (1 === $video_slider) { wp_enqueue_script('ep-fitvids', ELEMENTS_PLUS_URL . 'assets/js/jquery.fitvids.js', array('jquery'), '1.1', true); wp_enqueue_script('ep-matchHeight', ELEMENTS_PLUS_URL . 'assets/js/jquery.matchHeight.js', array('jquery'), '1.0', true); } if ($api_key && 1 === $maps) { wp_enqueue_script('ep-google-maps', 'https://maps.googleapis.com/maps/api/js?key=' . $api_key, array(), ELEMENTS_PLUS_VERSION, false); } if (1 === $audioigniter && elements_plus_is_plugin_active('AudioIgniter')) { wp_enqueue_script('audioigniter'); } if (1 === $flipclock) { wp_enqueue_style('flipclock', ELEMENTS_PLUS_URL . 'assets/css/flipclock.css', array(), '1.1.a'); wp_enqueue_script('flipclock', ELEMENTS_PLUS_URL . 'assets/js/flipclock.min.js', array('jquery'), '1.1.a', true); } if (1 === $image_comparison) { wp_enqueue_style('image-comparison', ELEMENTS_PLUS_URL . 'assets/css/twentytwenty.css', array(), '1.0'); wp_enqueue_script('jquery-imagesLoaded', ELEMENTS_PLUS_URL . 'assets/js/imagesloaded.pkgd.min.js', array('jquery'), '4.1.4', true); wp_enqueue_script('jquery-event-move', ELEMENTS_PLUS_URL . 'assets/js/jquery.event.move.js', array('jquery'), '2.0.1', true); wp_enqueue_script('image-comparison', ELEMENTS_PLUS_URL . 'assets/js/jquery.twentytwenty.js', array('jquery', 'jquery-event-move'), '1.0', true); } if (1 === $image_hover_effects) { wp_enqueue_script('three', ELEMENTS_PLUS_URL . 'assets/js/three.min.js', array(), '1.0', true); wp_enqueue_script('jstween', ELEMENTS_PLUS_URL . 'assets/js/jstween.js', array(), ELEMENTS_PLUS_VERSION, true); wp_enqueue_script('hover', ELEMENTS_PLUS_URL . 'assets/js/hover.js', array(), ELEMENTS_PLUS_VERSION, true); } if (1 === $label || 1 === $button_plus || 1 === $justified || 1 === $cta || 1 === $video_slider || 1 === $preloader || 1 === $instagram || 1 === $tooltip || 1 === $icon || 1 === $flipclock || 1 === $image_hover_effects || 1 === $dual_button) { wp_enqueue_style('ep-elements', ELEMENTS_PLUS_URL . 'assets/css/ep-elements.css', array(), ELEMENTS_PLUS_VERSION); } if (1 === $instagram_filters) { wp_enqueue_style('ep-instagram-filters', ELEMENTS_PLUS_URL . 'assets/css/instagram-filters.css', array(), ELEMENTS_PLUS_VERSION); } if (1 === $search) { wp_enqueue_style('ep-search-style', ELEMENTS_PLUS_URL . 'assets/css/ep-search.css', array(), ELEMENTS_PLUS_VERSION); wp_enqueue_script('ep-search', ELEMENTS_PLUS_URL . 'assets/js/ep-search.js', array('jquery'), ELEMENTS_PLUS_VERSION, true); $vars = array('ajaxurl' => admin_url('admin-ajax.php')); wp_localize_script('ep-search', 'ep_search_vars', $vars); } if (1 === $countdown) { wp_enqueue_script('ep-countdown', ELEMENTS_PLUS_URL . 'assets/js/ep-countdown.js', array('jquery'), ELEMENTS_PLUS_VERSION, true); wp_enqueue_style('ep-countdown-style', ELEMENTS_PLUS_URL . 'assets/css/ep-countdown.css', array(), ELEMENTS_PLUS_VERSION); } if (1 === $tilt) { wp_enqueue_script('ep-tilt', ELEMENTS_PLUS_URL . 'assets/js/vanilla-tilt.min.js', null, ELEMENTS_PLUS_VERSION, true); } if (1 === $tables) { wp_enqueue_style('ep-tables', ELEMENTS_PLUS_URL . 'assets/css/ep-tables.css', array(), ELEMENTS_PLUS_VERSION); } if (1 === $sticky_videos) { wp_enqueue_style('ep-sticky-videos', ELEMENTS_PLUS_URL . 'assets/css/ep-sticky-videos.css', array(), ELEMENTS_PLUS_VERSION); wp_enqueue_script('ep-sticky-videos', ELEMENTS_PLUS_URL . 'assets/js/ep-sticky-videos.js', array('jquery'), ELEMENTS_PLUS_VERSION, true); } if (1 === $hotspots) { wp_register_style('tipso', ELEMENTS_PLUS_URL . 'assets/css/tipso.min.css', array(), ELEMENTS_PLUS_VERSION); wp_register_script('tipso', ELEMENTS_PLUS_URL . 'assets/js/tipso.min.js', array('jquery'), ELEMENTS_PLUS_VERSION, true); wp_register_style('ep-hotspots', ELEMENTS_PLUS_URL . 'assets/css/ep-hotspots.css', array(), ELEMENTS_PLUS_VERSION); wp_register_script('ep-hotspots', ELEMENTS_PLUS_URL . 'assets/js/ep-hotspots.js', array('jquery', 'tipso'), ELEMENTS_PLUS_VERSION, true); } if (1 === $image_accordion) { wp_enqueue_style('ep-image-accordion', ELEMENTS_PLUS_URL . 'assets/css/ep-image-accordion.css', array(), ELEMENTS_PLUS_VERSION); } if (1 === $content_toggle) { wp_enqueue_style('ep-content-toggle', ELEMENTS_PLUS_URL . 'assets/css/ep-content-toggle.css', array(), ELEMENTS_PLUS_VERSION); wp_enqueue_script('ep-content-toggle', ELEMENTS_PLUS_URL . 'assets/js/ep-content-toggle.js', array('jquery'), ELEMENTS_PLUS_VERSION, true); } if (1 === $heading) { wp_enqueue_style('ep-heading', ELEMENTS_PLUS_URL . 'assets/css/ep-heading.css', array(), ELEMENTS_PLUS_VERSION); } if (1 === $pricing_list) { wp_enqueue_style('ep-pricing-list', ELEMENTS_PLUS_URL . 'assets/css/ep-pricing-list.css', array(), ELEMENTS_PLUS_VERSION); } } function elements_plus_admin_styles($hook) { if ('elementor_page_elements_plus' !== $hook) { return; } wp_enqueue_style('custom_wp_admin_css', ELEMENTS_PLUS_URL . 'assets/css/admin-styles.css', array(), ELEMENTS_PLUS_VERSION); } function enqueue_wpforms_styles() { $options = elements_plus_sanitize_settings(get_option('elements_plus_settings')); if (false === elements_plus_is_plugin_active('WPForms') || 0 === $options['checkbox_wpforms'] || false === \Elementor\Plugin::$instance->preview->is_preview_mode()) { return; } if (wpforms_setting('disable-css', '1') == '1') { wp_enqueue_style('wpforms-css', WPFORMS_PLUGIN_URL . 'assets/css/wpforms-full.css', array(), WPFORMS_VERSION); } elseif (wpforms_setting('disable-css', '1') == '2') { wp_enqueue_style('wpforms-css', WPFORMS_PLUGIN_URL . 'assets/css/wpforms-base.css', array(), WPFORMS_VERSION); } if (function_exists('wpforms_surveys_polls')) { wp_enqueue_style('wpforms-surveys-polls', wpforms_surveys_polls()->url . 'assets/css/wpforms-surveys-polls.min.css', array(), WPFORMS_SURVEYS_POLLS_VERSION); } }