HEX
Server: Apache
System: Linux uws7-179.cafe24.com 3.10.0-1160.119.1p.el7.x86_64 #1 SMP Thu Sep 11 14:15:01 KST 2025 x86_64
User: medikors (1589)
PHP: 7.3.1p1
Disabled: mysql_pconnect
Upload Files
File: /medikors/www/eng/wp-content/themes/jupiterx-1/lib/admin/tgmpa/functions.php
<?php
/**
 * Handles TGMPA functionalities.
 *
 * @since 1.5.0
 *
 * @package Jupiter\Framework\Admin\TGMPA
 */

add_action( 'tgmpa_register', 'jupiterx_register_tgmpa_plugins' );
/**
 * Register the required plugins.
 *
 * @since 1.5.0
 *
 * @SuppressWarnings(PHPMD.ElseExpression)
 */
function jupiterx_register_tgmpa_plugins() {
	if ( ! jupiterx_is_premium() ) :
		$free_plugins = [
			[
				'name' => __( 'Jupiter X Core', 'jupiterx' ),
				'slug' => 'jupiterx-core',
				'required' => false,
				'force_activation' => false,
				'force_deactivation' => false,
			],
			[
				'name' => __( 'Elementor', 'jupiterx' ),
				'slug' => 'elementor',
				'required' => false,
				'force_activation' => false,
				'force_deactivation' => false,
			],
			[
				'name' => __( 'Advanced Custom Fields', 'jupiterx' ),
				'slug' => 'advanced-custom-fields',
				'required' => false,
				'force_activation' => false,
				'force_deactivation' => false,
			],
			[
				'name' => __( 'Lazy Load', 'jupiterx' ),
				'slug' => 'lazy-load',
				'required' => false,
				'force_activation' => false,
				'force_deactivation' => false,
				'label_type' => __( 'Optional', 'jupiterx' ),
			],
			[
				'name' => __( 'Woocommerce', 'jupiterx' ),
				'slug' => 'woocommerce',
				'required' => false,
				'force_activation' => false,
				'force_deactivation' => false,
				'label_type' => __( 'Optional', 'jupiterx' ),
			],
			[
				'name' => __( 'Menu Icons by ThemeIsle', 'jupiterx' ),
				'slug' => 'menu-icons',
				'required' => false,
				'force_activation' => false,
				'force_deactivation' => false,
				'label_type' => __( 'Optional', 'jupiterx' ),
			],
		];

		$plugins = apply_filters( 'jupiterx_tgmpa_plugins', $free_plugins );
	else :
		$plugins = get_transient( 'jupiterx_tgmpa_plugins' );
		if ( false === $plugins && jupiterx_is_premium() ) {
			$headers = [
				'api-key'      => jupiterx_get_api_key(),
				'domain'       => $_SERVER['SERVER_NAME'], // phpcs:ignore
				'theme-name'   => 'JupiterX',
				'from'         => 0,
				'count'        => 0,
				'list-of-attr' => wp_json_encode( [
					'name',
					'slug',
					'required',
					'version',
					'source',
					'pro',
					'label_type',
				] ),
			];

			$response = json_decode( wp_remote_retrieve_body( wp_remote_get( 'https://artbees.net/api/v2/tools/plugin-custom-list', [
				'headers'   => $headers,
			] ) ) );

			if ( ! isset( $response->data ) && ! is_array( $response->data ) ) {
				return;
			}

			$wp_plugins = [];

			foreach ( $response->data as $index => $plugin ) {
				$plugins[ $index ] = (array) $plugin;

				if ( 'wp-repo' === $plugin->source ) {
					unset( $plugins[ $index ]['source'] );
					unset( $plugins[ $index ]['version'] );

					$wp_plugins[] = $plugins[ $index ];
				}

				if (
					! empty( $plugins[ $index ]['label_type'] ) &&
					'Optional' === $plugins[ $index ]['label_type']
				) {
					$plugins[ $index ]['label_type'] = __( 'Optional', 'jupiterx' );
				}
			}

			set_transient( 'jupiterx_tgmpa_plugins', $plugins, 12 * HOUR_IN_SECONDS );
		}
	endif;

	$config = [
		'id'           => 'jupiterx',
		'default_path' => '',
		'menu'         => 'tgmpa-install-plugins',
		'has_notices'  => true,
		'dismissable'  => true,
		'dismiss_msg'  => '',
		'is_automatic' => false,
		'message'      => '',
	];

	tgmpa( $plugins, $config );
}

add_filter( 'tgmpa_plugin_action_links', 'jupiterx_tgmpa_go_pro_link' );
add_filter( 'tgmpa_network_admin_plugin_action_links', 'jupiterx_tgmpa_go_pro_link' );
/**
 * Change go pro action links in TGMPA.
 *
 * @param array $action_links List of action links.
 *
 * @since 1.10.0
 *
 * @return array $action_links Modified list of action links.
 */
function jupiterx_tgmpa_go_pro_link( $action_links ) {
	if ( isset( $action_links['pro'] ) ) {
		$action_links['pro'] = '<a href="' . esc_url( jupiterx_upgrade_link( 'plugins' ) ) . '" class="jupiterx-tgmpa-pro-plugin-action-link" target="_blank">' . __( 'Go Pro', 'jupiterx' ) . '<span class="screen-reader-text">' . __( 'Buy Jupiter X', 'jupiterx' ) . '</span></a>';
	}

	return $action_links;
}