Server IP : 192.64.118.117 / Your IP : 3.144.216.188 Web Server : LiteSpeed System : Linux premium56.web-hosting.com 4.18.0-513.24.1.lve.1.el8.x86_64 #1 SMP Thu May 9 15:10:09 UTC 2024 x86_64 User : thecgapy ( 1160) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/thecgapy/mobilecreationz.com/wp-content/plugins/go_pricing/includes/front/ |
Upload File : |
<?php /** * Front core class */ // Prevent direct call if ( !defined( 'WPINC' ) ) die; if ( !class_exists( 'GW_GoPricing' ) ) die; // Class class GW_GoPricing_Front { protected static $instance = null; protected $globals; protected static $plugin_version; protected static $db_version; protected static $plugin_prefix; protected static $plugin_slug; protected $plugin_file; protected $plugin_base; protected $plugin_dir; protected $plugin_path; protected $plugin_url; /** * Initialize the class * * @return void */ public function __construct() { $this->globals = GW_GoPricing::instance(); self::$plugin_version = $this->globals['plugin_version']; self::$db_version = $this->globals['db_version']; self::$plugin_prefix = $this->globals['plugin_prefix']; self::$plugin_slug = $this->globals['plugin_slug']; $this->plugin_url = $this->globals['plugin_url']; $this->plugin_path = $this->globals['plugin_path']; // Enqueue public assets (scripts & styles) add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_public_assets' ) ); // Enqueue pluign frontend scripts add_action( 'go_pricing/enque_public_scripts', array( $this, 'enqueue_public_styles' ) ); // Enqueue pluing frontend styles add_action( 'go_pricing/enque_public_scripts', array( $this, 'enqueue_public_scripts' ) ); // Live preview add_action( 'init', array( $this, 'live_preview_safe_init' ) ); add_action( 'wp_head', array( $this, 'live_preview_safe' ) ); } /** * Return an instance of this class * * @return object */ public static function instance() { if ( self::$instance == null ) self::$instance = new self; return self::$instance; } /** * Enqueue public scripts & styles depending on the settings * * @return void */ public function enqueue_public_assets() { $settings = get_option( self::$plugin_prefix . '_table_settings', array() ); global $post; global $go_pricing_preview; if ( isset( $go_pricing_preview ) ) { do_action( 'go_pricing/enque_public_scripts' ); return; } // Set to global if not set // 3.3.8+ default value: auto // 3.3.10 + default value: global (auto is not reliable) if ( empty( $settings['public_assets'] ) ) $settings['public_assets'] = 'global'; switch( $settings['public_assets'] ) { // Auto detect shortcode case 'auto': if ( !GW_GoPricing_Helper::has_shortcode( 'go_pricing', array( 'go_pricing', 'go-pricing' ) ) ) return; break; // Manual restriction case 'manual' : if ( $post instanceof WP_Post && isset( $settings['plugin-pages'] ) && isset( $settings['plugin-pages-rule'] ) ) { $ids = trim( preg_replace( '/([^0-9][^,]{0})+/', ',', $settings['plugin-pages'] ), ',' ); $ids = explode( ',', $ids ); if ( $settings['plugin-pages-rule'] == 'in' ) { if ( !in_array( $post->ID, $ids ) ) return; } else { if ( in_array( $post->ID, $ids ) ) return; } } break; } do_action( 'go_pricing/enque_public_scripts' ); } /** * Enqueue public styles * * @return void */ public function enqueue_public_styles() { $general_settings = get_option( self::$plugin_prefix . '_table_settings', array() ); wp_enqueue_style( self::$plugin_slug . '-styles', $this->plugin_url . 'assets/css/go_pricing_styles.css', false, self::$plugin_version ); if ( !empty( $general_settings['custom-css'] ) ) wp_add_inline_style( self::$plugin_slug . '-styles', $general_settings['custom-css'] ); } /** * Register public scripts * * @return void */ public function enqueue_public_scripts() { $general_settings = get_option( self::$plugin_prefix . '_table_settings', array() ); $gmap_api_key = isset( $general_settings['gmap-apikey'] ) ? $general_settings['gmap-apikey'] : ''; $in_footer = empty( $general_settings['js-in-header'] ); // Option to disable TweenMax if ( empty( $general_settings['disable-gs'] ) ) { wp_register_script( 'gw-tweenmax', 'https://cdnjs.cloudflare.com/ajax/libs/gsap/1.11.2/TweenMax.min.js', array(), null, false ); // From WP 4.5 add compatibility mode if ( function_exists( 'wp_add_inline_script' ) ) { wp_add_inline_script( 'gw-tweenmax', 'var oldGS=window.GreenSockGlobals,oldGSQueue=window._gsQueue,oldGSDefine=window._gsDefine;window._gsDefine=null;delete(window._gsDefine);var gwGS=window.GreenSockGlobals={};', true ); wp_add_inline_script( 'gw-tweenmax', 'try{window.GreenSockGlobals=null;window._gsQueue=null;window._gsDefine=null;delete(window.GreenSockGlobals);delete(window._gsQueue);delete(window._gsDefine);window.GreenSockGlobals=oldGS;window._gsQueue=oldGSQueue;window._gsDefine=oldGSDefine;}catch(e){}' ); } wp_enqueue_script( 'gw-tweenmax' ); } wp_register_script( self::$plugin_slug . '-scripts', $this->plugin_url . 'assets/js/go_pricing_scripts.js', array( 'jquery' ), self::$plugin_version, $in_footer ); wp_enqueue_script( self::$plugin_slug . '-scripts' ); wp_register_script( self::$plugin_slug . '-map', 'https://maps.googleapis.com/maps/api/js?key=' . esc_attr( $gmap_api_key ), array(), null, false ); wp_register_script( self::$plugin_slug . '-gomap', $this->plugin_url . 'assets/lib/js/jquery.gomap-1.3.2.min.js', array( 'jquery', self::$plugin_slug . '-map' ), self::$plugin_version, false ); global $wp_version; if ( version_compare( $wp_version, 3.6, '<' ) ) wp_register_script( self::$plugin_slug . '-mediaelementjs', $this->plugin_url . 'assets/plugins/js/mediaelementjs/mediaelement-and-player.min.js', array( 'jquery' ), self::$plugin_version, $in_footer ); } /** * Safe mode for live preview * * @return void */ public function live_preview_safe_init() { ob_start(); } public function live_preview_safe() { if ( !isset( $_GET['go_pricing_preview_id'] ) ) return; $general_settings = get_option( self::$plugin_prefix . '_table_settings' ); if ( !isset( $general_settings['safe-preview'] ) ) return; $_GET['id'] = $_GET['go_pricing_preview_id'] ; add_filter('show_admin_bar', '__return_false'); include_once ( $this->plugin_path . 'includes/preview.php' ); } } ?>