File: /var/www/vhosts/uyarreklam.com.tr/httpdocs/class-gtag-events.php.tar
wp-content/plugins/google-analytics-for-wordpress/includes/frontend/events/class-gtag-events.php 0000644 00000007032 15154755270 0037474 0 ustar 00 var/www/vhosts/uyarreklam.com.tr/httpdocs <?php
/**
* Events JS class.
*
* @since 6.0.0
*
* @package MonsterInsights
* @subpackage Events
* @author Chris Christoff
*/
// Exit if accessed directly
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
class MonsterInsights_Gtag_Events {
/**
* Holds the name of the events type.
*
* @since 6.0.0
* @access public
*
* @var string $name Name of the events type.
*/
public $name = 'js';
/**
* Version of the events class.
*
* @since 6.0.0
* @access public
*
* @var string $version Version of the events class.
*/
public $version = '1.0.0';
/**
* Primary class constructor.
*
* @since 6.0.0
* @access public
*/
public function __construct() {
add_action( 'wp_enqueue_scripts', array( $this, 'output_javascript' ), 9 );
}
/**
* Outputs the Javascript for JS tracking on the page.
*
* @return string
* @since 6.0.0
* @access public
*
*/
public function output_javascript() {
// Affiliate Links
$inbound_paths = monsterinsights_get_option( 'affiliate_links', array() );
if ( ! is_array( $inbound_paths ) ) {
$inbound_paths = array();
} else {
foreach ( $inbound_paths as $index => $pair ) {
// if empty pair, unset and continue
if ( empty( $pair['path'] ) ) {
unset( $inbound_paths[ $index ] );
continue;
}
// if path does not start with a /, start it with that
$path = ! empty( $pair['path'] ) ? $pair['path'] : 'aff';
$inbound_paths[ $index ]['path'] = trim( $path );
// js escape the link label
$label = ! empty( $pair['label'] ) ? $pair['label'] : 'aff';
$inbound_paths[ $index ]['label'] = esc_js( trim( $label ) );
}
}
$inbound_paths = wp_json_encode( $inbound_paths );
// Get download extensions to track
$download_extensions = monsterinsights_get_option( 'extensions_of_files', '' );
$download_extensions = explode( ',', str_replace( '.', '', $download_extensions ) );
if ( ! is_array( $download_extensions ) ) {
$download_extensions = array( $download_extensions );
}
$i = 0;
foreach ( $download_extensions as $extension ) {
$download_extensions[ $i ] = esc_js( trim( $extension ) );
$i ++;
}
$download_extensions = implode( ",", $download_extensions );
$hash_tracking = monsterinsights_get_option( 'hash_tracking', false ) ? 'true' : 'false';
$suffix = ( defined( 'WP_DEBUG' ) && WP_DEBUG ) || ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
if ( ! file_exists( MONSTERINSIGHTS_PLUGIN_DIR . 'assets/js/frontend-gtag.min.js' ) ) {
$suffix = '';
}
wp_enqueue_script( 'monsterinsights-frontend-script', plugins_url( 'assets/js/frontend-gtag' . $suffix . '.js', MONSTERINSIGHTS_PLUGIN_FILE ), array(), monsterinsights_get_asset_version(), false );
$use_async = apply_filters( 'monsterinsights_frontend_gtag_script_async', true );
if ( $use_async ) {
wp_script_add_data( 'monsterinsights-frontend-script', 'strategy', 'async' );
}
monsterinsights_localize_script(
'monsterinsights-frontend-script',
'monsterinsights_frontend',
array(
'js_events_tracking' => 'true',
'download_extensions' => $download_extensions, /* Let's get the extensions to track */
'inbound_paths' => $inbound_paths, /* Let's get the internal paths to track */
'home_url' => home_url(), /* Let's get the url to compare for external/internal use */
'hash_tracking' => $hash_tracking, /* Should hash track */
'v4_id' => monsterinsights_get_v4_id_to_output(), /* V4 ID used for tracking */
)
);
}
}