HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/posscale/public_html/WP-POS/wp-content/themes/angle/functions/wpzoom/wpzoom.php
<?php
/*
Plugin Name: ZOOM Framework
Plugin URI: https://www.wpzoom.com/features/
Description: ZOOM Framework is a platform which comes packaged with every WPZOOM Theme.
Version: 1.9.16
Author: WPZOOM
Author URI: https://www.wpzoom.com
Text Domain: wpzoom
License: GPLv3 or later
*/

/**
 * WPZOOM Framework Core & Heart
 *
 * @package WPZOOM
 */
class WPZOOM {
	public static $wpzoomVersion = '1.9.16';
	public static $wpzoomPath;

	public static $assetsPath;

	public static $theme_raw_name;

	public static $themeName;
	public static $themePath;
	public static $themeVersion;

	public static $config;
	public static $themeData;

	public static $tf;

	/**
	 * Initializes WPZOOM framework
	 *
	 * @return void
	 */
	public static function init() {
		self::load_theme_data();
		option::init(); // 1

		add_action( 'after_setup_theme', array( 'option', 'init' ), 15 ); // 2
		add_action( 'after_setup_theme', array( __CLASS__, 'locale' ) );

		add_action( 'admin_bar_menu', array( __CLASS__, 'add_node_to_admin_bar' ), 1000 );
	}

	/**
	 * WordPress localization
	 *
	 * @return void
	 */
	public static function locale() {
		load_theme_textdomain( 'wpzoom', get_template_directory() . '/languages' );

		$locale     = get_locale();
		$localeFile = get_template_directory() . "/languages/$locale.php";

		if ( is_readable( $localeFile ) ) {
			require_once $localeFile;
		}
	}

	/**
	 * Load and run theme config file
	 *
	 * @return array
	 */
	public static function get_config() {
		if ( file_exists( FUNC_INC . '/theme/config.php' ) ) {
			return require_once FUNC_INC . '/theme/config.php';
		} else {
			return array();
		}
	}

	public static function get_wpzoom_root() {
		return dirname( __FILE__ );
	}

	public static function get_root_uri() {
		return get_template_directory_uri() . '/functions/wpzoom';
	}

	public static function get_assets_uri() {
		return self::get_root_uri() . '/assets';
	}

	/**
	 * Loads theme data and configs
	 *
	 * @return void
	 */
	private static function load_theme_data() {
		self::$config = self::get_config();

		self::$themeData    = wp_get_theme();
		self::$themeVersion = self::$themeData->version;
		self::$themeName    = self::$themeData->name;

		self::$theme_raw_name = basename( get_template_directory() );
		self::$themePath      = get_template_directory_uri();
		self::$wpzoomPath     = self::$themePath . '/functions/wpzoom';

		self::$assetsPath = self::$wpzoomPath . '/assets';

		self::$tf = isset( self::$config['tf_url'] );
	}

	/**
	 * Retrieve metadata from a file.
	 *
	 * Searches for metadata in the first 8kiB of a file, such as a plugin or theme.
	 * Each piece of metadata must be on its own line. Fields can not span multiple
	 * lines, the value will get cut at the end of the first line.
	 *
	 * If the file data is not within that first 8kiB, then the author should correct
	 * their plugin file and move the data headers to the top.
	 *
	 * @see http://codex.wordpress.org/File_Header
	 *
	 * @param string $file Path to the file
	 * @param array  $default_headers List of headers, in the format array('HeaderKey' => 'Header Name')
	 * @param string $context If specified adds filter hook "extra_{$context}_headers"
	 *
	 * @return array Array of file headers in `HeaderKey => Header Value` format.
	 */
	public static function get_file_data( $file, $default_headers, $context = '' ) {
		_deprecated_function( __FUNCTION__, '1.5.0', 'get_file_data()' );

		return get_file_data( $file, $default_headers, $context );
	}


	/**
	 * Add Theme Options to Admin Bar
	 *
	 * @param WP_Admin_Bar $wp_admin_bar
	 */
	public static function add_node_to_admin_bar( $wp_admin_bar ) {
		if ( ! is_super_admin() || ! is_admin_bar_showing() ) {
			return;
		}

		$wp_admin_bar->add_menu(
			array(
				'id'    => 'wpzoom',
				'title' => __( 'WPZOOM', 'wpzoom' ),
				'href'  => admin_url( 'admin.php?page=wpzoom_options' ),
			)
		);
		$wp_admin_bar->add_menu(
			array(
				'id'     => 'wpzoom-theme-options',
				'parent' => 'wpzoom',
				'title'  => __( 'Theme Options', 'wpzoom' ),
				'href'   => admin_url( 'admin.php?page=wpzoom_options' ),
			)
		);

		if ( option::is_on( 'framework_update_enable' ) ) {
			$wp_admin_bar->add_menu(
				array(
					'id'     => 'wpzoom-framework-update',
					'parent' => 'wpzoom',
					'title'  => __( 'Framework Update', 'wpzoom' ),
					'href'   => admin_url( 'admin.php?page=wpzoom_update' ),
				)
			);
		}
	}
}