diff options
| author | Armand Philippot <git@armandphilippot.com> | 2021-10-24 17:29:46 +0200 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2021-10-24 17:29:46 +0200 |
| commit | 81ded97093d37011acec670568a15658b8494fb5 (patch) | |
| tree | be8f9265f3bee9773eaaa3fb7855557958822ca3 /htdocs/includes | |
| parent | bdd33464e704d9f7fdd2f751defae65fa784c9b0 (diff) | |
chore: convert index to html file instead of php file
I need to translate some strings in a JS file. So instead of dealing
with two way to translate the whole app I think it is easier to stick
with a single way.
Diffstat (limited to 'htdocs/includes')
| -rw-r--r-- | htdocs/includes/config.php | 19 | ||||
| -rw-r--r-- | htdocs/includes/i18n.php | 150 | ||||
| -rw-r--r-- | htdocs/includes/utils.php | 31 |
3 files changed, 0 insertions, 200 deletions
diff --git a/htdocs/includes/config.php b/htdocs/includes/config.php deleted file mode 100644 index cf7dba6..0000000 --- a/htdocs/includes/config.php +++ /dev/null @@ -1,19 +0,0 @@ -<?php -/** - * Config of demo.armandphilippot.com - * - * @package DemoArmandphilippotCom - * @author Armand Philippot <contact@armandphilippot.com> - * @copyright 2021 Armand Philippot - * @license http://www.opensource.org/licenses/mit-license.php MIT - * @link https://demo.armandphilippot.com/ - * @since 1.0.0 - */ - -/** - * The website will check if the HTTP accepted locales have a matching - * translation. If not, the default locale is "en_US". If you want to - * overwrite the default locale, use this variable. Make sure the translation - * exists. - */ -$dap_default_locale = 'en_US'; diff --git a/htdocs/includes/i18n.php b/htdocs/includes/i18n.php deleted file mode 100644 index 37dee90..0000000 --- a/htdocs/includes/i18n.php +++ /dev/null @@ -1,150 +0,0 @@ -<?php -/** - * Functions to translate demo.armandphilippot.com - * - * @package DemoArmandphilippotCom - * @author Armand Philippot <contact@armandphilippot.com> - * @copyright 2021 Armand Philippot - * @license http://www.opensource.org/licenses/mit-license.php MIT - * @link https://demo.armandphilippot.com/ - * @since 1.0.0 - */ - -/** - * Get a list of available translations. - * - * @return array The available languages. - */ -function dap_get_available_languages() -{ - $languages_dir = glob('languages' . DIRECTORY_SEPARATOR . '*', GLOB_ONLYDIR); - $languages = str_replace('languages' . DIRECTORY_SEPARATOR, '', $languages_dir); - - return $languages; -} - -/** - * Get accepted languages based on HTTP header. - * - * @return array The accepted languages. - */ -function dap_get_languages_from_http() -{ - $languages = ''; - - if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { - $languages = preg_split('/(,|;)/', $_SERVER['HTTP_ACCEPT_LANGUAGE'], -1, PREG_SPLIT_NO_EMPTY); - $languages = array_filter( - $languages, - function ($value) { - return substr($value, 0, 2) !== 'q='; - } - ); - } - - return $languages; -} - -/** - * Check if a locale is a valid locale. - * - * @param string $locale The locale to test. - * @param array $valid_locales The valid locales. - * @return boolean True if the locale exists. - */ -function dap_is_valid_locale(string $locale, array $valid_locales) : bool -{ - if (empty($locale)) { - return false; - } - - return in_array($locale, $valid_locales, true); -} - -/** - * Filter the accepted locales to determine the locale to use. - * - * @param array $locales The locales to test. - * @param string $default_locale The default locale. - * @return string The first valid locale. - */ -function dap_get_valid_locale(array $locales, string $default_locale) : string -{ - $valid_locales = dap_get_available_languages(); - - if (isset($default_locale) && dap_is_valid_locale($default_locale, $valid_locales)) { - $default_locale = $default_locale; - } else { - $default_locale = 'en_US'; - } - - $possible_locales = array_intersect($locales, $valid_locales); - $possible_locales = array_values($possible_locales); - $locale = ''; - - if (count($possible_locales) > 0) { - $locale = $possible_locales[0]; - } else { - $locale = $default_locale; - } - - return $locale; -} - -/** - * Define the locale to use. - * - * @param string $default_locale The default locale. - * @return string The locale to use. - */ -function dap_define_locale(string $default_locale) -{ - $http_language = dap_get_languages_from_http(); - $http_locale = str_replace('-', '_', $http_language); - $http_locale = is_array($http_locale) ? $http_locale : array($http_locale); - $locale = dap_get_valid_locale($http_locale, $default_locale); - - return $locale; -} - -/** - * Get a list of possible format based on the locale to use. - * - * @param string $locale The locale to use. - * @return array The locale in different formats to use. - */ -function dap_get_formatted_locale(string $locale) -{ - $formatted_locale = array( $locale ); - $formatted_locale[] = $locale . '.utf8'; - $formatted_locale[] = $locale . '.UTF-8'; - $formatted_locale[] = strtok($locale, '_'); - - return $formatted_locale; -} - -/** - * Transform a locale format (ex: `en_US`) to a language format (ex: `en-US`). - * - * @param string $locale The used locale. - * @return string The language to use. - */ -function dap_get_language(string $locale) -{ - $language = str_replace('_', '-', $locale); - - return $language; -} - -/** - * Set the locale. - * - * @param array $formatted_locale The locale with its different formats. - */ -function dap_set_locale(array $formatted_locale) -{ - setlocale(LC_ALL, $formatted_locale); - bindtextdomain('DAP', dirname(__DIR__) . DIRECTORY_SEPARATOR . 'languages'); - bind_textdomain_codeset('DAP', 'UTF-8'); - textdomain('DAP'); -} diff --git a/htdocs/includes/utils.php b/htdocs/includes/utils.php deleted file mode 100644 index 8b661d7..0000000 --- a/htdocs/includes/utils.php +++ /dev/null @@ -1,31 +0,0 @@ -<?php -/** - * Utilities for demo.armandphilippot.com - * - * @package DemoArmandphilippotCom - * @author Armand Philippot <contact@armandphilippot.com> - * @copyright 2021 Armand Philippot - * @license http://www.opensource.org/licenses/mit-license.php MIT - * @link https://demo.armandphilippot.com/ - * @since 1.0.0 - */ - -/** - * Get current environment defined in .env file. - * - * @since 1.0.0 - * - * @return string Current env or empty string. - */ -function dap_get_current_env() -{ - if (file_exists(__DIR__ . '/vendor/autoload.php')) { - require_once __DIR__ . '/vendor/autoload.php'; - $dap_dotenv = Dotenv\Dotenv::createImmutable(__DIR__); - $dap_dotenv->safeLoad(); - $dap_current_env = $_ENV['WP_THEME_ENV']; - return $dap_current_env; - } else { - return ''; - } -} |
