whoami7 - Manager
:
/
home
/
dataiclx
/
www
/
wp-content
/
plugins
/
woocommerce
/
src
/
Internal
/
Jetpack
/
Upload File:
files >> /home/dataiclx/www/wp-content/plugins/woocommerce/src/Internal/Jetpack/JetpackConnection.php
<?php declare( strict_types=1 ); namespace Automattic\WooCommerce\Internal\Jetpack; use Automattic\Jetpack\Connection\Manager; use Automattic\WooCommerce\Admin\Features\Features; use WP_Error; /** * Jetpack Connection wrapper class. * * @since 8.3.0 */ class JetpackConnection { /** * Jetpack connection manager. * * @var Manager */ private static $manager; /** * Get the Jetpack connection manager. * * @return Manager */ public static function get_manager() { if ( ! self::$manager instanceof Manager ) { self::$manager = new Manager( 'woocommerce' ); } return self::$manager; } /** * Get the authorization URL for the Jetpack connection. * * @param mixed $redirect_url Redirect URL. * @param string $from From parameter. * * @return array { * Authorization data. * * @type bool $success Whether authorization URL generation succeeded. * @type array $errors Array of error messages if any. * @type string $color_scheme User's admin color scheme. * @type string $url The authorization URL. * } */ public static function get_authorization_url( $redirect_url, $from = '' ) { $manager = self::get_manager(); $errors = new WP_Error(); // Register the site to wp.com. if ( ! $manager->is_connected() ) { $result = $manager->try_registration(); if ( is_wp_error( $result ) ) { $errors->add( $result->get_error_code(), $result->get_error_message() ); } } $calypso_env = defined( 'WOOCOMMERCE_CALYPSO_ENVIRONMENT' ) && in_array( WOOCOMMERCE_CALYPSO_ENVIRONMENT, array( 'development', 'wpcalypso', 'horizon', 'stage' ), true ) ? WOOCOMMERCE_CALYPSO_ENVIRONMENT : 'production'; $authorization_url = $manager->get_authorization_url( null, $redirect_url ); $authorization_url = add_query_arg( 'locale', self::get_wpcom_locale(), $authorization_url ); if ( Features::is_enabled( 'use-wp-horizon' ) ) { $calypso_env = 'horizon'; } $color_scheme = get_user_option( 'admin_color', get_current_user_id() ); if ( ! $color_scheme ) { // The default Core color schema is 'fresh'. $color_scheme = 'fresh'; } return array( 'success' => ! $errors->has_errors(), 'errors' => $errors->get_error_messages(), 'color_scheme' => $color_scheme, 'url' => add_query_arg( array( 'from' => $from, 'calypso_env' => $calypso_env, ), $authorization_url, ), ); } /** * Return a locale string for wpcom. * * @return string */ private static function get_wpcom_locale() { // List of locales that should be used with region code. $locale_to_lang = array( 'bre' => 'br', 'de_AT' => 'de-at', 'de_CH' => 'de-ch', 'de' => 'de_formal', 'el' => 'el-po', 'en_GB' => 'en-gb', 'es_CL' => 'es-cl', 'es_MX' => 'es-mx', 'fr_BE' => 'fr-be', 'fr_CA' => 'fr-ca', 'nl_BE' => 'nl-be', 'nl' => 'nl_formal', 'pt_BR' => 'pt-br', 'sr' => 'sr_latin', 'zh_CN' => 'zh-cn', 'zh_HK' => 'zh-hk', 'zh_SG' => 'zh-sg', 'zh_TW' => 'zh-tw', ); $system_locale = get_locale(); if ( isset( $locale_to_lang[ $system_locale ] ) ) { // Return the locale with region code if it's in the list. return $locale_to_lang[ $system_locale ]; } // If the locale is not in the list, return the language code only. return explode( '_', $system_locale )[0]; } }
Copyright ©2021 || Defacer Indonesia