1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177: 178: 179: 180: 181: 182: 183: 184: 185: 186: 187: 188: 189: 190: 191: 192: 193: 194: 195: 196: 197: 198: 199: 200: 201: 202: 203: 204: 205: 206: 207: 208: 209: 210: 211: 212: 213: 214: 215: 216: 217: 218: 219: 220:
<?php
class Inbound_Asset_Loader {
static $load_assets;
static function load_inbound_assets() {
self::$load_assets = true;
add_action('admin_enqueue_scripts', array(__CLASS__, 'load_admin_scripts'), 101);
add_action('wp_enqueue_scripts', array(__CLASS__, 'register_scripts_and_styles'), 101);
}
static function load_admin_scripts(){
wp_enqueue_style('inbound-global-styles', INBOUNDNOW_SHARED_URLPATH . 'assets/css/admin/global-inbound-admin.css');
wp_enqueue_style('inbound-global-css', INBOUNDNOW_SHARED_URLPATH . 'assets/css/global-admin.css');
wp_enqueue_style('inbound-metaboxes', INBOUNDNOW_SHARED_URLPATH . 'assets/css/admin/inbound-metaboxes.css');
$screen = get_current_screen();
self::enqueue_shared_file('jquery-cookie', 'assets/js/global/jquery.cookie.js', array( 'jquery' ) );
self::enqueue_shared_file('jquery-total-storage', 'assets/js/global/jquery.total-storage.min.js', array( 'jquery' ));
if ( isset($screen) && $screen->id == 'wp-call-to-action') {
self::enqueue_shared_file('image-picker-js', 'assets/js/admin/image-picker.js');
self::enqueue_shared_file('image-picker-css', 'assets/css/admin/image-picker.css');
}
if ( isset($screen) && $screen->base == 'post') {
wp_enqueue_script('inbound-editor-js', INBOUNDNOW_SHARED_URLPATH . 'assets/js/admin/editor.js' , array() , null , true );
}
}
static function register_scripts_and_styles() {
global $post;
global $wp_scripts;
$store = false;
self::enqueue_shared_file('inbound-analytics', 'assets/js/frontend/analytics/inboundAnalytics.min.js', array( 'jquery' ), 'inbound_settings', self::localize_lead_data() , false);
if (is_array($store)) {
foreach ( $store as $handle ) {
wp_enqueue_script( $handle );
}
}
}
static function enqueue_shared_file($name, $path, $deps = array(), $localize_var = null, $localize_array = array() , $in_footer = true ) {
$is_script = false;
$deps = (empty($deps)) ? array() : $deps;
$url = INBOUNDNOW_SHARED_URLPATH . $path;
$file = INBOUNDNOW_SHARED_PATH . $path;
$file_type = strpos($path, '.js');
if (!(false === $file_type)) { $is_script = true; }
if(file_exists($file)) {
if($is_script) {
wp_register_script($name, $url, $deps , null , $in_footer );
wp_enqueue_script($name);
if ($localize_var != null) {
wp_localize_script( $name , $localize_var, $localize_array );
}
} else {
wp_register_style($name, $url);
wp_enqueue_style($name);
}
}
}
static function localize_lead_data() {
global $post , $inbound_settings, $wp_query;
$id_check = false;
$page_tracking = 'on';
$search_tracking = 'on';
$comment_tracking = 'on';
$post_type = isset($post) ? get_post_type( $post ) : null;
$current_page = "http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"];
$ip_address = (isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : '0.0.0.0.0';
$lead_id = (isset($_COOKIE['wp_lead_id'])) ? $_COOKIE['wp_lead_id'] : false;
$lead_email = (isset($_COOKIE['wp_lead_email'])) ? $_COOKIE['wp_lead_email'] : false;
$lead_uid = (isset($_COOKIE['wp_lead_uid'])) ? $_COOKIE['wp_lead_uid'] : false;
$custom_map_values = array();
$custom_map_values = apply_filters( 'inboundnow_custom_map_values_filter' , $custom_map_values);
if ( $wp_query->is_home && $wp_query->post_count > 1 ) {
$post_id = 'blog_home';
$page = get_page_by_path( 'blog' );
$post_id = (isset($page->ID)) ? $page->ID : $post_id;
}
else if ( $wp_query->post_count == 1 ) {
$current_page_id = $wp_query->get_queried_object_id();
$post_id = $current_page_id;
}
else if ( is_archive() ) {
$post_id = wp_leads_get_page_final_id($current_page);
} else if (strpos($_SERVER['REQUEST_URI'], "preview") !== false) {
$post_id = 'preview.php';
}
$inbound_settings['inbound-analytics-rules'] = ( isset( $inbound_settings['inbound-analytics-rules']) ) ? $inbound_settings['inbound-analytics-rules'] : array();
$lead_page_view_tracking = ( isset( $inbound_settings['inbound-analytics-rules']['page-tracking']) && $inbound_settings['inbound-analytics-rules']['page-tracking'] == 'off' ) ? false : true;
$lead_search_tracking = self::get_lead_setting( 'wpl-main-search-tracking', 1);
$lead_comment_tracking = self::get_lead_setting( 'wpl-main-comment-tracking', 1);
if (!$lead_search_tracking || !class_exists( 'Inbound_Leads_Plugin' ) ) {
$search_tracking = 'off';
}
if (!$lead_comment_tracking || !class_exists( 'Inbound_Leads_Plugin' ) ) {
$comment_tracking = 'off';
}
if (!$lead_page_view_tracking || isset($_GET['inbound-do-not-track']) || !class_exists( 'Inbound_Leads_Plugin' ) ) {
$page_tracking = 'off';
}
$lead_data_array = array();
$lead_data_array['lead_id'] = ($lead_id) ? $lead_id : null;
$lead_data_array['lead_email'] = ($lead_email) ? $lead_email : null;
$lead_data_array['lead_uid'] = ($lead_uid) ? $lead_uid : null;
$lead_data_array['lead_nonce'] = ($lead_id) ? wp_create_nonce('inbound_lead_' . $lead_id . '_nonce') : null;
$time = current_time( 'timestamp', 0 );
$wordpress_date_time = date("Y/m/d G:i:s", $time);
if (class_exists('Landing_Pages_Variations')) {
$variation = Landing_Pages_Variations::get_current_variation_id();
} else if( function_exists('lp_ab_testing_get_current_variation_id') ) {
$variation = lp_ab_testing_get_current_variation_id();
}
$variation = (isset($variation)) ? $variation : 0;
$inbound_localized_data = array(
'post_id' => (isset($post_id)) ? $post_id : 0,
'post_type' => (isset($post->post_type)) ? $post->post_type : 'na' ,
'variation_id' => $variation,
'ip_address' => $ip_address,
'wp_lead_data' => $lead_data_array,
'admin_url' => admin_url('admin-ajax.php'),
'track_time' => $wordpress_date_time,
'post_type' => $post_type,
'page_tracking' => $page_tracking,
'search_tracking' => $search_tracking,
'comment_tracking' => $comment_tracking,
'custom_mapping' => $custom_map_values,
'is_admin' => current_user_can( 'manage_options' ),
'ajax_nonce' => wp_create_nonce(SECURE_AUTH_KEY)
);
return apply_filters( 'inbound_analytics_localized_data' , $inbound_localized_data);
}
public static function get_lead_setting( $field_id , $default ) {
global $inbound_settings;
$value = $default;
if (defined('INBOUND_PRO_CURRENT_VERSION')) {
$field_id = str_replace('wpl-main-' , '', $field_id );
$value = (isset($inbound_settings['leads'][$field_id])) ? $inbound_settings['leads'][$field_id] : $default;
} else {
$value = get_option( $field_id, $default );
}
return $value;
}
}
Inbound_Asset_Loader::load_inbound_assets();