File "elements-plus.php"
Full path: /home/kosmetik/public_html/wp-content/plugins/elements-plus/elements-plus.php
File
size: 18.31 B
MIME-type: text/x-php
Charset: utf-8
Download Open Edit Advanced Editor Back
<?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);
}
}