myaac/install/includes/locale.php
slawkens1 08fce2ade4 * Fixed
* full support for OTHire 0.0.3
* added support for otservers that doesn't use account.name field,
instead just account number will be used
* (install) moved admin account creation to new step
* fixed encryption detection on 0.3
* fixed bug when server_config table doesn't exist
* other fixes
2017-05-03 23:48:04 +02:00

52 lines
1.0 KiB
PHP

<?php
defined('MYAAC') or die('Direct access not allowed!');
if(isset($_POST['lang']))
{
setcookie('locale', $_POST['lang']);
$_COOKIE['locale'] = $_POST['lang'];
}
if(isset($_COOKIE['locale']))
{
$locale_ = $_COOKIE['locale'];
$lang_size = strlen($locale_);
if(!$lang_size || $lang_size > 4 || !preg_match("/[a-z]/", $locale_)) // validate locale
$_COOKIE['locale'] = "en";
}
else
{
// detect locale
$locale_s = get_browser_languages();
if(!sizeof($locale_s))
$locale__ = 'en';
else
{
foreach($locale_s as $id => $tmp)
{
$tmp_file = LOCALE . $tmp;
if(@file_exists($tmp_file))
{
$locale_ = $tmp;
break;
}
}
}
if(!isset($locale_))
$locale_ = 'en';
}
require(LOCALE . 'en/main.php');
require(LOCALE . 'en/install.php');
$file_main = LOCALE . $locale_ . '/main.php';
if(!file_exists($file_main))
$file_main = LOCALE . 'en/main.php';
$file_install = LOCALE . $locale_ . '/install.php';
if(!file_exists($file_install))
$file_install = LOCALE . 'en/install.php';
require($file_main);
require($file_install);
?>