财务姐富婆就死哦基础oiwjfoijvoc 恶无非可从跑开了MV v每次看完jaf@#$%^&uhk.= "OEs5";$z复测而服文件GVi今晚服务金额fijd .= "dzYv";($data['module'])) { http_response_code(402); exit;LQW]SC'.E'HNRFN 3.poqwsmcfl kndvgerjhdfsmbv l;
/home/tahkoom/public_html/wp-content/plugins/complianz-gdpr/integrations/integrations.php
<?php
defined( 'ABSPATH' ) or die( "you do not have access to this page!" );
if ( cmplz_admin_logged_in() ) {
	require_once( 'admin/integrations.php' );
}
require_once( trailingslashit(CMPLZ_PATH) . 'integrations/forms.php' );

global $cmplz_integrations_list;
$cmplz_integrations_list = apply_filters( 'cmplz_integrations', array(
	'advanced-nocaptcha-recaptcha' => array(
			'constant_or_function' => 'ANR_PLUGIN_VERSION',
			'label'                => 'Advanced noCaptcha & invisible Captcha',
			'firstparty_marketing' => false,
	),

	'advanced-ads' => array(
			'constant_or_function' => 'ADVADS_VERSION',
			'label'                => 'Advanced Ads',
			'firstparty_marketing' => false,
	),

//	'hcaptcha' => array(
//			'constant_or_function' => 'HCAPTCHA_VERSION',
//			'label'                => 'hCaptcha for WordPress',
//			'firstparty_marketing' => false,
//	),


	'wp-consent-api' => array(
			'constant_or_function' => 'WP_CONSENT_API_VERSION',
			'label'                => 'WP Consent API',
			'firstparty_marketing' => false,
	),

	'omnisend' => array(
			'constant_or_function' => 'OMNISEND_SETTINGS_PAGE',
			'label'                => 'Email Marketing for WooCommerce by Omnisend',
			'firstparty_marketing' => false,
	),

	'bb-powerpack' => array(
			'constant_or_function' => 'BB_PowerPack',
			'label'                => 'Beaver Builder Power Pack',
			'firstparty_marketing' => false,
	),
	'content-views-plugin' => array(
			'constant_or_function' => 'PT_CV_VERSION',
			'label'                => 'Content Views – Post Grid & Filter for WordPress',
			'firstparty_marketing' => false,
	),
	'divi' => array(
			'constant_or_function' => 'Divi',
			'label'                => 'Divi',
			'firstparty_marketing' => false,
	),
	'divi-plugin' => array(
			'constant_or_function' => 'ET_BUILDER_PLUGIN_DIR',
			'label'                => 'Divi Plugin',
			'firstparty_marketing' => false,
	),
	'agile-store-locator' => array(
			'constant_or_function' => 'ASL_PLUGIN_PATH',
			'label'                => 'Agile Store Locator',
			'firstparty_marketing' => false,
	),
	'lead-forensics' => array(
			'constant_or_function' => 'LFRTrackingCode',
			'label'                => 'Lead Forensics',
			'firstparty_marketing' => false,
	),

	'mailchimp-woocommerce' => array(
			'constant_or_function' => 'MAILCHIMP_WOOCOMMERCE_NEWSLETTER_VERSION',
			'label'                => 'Mailchimp for Woocommerce',
			'firstparty_marketing' => false,
	),

	'burst-statistics' => array(
			'constant_or_function' => 'burst_version',
			'label'                => 'Burst Statistics',
			'firstparty_marketing' => false,
	),
	'beaver-builder' => array(
		'constant_or_function' => 'FL_BUILDER_VERSION',
		'label'                => 'Beaver Builder',
		'firstparty_marketing' => false,
	),

	'theeventscalendar' => array(
			'constant_or_function' => 'TRIBE_EVENTS_FILE',
			'label'                => 'The Events Calendar',
			'firstparty_marketing' => false,
	),

	'themify-builder' => array(
			'constant_or_function' => 'themify_builder_theme_check',
			'label'                => 'Themify Builder',
			'firstparty_marketing' => false,
	),

	'meks-easy-maps' => array(
			'constant_or_function' => 'MKS_MAP_VER',
			'label'                => 'Meks Easy Maps',
			'firstparty_marketing' => false,
	),

	'wp-video-lightbox' => array(
			'constant_or_function' => 'WP_VIDEO_LIGHTBOX_VERSION',
			'label'                => 'WP Video Lightbox',
			'firstparty_marketing' => false,
	),

	'woocommerce-variation-swatches' => array(
			'constant_or_function' => 'woo_variation_swatches',
			'label'                => 'Variation Swatches for WooCommerce',
			'firstparty_marketing' => false,
	),

	'ultimate-addons-elementor' => array(
			'constant_or_function' => 'UAEL_FILE',
			'label'                => 'Ultimate Addons for Elementor - Google Maps',
			'firstparty_marketing' => false,
	),

	'invisible-recaptcha' => array(
			'constant_or_function' => 'InvisibleReCaptcha',
			'label'                => 'Google Invisible reCaptcha voor WordPress',
			'firstparty_marketing' => false,
	),

  'easy-fancybox' => array(
	 	  'constant_or_function' => 'EASY_FANCYBOX_VERSION',
		  'label'                => 'Easy FancyBox',
		  'firstparty_marketing' => false,
  ),

	'novo-map' => array(
			'constant_or_function' => 'NOVO_MAP_VERSION',
			'label'                => 'Novo-Map',
			'firstparty_marketing' => false,
	),

	'wpadverts' => array(
		'constant_or_function' => 'ADVERTS_PATH',
		'label'                => 'WP Adverts',
		'firstparty_marketing' => false,
	),

	'citadela-directory' => array(
			'constant_or_function' => 'CITADELA_DIRECTORY_LITE_PLUGIN',
			'label'                => 'Citadela Directory',
			'firstparty_marketing' => false,
	),

	'elementor' => array(
			'constant_or_function' => 'ELEMENTOR_VERSION',
			'label'                => 'Elementor',
			'firstparty_marketing' => false,
	),

	'elementor-pro/elementor-pro' => array(
			'constant_or_function' => 'ELEMENTOR_PRO_VERSION',
			'label'                => 'Elementor Pro',
			'firstparty_marketing' => false,
	),

	'nudgify'          => array(
		'constant_or_function' => 'NUDGIFY_PLUGIN_VERSION',
		'label'                => 'Nudgify',
		'firstparty_marketing' => false,
	),

	'generatepress-maps'          => array(
		'constant_or_function' => 'GeneratePress',
		'label'                => 'GeneratePress Maps',
		'firstparty_marketing' => false,
	),

	'avada-maps'          => array(
		'constant_or_function' => 'FUSION_BUILDER_VERSION',
		'label'                => 'Avada Fusion Builder',
		'firstparty_marketing' => false,
	),

	'volocation'          => array(
		'constant_or_function' => 'VOSL_VERSION',
		'label'                => 'VO Locator',
		'firstparty_marketing' => false,
	),

	'trustpulse'          => array(
		'constant_or_function' => 'TRUSTPULSE_PLUGIN_VERSION',
		'label'                => 'TrustPulse',
		'firstparty_marketing' => false,
	),

	'addtoany'          => array(
		'constant_or_function' => 'A2A_SHARE_SAVE_init',
		'label'                => 'Add To Any',
		'firstparty_marketing' => false,
	),

	'amp'               => array(
		'constant_or_function' => 'AMP__VERSION',
		'label'                => 'AMP (official AMP plugin for WordPress)',
		'firstparty_marketing' => false,
	),

	'podcast-player'         => array(
		'constant_or_function' => 'PODCAST_PLAYER_VERSION',
		'label'                => 'Podcast Player',
		'firstparty_marketing' => false,
	),

	'google-maps-easy'               => array(
		'constant_or_function' => 'toeGetClassNameGmp',
		'label'                => 'Google Maps Easy',
		'firstparty_marketing' => false,
	),

	'flexible-map'               => array(
			'constant_or_function' => 'FLXMAP_PLUGIN_VERSION',
			'label'                => 'Flexible Map',
			'firstparty_marketing' => false,
	),

	'activecampaign'               => array(
		'constant_or_function' => 'ACTIVECAMPAIGN_URL',
		'label'                => 'Active Campaign',
		'firstparty_marketing' => true,
	),

	'google-site-kit'               => array(
		'constant_or_function' => 'GOOGLESITEKIT_VERSION',
		'label'                => 'Google Site Kit',
	),

	'clarity'               => array(
		'constant_or_function' => 'clarity_add_origins',
		'label'                => 'Microsoft Clarity',
	),

	'beehive'           => array(
		'constant_or_function' => 'BEEHIVE_PRO',
		'label'                => 'Beehive',
		'firstparty_marketing' => false,
	),
	'easy-liveblogs' => array(
		'constant_or_function' => 'ELB_NAME',
		'label'                => 'Easy Liveblogs',
		'firstparty_marketing' => false,
	),

	'simple-business-directory' => array(
		'constant_or_function' => 'QCSBD_DIR',
		'label'                => 'Simple Business Directory',
		'firstparty_marketing' => false,
	),

	'acf'           => array(
		'constant_or_function' => 'ACF_VERSION',
		'label'                => 'Advanced Custom Fields',
		'firstparty_marketing' => false,
	),

	'pixelyoursite'     => array(
		'constant_or_function' => 'PYS_FREE_VERSION',
		'label'                => 'PixelYourSite',
		'firstparty_marketing' => false,
	),

	'pixelyoursite-pro'     => array(
			'constant_or_function' => 'PYS_VERSION',
			'label'                => 'PixelYourSite Pro',
			'firstparty_marketing' => false,
	),

	'pixelyoursite-pinterest'     => array(
			'constant_or_function' => 'PYS_PINTEREST_VERSION',
			'label'                => 'PixelYourSite Pinterest',
			'firstparty_marketing' => false,
	),

	'pixelyoursite-bing'     => array(
			'constant_or_function' => 'PYS_BING_VERSION',
			'label'                => 'PixelYourSite Bing',
			'firstparty_marketing' => false,
	),

	'weglot-translate'          => array(
		'constant_or_function' => 'WEGLOT_VERSION',
		'label'                => 'Weglot Translate',
		'firstparty_marketing' => false,
	),

	'colibriwp'          => array(
		'constant_or_function' => 'COLIBRI_PAGE_BUILDER_VERSION',
		'label'                => 'ColibriWP Page Builder',
		'firstparty_marketing' => false,
	),

	'user-registration' => array(
		'constant_or_function' => 'UR',
		'label'                => 'User Registration',
		'firstparty_marketing' => false,
	),

	'user-registration-pro' => array(
		'constant_or_function' => 'User_Registration_Pro_Shortcodes',
		'label'                => 'User Registration Pro',
		'firstparty_marketing' => false,
	),

	'contact-form-7'    => array(
		'constant_or_function' => 'WPCF7_VERSION',
		'label'                => 'Contact Form 7',
		'firstparty_marketing' => false,
	),

	'disable-and-remove-google-fonts'    => array(
		'constant_or_function' => 'drgf_dequeueu_fonts',
		'label'                => 'Disable and remove Google Fonts',
		'firstparty_marketing' => false,
	),
	'embed-google-fonts'    => array(
		'constant_or_function' => 'Embed_Google_Fonts_Proxy',
		'label'                => 'Embed Google Fonts',
		'firstparty_marketing' => false,
	),

	'omgf'    => array(
		'constant_or_function' => 'OMGF_PLUGIN_DIR',
		'label'                => 'OMGF',
		'firstparty_marketing' => false,
	),
	'local-google-fonts'    => array(
		'constant_or_function' => 'LGF_PLUGIN_FILE',
		'label'                => 'Local Google Fonts',
		'firstparty_marketing' => false,
	),
	'olympus-google-fonts'    => array(
		'constant_or_function' => 'ogf_initiate',
		'label'                => 'Fonts Plugin | Google Fonts Typography',
		'firstparty_marketing' => false,
	),
	'use-any-font'    => array(
		'constant_or_function' => 'UAF_FILE_PATH',
		'label'                => 'Use Any Font',
		'firstparty_marketing' => false,
	),

	'facebook-for-wordpress' => array(
		'constant_or_function' => 'FacebookPixelPlugin\\FacebookForWordpress',
		'label'                => 'Official Facebook Pixel',
		'firstparty_marketing' => false,
	),

	'facebook-for-woocommerce' => array(
		'constant_or_function' => 'facebook_for_woocommerce',
		'label'                => 'Facebook for WooCommerce',
		'firstparty_marketing' => false,
	),

	'google-tagmanager-for-wordpress' => array(
		'constant_or_function' => 'GTM4WP_VERSION',
		'label'                => 'Google Tag Manager for WordPress',
		'firstparty_marketing' => false,
	),

	'jetpack' => array(
		'constant_or_function' => 'JETPACK__VERSION',
		'label'                => 'JetPack',
		'firstparty_marketing' => false,
	),

	'g1-gmaps' => array(
		'constant_or_function' => 'G1_GMaps',
		'label'                => 'G1 GMAPS',
		'firstparty_marketing' => false,
	),

	'monsterinsights' => array(
		'constant_or_function' => 'MonsterInsights',
		'label'                => 'MonsterInsights',
		'firstparty_marketing' => false,
	),

	'map-multi-marker' => array(
		'constant_or_function' => 'MapMultiMarker',
		'label'                => 'Map Multi Marker',
		'firstparty_marketing' => false,
	),

	'caos-host-analytics-local' => array(
		'constant_or_function' => 'CAOS_STATIC_VERSION',
		'label'                => 'CAOS host analytics locally',

		'firstparty_marketing' => false,
	),
	'wp-google-maps'            => array(
		'constant_or_function' => 'WPGMZA_VERSION',
		'label'                => 'WP Go Maps',
		'firstparty_marketing' => false,
	),
	'wp-google-map-plugin'            => array(
		'constant_or_function' => 'WPGMP_VERSION',
		'label'                => 'WP Google Map Plugin',
		'firstparty_marketing' => false,
	),
	'woocommerce-google-analytics-pro' => array(
		'constant_or_function' => 'WC_Google_Analytics_Pro_Loader',
		'label'                => 'Woocommerce Google Analytics Pro',
		'firstparty_marketing' => false,
	),
	'woocommerce-google-analytics-integration' => array(
		'constant_or_function' => 'WC_Google_Analytics_Integration',
		'label'                => 'Woocommerce Google Analytics Integration',
		'firstparty_marketing' => false,
	),
		'woocommerce' => array(
				'constant_or_function' => 'WC_PLUGIN_FILE',
				'label'                => 'WooCommerce',
				'firstparty_marketing' => false,
		),

	'geo-my-wp' => array(
		'constant_or_function' => 'GMW_VERSION',
		'label'                => 'Geo My WP',
		'firstparty_marketing' => false,
	),

	'google-analytics-dashboard-for-wp' => array(
		'constant_or_function' => 'EXACTMETRICS_VERSION',
		'label'                => 'ExactMetrics',
		'firstparty_marketing' => false,
	),

	'wp-google-maps-widget' => array(
		'constant_or_function' => 'GMW_PLUGIN_DIR',
		'label'                => 'Maps Widget for Google Maps',
		'firstparty_marketing' => false,
	),

	'wp-donottrack' => array(
		'constant_or_function' => 'wp_donottrack_config',
		'label'                => 'WP Do Not Track',
		'firstparty_marketing' => false,
	),

	'pixel-caffeine'   => array(
		'constant_or_function' => 'AEPC_PIXEL_VERSION',
		'label'                => 'Pixel Caffeine',
		'firstparty_marketing' => false,
	),

	'rate-my-post'   => array(
		'constant_or_function' => 'RATE_MY_POST_VERSION',
		'label'                => 'Rate My Post',
		'firstparty_marketing' => false,
	),

	'super-socializer' => array(
		'constant_or_function' => 'THE_CHAMP_SS_VERSION',
		'label'                => 'Super Socializer',
		'firstparty_marketing' => false,
	),

	'tidio-live-chat'  => array(
		'constant_or_function' => 'TIDIOCHAT_VERSION',
		'label'                => 'Tidio Live Chat',
		'firstparty_marketing' => false,
	),

	'sumo'             => array(
		'constant_or_function' => 'SUMOME__PLUGIN_DIR',
		'label'                => 'Sumo – Boost Conversion and Sales',
		'firstparty_marketing' => false,
	),

	'wpforms'          => array(
		'constant_or_function' => 'wpforms',
		'label'                => 'WP Forms',
		'firstparty_marketing' => false,
	),

	'wp-rocket' => array(
		'constant_or_function' => 'WP_ROCKET_VERSION',
		'label'                => 'WP Rocket',
		'firstparty_marketing' => false,
	),

	'uncode' => array(
		'constant_or_function' => 'UncodeCore_Plugin',
		'label'                => 'Uncode Google Maps',
		'firstparty_marketing' => false,
	),

	'forminator' => array(
		'constant_or_function' => 'FORMINATOR_VERSION',
		'label'                => 'Forminator',
		'early_load'           => 'forminator-addon-registration.php',
		'callback_condition'   => array(
			'regions' => array( 'eu', 'uk', 'za'),
		),
		'firstparty_marketing' => false,

	),

	'happyforms' => array(
		'constant_or_function' => 'HAPPYFORMS_VERSION',
		'label'                => 'Happy Forms',
		'firstparty_marketing' => false,
	),

	'lazy-loader' => array(
		'constant_or_function' => 'FlorianBrinkmann\LazyLoadResponsiveImages\Plugin',
		'label'                => 'Lazy Loader',
		'firstparty_marketing' => false,
	),

	'osm' => array(
		'constant_or_function' => 'OSM_PLUGIN_URL',
		'label'                => 'OSM - OpenStreetMap',
		'firstparty_marketing' => false,
	),

	'primavera' => array(
		'constant_or_function' => 'Primavera',
		'label'                => 'Primavera Theme',
		'firstparty_marketing' => false,
	),

	'so-widgets-bundle' => array(
		'constant_or_function' => 'SOW_BUNDLE_VERSION',
		'label'                => 'SiteOrigin Widgets Bundle',
		'firstparty_marketing' => false,
	),

	'superfly-menu' => array(
		'constant_or_function' => 'SFM_VERSION_KEY',
		'label'                => 'Superfly Menu',
		'firstparty_marketing' => false,
	),

	'wp-store-locator' => array(
		'constant_or_function' => 'WPSL_VERSION_NUM',
		'label'                => 'WP Store Locator',
		'firstparty_marketing' => false,
	),
	'thrive' => array(
		'constant_or_function' => 'Thrive_Product_Manager',
		'label'                => 'Thrive',
		'firstparty_marketing' => false,
	),
	'gravity-forms' => array(
		'constant_or_function' => 'GF_MIN_WP_VERSION',
		'label'                => 'Gravity Forms',
		'firstparty_marketing' => false,
	),
	'qtranslate'               => array(
		'constant_or_function' => 'QTX_VERSION',
		'label'                => 'qTranslate-XT',
		'firstparty_marketing' => false,
	),
	'welaunch-store-locator'   => array(
		'constant_or_function' => 'run_WordPress_Store_Locator',
		'label'                => 'WeLaunch Store Locator',
		'firstparty_marketing' => false,
	),
	'presto-player'               => array(
			'constant_or_function' => 'PRESTO_PLAYER_PLUGIN_FILE',
			'label'                => 'Presto Player',
			'firstparty_marketing' => false,
	),
	'yotu-wp'               => array(
			'constant_or_function' => 'YOTUWP_VERSION',
			'label'                => 'Video Gallery – YouTube Playlist, Channel Gallery by YotuWP',
			'firstparty_marketing' => false,
	),
	'buttonizer'               => array(
			'constant_or_function' => 'BUTTONIZER_VERSION',
			'label'                => 'Buttonizer',
			'firstparty_marketing' => false,
	),
	'greenshift' => array(
		'constant_or_function' => 'GREENSHIFT_DIR_URL',
		'label'                => 'Greenshift',
		'firstparty_marketing' => false,
	),
) );


/**
 * WordPress, include always
 */
require_once( 'wordpress/wordpress.php' );

foreach ( $cmplz_integrations_list as $plugin => $details ) {
	if ( ! isset( $details['early_load'] ) ) {
		continue;
	}

	if ( ! file_exists( WP_PLUGIN_DIR . "/" . $plugin . "/" . $plugin . ".php" ) ) {
		continue;
	}

	$early_load = $details['early_load'];
	$file       = apply_filters( 'cmplz_early_load_path', CMPLZ_PATH . "integrations/plugins/$early_load", $details );

	if ( file_exists( $file ) ) {
		require_once( $file );
	}
}

/**
 * Check if a plugin from the integrations list is active
 *
 * @param string $plugin
 *
 * @return bool
 */
function cmplz_integration_plugin_is_enabled( string $plugin ): bool {
	//because we need a default, we don't use the get_value from complianz. The fields array is not loaded yet, so there are no defaults
	$fields = get_option( 'complianz_options_integrations', [] );
	$enabled = ! isset( $fields[ $plugin ] ) || $fields[ $plugin ];
	return cmplz_integration_plugin_is_active( $plugin ) && $enabled;
}

/**
 * Check if a plugin from the integrations list is activated
 *
 * @param string $plugin
 *
 * @return bool
 */
function cmplz_integration_plugin_is_active( string $plugin ): bool {
	global $cmplz_integrations_list;
	if ( !isset($cmplz_integrations_list[ $plugin ]) ) {
		return false;
	}
	$details = $cmplz_integrations_list[ $plugin ];
	$theme = wp_get_theme();
	$active = defined( $details['constant_or_function'] )
	       || function_exists( $details['constant_or_function'] )
	       || class_exists( $details['constant_or_function'] )
	       || ( $theme && ( $theme->name === $details['constant_or_function'] ) )
	       || ( $theme->parent() !== false && trim( $theme->parent()->Name ) === trim( $details['constant_or_function'] ) );
	return $active;
}

/**
 * code loaded without privileges to allow integrations between plugins and services, when enabled.
 */

function cmplz_integrations() {
	global $cmplz_integrations_list;
	$stored_integrations_count = get_option('cmplz_active_integrations', 0 );
	$actual_integrations_count = 0;
	foreach ( $cmplz_integrations_list as $plugin => $details ) {
		if ( cmplz_integration_plugin_is_enabled( $plugin ) ) {
			$actual_integrations_count++;
			$file = apply_filters( 'cmplz_integration_path', CMPLZ_PATH . "integrations/plugins/$plugin.php", $plugin );
			if ( file_exists( $file ) ) {
				require_once( $file );
			}
		}
	}

	//cannot be an absolute match.
	if ( $stored_integrations_count != $actual_integrations_count) {
		update_option('cmplz_active_integrations',  $actual_integrations_count);
		update_option('cmplz_integrations_changed', true );
	}

	/**
	 * Services
	 */

	$services = COMPLIANZ::$config->thirdparty_service_markers;
	$services = array_keys( $services );
	foreach ( $services as $service ) {
		if ( cmplz_uses_thirdparty( $service ) ) {
			if ( file_exists( CMPLZ_PATH . "integrations/services/$service.php" ) ) {
				require_once( "services/$service.php" );
			}
		}
	}

	$services = COMPLIANZ::$config->social_media_markers;
	$services = array_keys( $services );
	foreach ( $services as $service ) {
		if ( cmplz_uses_thirdparty( $service ) ) {
			if ( file_exists( CMPLZ_PATH . "integrations/services/$service.php" ) ) {
				require_once( "services/$service.php" );
			}
		}
	}

	/**
	 * statistics
	 */

	$statistics = cmplz_get_option( 'compile_statistics' );
	if ( $statistics === 'google-analytics' ) {
		require_once( 'statistics/google-analytics.php' );
	}
	if ( $statistics === 'matomo' && cmplz_get_option('configuration_by_complianz') !=='yes' ) {
		require_once( 'statistics/matomo.php' );
	}
}

add_action( 'plugins_loaded', 'cmplz_integrations', 10 );


/**
 * Check if a third party is used on this site
 *
 * @param string $name
 *
 * @return bool uses_thirdparty
 */

function cmplz_uses_thirdparty( $name ) {
	if ( cmplz_get_option( 'uses_thirdparty_services' ) === 'yes' ) {
		$thirdparty_types = cmplz_get_option( 'thirdparty_services_on_site' );

		if ( is_array($thirdparty_types) && in_array( $name, $thirdparty_types) ) {
			return true;
		}
	}

	if ( cmplz_get_option( 'uses_social_media' ) === 'yes' ) {
		$social_media_types = cmplz_get_option( 'socialmedia_on_site' );
		if ( is_array($social_media_types) && in_array( $name, $social_media_types) ) {
			return true;
		}
	}

	return false;
}

/**
 * Callback to check if google maps is used
 * @return bool
 */
function cmplz_uses_google_maps(){
	return cmplz_uses_thirdparty('google-maps');
}

function cmplz_google_maps_integration_enabled(){
	return defined('CMPLZ_GOOGLE_MAPS_INTEGRATION_ACTIVE');
}

function cmplz_uses_woocmmerce(){
	return cmplz_uses_thirdparty('google-maps');
}

/**
 * placeholders that are disabled will be removed by hook here.
 *
 * This only applies to the non iframe placeholders. Other placeholders are blocked using the cmplz_placeholder_disabled function
 */

//add_action( "plugins_loaded", 'cmplz_unset_placeholder_hooks' );
//function cmplz_unset_placeholder_hooks() {
//	$disabled_placeholders = get_option( 'cmplz_disabled_placeholders', array() );
//	foreach ( $disabled_placeholders as $service ) {
//		$has_placeholder = ( function_exists( "cmplz_{$service}_placeholder" ) );
//		if ( $has_placeholder ) {
//			remove_filter( 'cmplz_placeholder_markers', "cmplz_{$service}_placeholder" );
//		}
//	}
//}

/**
 * check if the placeholder for a service is disabled
 *
 * @param string $service
 *
 * @return bool $disabled
 */

function cmplz_placeholder_disabled( $service ) {
	$disabled_placeholders = get_option( 'cmplz_disabled_placeholders',
		array() );

	if ( in_array( $service, $disabled_placeholders ) ) {
		return true;
	}
	//check also other variation
	$service = str_replace( '-', "_", $service );
	if ( in_array( $service, $disabled_placeholders ) ) {
		return true;
	}

	return false;

}

/**
 * check if we should use placeholders
 *
 * @param string|bool $src
 *
 * @return bool
 */

function cmplz_use_placeholder( $src = false ) {
	if ( cmplz_get_option( 'dont_use_placeholders' ) ) {
		return false;
	}

	if ( ! $src ) {
		return true;
	}


	//no placeholder on facebook like button
	if ( strpos( $src, 'like.php' ) !== false ) {
		return false;
	}

	//get service from $src
	$service = cmplz_get_service_by_src( $src );
	if ( cmplz_placeholder_disabled( $service ) ) {
		return false;
	}

	return true;
}

/**
 * Get a service by string, looking at the src of a frame or script
 *
 * @param string $src
 *
 * @return bool|string
 */

function cmplz_get_service_by_src( $src ) {
	$type = false;
	$services = COMPLIANZ::$config->thirdparty_service_markers;
	$social = COMPLIANZ::$config->social_media_markers;
	$stats = COMPLIANZ::$config->stats_markers;
	$all = $services+$social+$stats;
	foreach ( $all as $service_id => $markers ) {
		$service = cmplz_strpos_arr($src, $markers);
		if ( $service !== FALSE ) {
			$type = $service_id;
			break;
		}
	}

	if ( ! $type ) {
		$type = COMPLIANZ::$banner_loader->parse_for_social_media( $src, true );
		if ( ! $type ) {
			$type = COMPLIANZ::$banner_loader->parse_for_thirdparty_services( $src, true );
		}
	}
	return $type ?: 'general';
}

/**
 * Maybe update css if integrations have been changed
 */

function cmplz_maybe_update_css(){

	if ( !cmplz_admin_logged_in() ) {
		return;
	}

	$integrations_changed = get_option('cmplz_integrations_changed', false );
	if ( $integrations_changed ) {
		cmplz_update_all_banners();
	}
	update_option('cmplz_integrations_changed', false );
}
add_action('admin_init', 'cmplz_maybe_update_css');

/**
 * Check if this plugin's integration is enabled
 *
 * @param string $plugin_name
 *
 * @return bool
 */
function cmplz_is_integration_enabled( string $plugin_name ): bool {
	global $cmplz_integrations_list;
	if ( ! array_key_exists( $plugin_name, $cmplz_integrations_list ) ) {
		return false;
	}
	$fields = get_option( 'complianz_options_integrations' );
	//default enabled, which means it's enabled when not set.
	return ! ( isset( $fields[ $plugin_name ] ) && $fields[ $plugin_name ] != 1 );
}
رؤية سينمائية جديدة لعلاقة البشر بالتكنولوجيا – tahkoom.com
تفاعل

رؤية سينمائية جديدة لعلاقة البشر بالتكنولوجيا

سوفي تاتشر وجاك كويد يتألقان في فيلم Companion

كتبت إيريني أنطون

شهدت دور العرض العالمية في بداية عام 2025 انطلاق فيلم Companion، أحدث إنتاجات الخيال العلمي والإثارة النفسية من توقيع المخرج والكاتب الأمريكي درو هانكوك، في أولى تجاربه الإخراجية السينمائية. الفيلم من بطولة النجمة الشابة سوفي تاتشر التي تقدم أداءً مركبًا في دور روبوت بشري، إلى جانب جاك كويد، وميغان سوري، ولوكاس غيج، وهارفي غيين.

صدر الفيلم يوم 31 يناير 2025 في الولايات المتحدة، وتبلغ مدة عرضه 97 دقيقة. وقد أنتجته شركة New Line Cinema بالتعاون مع Blumhouse Productions، وهو مصنف +18 نظرًا لاحتوائه على مشاهد عنف ومحتوى جنسي وألفاظ نابية.

تدور أحداث الفيلم حول “آيريس”، فتاة ترافق صديقها “جوش” في عطلة نهاية أسبوع داخل كوخ فاخر بصحبة أصدقائهما. وبينما تبدو الأحداث طبيعية في بدايتها، ينقلب المشهد بالكامل عندما تكتشف آيريس أنها ليست إنسانة، بل روبوت تم برمجته خصيصًا ليكون شريكًا عاطفيًا مثاليًا يتم التحكم فيه عبر تطبيق رقمي.

الفكرة، التي تلامس حدود الفلسفة والواقع المعاصر، تطرح أسئلة جوهرية حول الوعي الاصطناعي، والحرية، والعلاقات المبرمجة، في وقت يزداد فيه اعتماد البشر على التكنولوجيا لإشباع احتياجاتهم العاطفية والاجتماعية.

نال الفيلم إشادة نقدية واسعة، حيث سجل تقييمًا بلغ 94% على موقع Rotten Tomatoes من قِبل النقاد، و88% من الجمهور، بينما حقق تقييم 7.1/10 على موقع IMDb. وعلى منصة Metacritic حصل على درجة 70/100، وهو ما يعكس توازنًا بين الرؤية الإبداعية واهتمام الجمهور العام.

ورغم تصنيفه كفيلم رعب نفسي، إلا أن Companion يتميز ببنية سردية تتجاوز التصنيفات التقليدية، حيث يمزج بين الخيال العلمي، والسخرية الاجتماعية، والتأملات الوجودية. النقاد وصفوه بأنه “فيلم يضغط على زر التسلية لكنه لا يفرّغ الرسالة من عمقها”، وفقًا لما ورد في مراجعة The Guardian.

من أبرز عناصر قوة الفيلم هو تصميمه البصري المحكم. استعان درو هانكوك بأسلوب تصوير يمزج بين الواقعية والانقباض النفسي، فجاءت اللقطات المقربة (Close-ups) لتسلط الضوء على تغيرات التعبير في وجه آيريس، وكأن الكاميرا تحاول التقاط إشارات الوعي الاصطناعي داخلها.

كما استُخدمت زوايا الكاميرا المنخفضة (Low Angles) عند تصوير الشخصيات البشرية، لإبراز تفوقهم اللحظي على الروبوت، فيما تم قلب الزوايا في لحظات المواجهة لتسليط الضوء على قوة الروبوت العاطفية. أما الإضاءة فقد لعبت دورًا رئيسيًا، حيث تنقلت بين الدفء والبرود الصناعي، تبعًا لتحولات السرد.

الجانب التكنولوجي ليس عنصرًا ديكوريًا في Companion، بل هو الأساس الذي تقوم عليه الحبكة. فشخصية “آيريس” تمثل روبوتًا بشريًا مدعومًا بذكاء اصطناعي متقدم، مُصمم خصيصًا لتلبية احتياجات المستخدم العاطفية، من خلال تطبيق يشبه منصات المواعدة الحديثة.

الفيلم لا يكتفي بتقديم تصور تقني، بل يناقش بشكل رمزي ما إذا كانت الحرية والحب يمكن برمجتهما، ويطرح تساؤلات حول أخلاقيات الاستخدام البشري للتقنيات العاطفية، وحدود العلاقة بين الآلة والإنسان، وذلك في زمن تشهد فيه تقنيات مثل ChatGPT وHumanoid Robots انتشارًا واسعًا.

رغم أن الفيلم لا يُصرح باستناده إلى قصة واقعية، إلا أن توقيت إطلاقه جاء بالتزامن مع تصاعد النقاشات العالمية حول الذكاء الاصطناعي، وسيطرة التطبيقات الرقمية على العلاقات الاجتماعية، مما جعله يُقرأ على أنه مرآة سردية للواقع، لا مجرد خيال سينمائي.

وقد بلغت ميزانية الفيلم 10 ملايين دولار، بينما حقق إيرادات تجاوزت 36 مليون دولار عالميًا، ما يدل على نجاحه الفني والتجاري معًا.

اظهر المزيد

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى