HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux vm8 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: afleverb (1000)
PHP: 7.4.33
Disabled: 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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //var/www/drakkar_site/wp-content/plugins/optimole-wp/inc/compatibilities/metaslider.php
<?php

/**
 * Class Optml_metaslider.
 *
 * @reason Metaslider behaves strange when the noscript tag is present near the image tag.
 */
class Optml_metaslider extends Optml_compatibility {


	/**
	 * Should we load the integration logic.
	 *
	 * @return bool Should we load.
	 */
	public function should_load() {
		include_once ABSPATH . 'wp-admin/includes/plugin.php';

		return is_plugin_active( 'ml-slider/ml-slider.php' ) || is_plugin_active( 'ml-slider-pro/ml-slider-pro.php' );
	}

	/**
	 * Register integration details.
	 */
	public function register() {
		add_filter( 'optml_ignore_noscript_on', [ $this, 'add_noscript_flags' ], PHP_INT_MAX, 1 );
		add_filter( 'optml_possible_lazyload_flags', [ $this, 'add_ignore_lazyload' ], PHP_INT_MAX, 1 );
		add_filter( 'optml_watcher_lz_classes', [ $this, 'add_watcher_class' ], 10 );
		add_filter( 'metaslider_coin_slider_image_attributes', [ $this, 'setup_listner' ], PHP_INT_MAX, 1 );
		add_filter(
			'optml_lazyload_bg_selectors',
			function ( $all_watchers ) {
				$all_watchers[] = '.coin-slider > .coin-slider > a';
				$all_watchers[] = '.coin-slider > .coin-slider';
				return $all_watchers;
			}
		);
	}

	/**
	 * Disable lazyload on coinslider type.
	 *
	 * @param array $attributes Old attributes.
	 *
	 * @return mixed Slider attributes.
	 */
	public function setup_listner( $attributes ) {
		$attributes['class'] .= 'no-optml-lazyload';

		return $attributes;
	}

	/**
	 * Add ignore lazyload flag.
	 *
	 * @param array $flags Old flags.
	 *
	 * @return array New flags.
	 */
	public function add_ignore_lazyload( $flags = [] ) {
		$flags[] = 'no-optml-lazyload';

		return $flags;
	}

	/**
	 * Add nive slider watcher class.
	 *
	 * @param array $classes Old watcher.
	 *
	 * @return array New watchers.
	 */
	public function add_watcher_class( $classes ) {
		$classes[] = 'nivo-main-image';

		return $classes;
	}


	/**
	 * Return metaslider flags.
	 *
	 * @param array $flags Old flags.
	 *
	 * @return array New flags.
	 */
	public function add_noscript_flags( $flags = [] ) {
		$flags[] = 'slide-';

		return $flags;
	}
}