mirror of
https://github.com/slawkens/myaac.git
synced 2025-04-27 01:39:22 +02:00
* auto detected browser language in select language on install
This commit is contained in:
parent
0d5b9c2f98
commit
162777bb46
@ -8,9 +8,9 @@ if(isset($_POST['lang']))
|
|||||||
|
|
||||||
if(isset($_COOKIE['locale']))
|
if(isset($_COOKIE['locale']))
|
||||||
{
|
{
|
||||||
$locale_ = $_COOKIE['locale'];
|
$detected_locale = $_COOKIE['locale'];
|
||||||
$lang_size = strlen($locale_);
|
$lang_size = strlen($detected_locale);
|
||||||
if(!$lang_size || $lang_size > 4 || !preg_match("/[a-z]/", $locale_)) // validate locale
|
if(!$lang_size || $lang_size > 4 || !preg_match("/[a-z]/", $detected_locale)) // validate locale
|
||||||
$_COOKIE['locale'] = "en";
|
$_COOKIE['locale'] = "en";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -18,7 +18,7 @@ else
|
|||||||
// detect locale
|
// detect locale
|
||||||
$locale_s = get_browser_languages();
|
$locale_s = get_browser_languages();
|
||||||
if(!count($locale_s))
|
if(!count($locale_s))
|
||||||
$locale_ = 'en';
|
$detected_locale = 'en';
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
foreach($locale_s as $id => $tmp)
|
foreach($locale_s as $id => $tmp)
|
||||||
@ -26,27 +26,26 @@ else
|
|||||||
$tmp_file = LOCALE . $tmp;
|
$tmp_file = LOCALE . $tmp;
|
||||||
if(@file_exists($tmp_file))
|
if(@file_exists($tmp_file))
|
||||||
{
|
{
|
||||||
$locale_ = $tmp;
|
$detected_locale = $tmp;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!isset($locale_))
|
if(!isset($detected_locale))
|
||||||
$locale_ = 'en';
|
$detected_locale = 'en';
|
||||||
}
|
}
|
||||||
|
|
||||||
require LOCALE . 'en/main.php';
|
require LOCALE . 'en/main.php';
|
||||||
require LOCALE . 'en/install.php';
|
require LOCALE . 'en/install.php';
|
||||||
|
|
||||||
$file_main = LOCALE . $locale_ . '/main.php';
|
$file_main = LOCALE . $detected_locale . '/main.php';
|
||||||
if(!file_exists($file_main))
|
if(!file_exists($file_main))
|
||||||
$file_main = LOCALE . 'en/main.php';
|
$file_main = LOCALE . 'en/main.php';
|
||||||
|
|
||||||
$file_install = LOCALE . $locale_ . '/install.php';
|
$file_install = LOCALE . $detected_locale . '/install.php';
|
||||||
if(!file_exists($file_install))
|
if(!file_exists($file_install))
|
||||||
$file_install = LOCALE . 'en/install.php';
|
$file_install = LOCALE . 'en/install.php';
|
||||||
|
|
||||||
require $file_main;
|
require $file_main;
|
||||||
require $file_install;
|
require $file_install;
|
||||||
?>
|
|
@ -23,6 +23,7 @@ else {
|
|||||||
'locales' => $locales,
|
'locales' => $locales,
|
||||||
'locale' => $locale,
|
'locale' => $locale,
|
||||||
'cookie_locale' => @$_COOKIE['locale'],
|
'cookie_locale' => @$_COOKIE['locale'],
|
||||||
|
'detected_locale' => @$detected_locale,
|
||||||
'buttons' => next_buttons(false, true)
|
'buttons' => next_buttons(false, true)
|
||||||
));
|
));
|
||||||
}
|
}
|
@ -3,7 +3,7 @@
|
|||||||
<div class="input"><p>{{ locale.step_welcome_desc }}</p>
|
<div class="input"><p>{{ locale.step_welcome_desc }}</p>
|
||||||
<select name="lang">
|
<select name="lang">
|
||||||
{% for locale_ in locales %}
|
{% for locale_ in locales %}
|
||||||
<option value="{{ locale_.id }}"{% if cookie_locale == locale_.id %} selected{% endif %}>{{ locale_.name }}</option>
|
<option value="{{ locale_.id }}"{% if (detected_locale is not null and locale_.id == detected_locale) or cookie_locale == locale_.id %} selected{% endif %}>{{ locale_.name }}</option>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user