HEX
Server: Apache
System: Linux vps-3158868-x.dattaweb.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: emerlux (1185)
PHP: 8.3.1
Disabled: system, shell, exec, system_exec, shell_exec, mysql_pconnect, passthru, popen, proc_open, proc_close, proc_nice, proc_terminate, proc_get_status, escapeshellarg, escapeshellcmd, eval
Upload Files
File: /home/emerlux/public_html/wp-content/plugins/woocommerce-mercadopago/src/Helpers/I18n.php
<?php

namespace MercadoPago\Woocommerce\Helpers;

use MercadoPago\Woocommerce\Translations\AdminTranslations;
use MercadoPago\Woocommerce\Translations\StoreTranslations;

if (!defined('ABSPATH')) {
    exit;
}

class I18n
{
    private static AdminTranslations $admin;
    private static StoreTranslations $store;

    public static function boot(AdminTranslations $admin, StoreTranslations $store)
    {
        static::$admin = $admin;
        static::$store = $store;
    }

    /**
     * Get a translations value using dot notation
     *
     * Example:
     * ```php
     *  I18n::get('store');
     *  // Equals:
     *  WoocommerceMercadoPago->storeTranslations;
     *
     *  I18n::get('admin');
     *  // Equals:
     *  WoocommerceMercadoPago->adminTranslations;
     *
     *  I18n::get('admin.credentialsLinkComponents');
     *  // Equals:
     *  WoocommerceMercadoPago->adminTranslations->credentialsLinkComponents;
     *
     *  I18n::get('admin.credentialsLinkComponents.select_country');
     *  // Equals:
     *  WoocommerceMercadoPago->adminTranslations->credentialsLinkComponents['select_country'];
     * ```
     */
    public static function get(string $path)
    {
        $keys  = explode('.', $path);
        $first = array_shift($keys);
        $value = static::$$first;

        foreach ($keys as $key) {
            $value = is_array($value) ? $value[$key] : $value->$key;
        }

        return $value;
    }
}