Check if intl and gettext extensins are loaded before using them
This commit is contained in:
13
chat.php
13
chat.php
@ -69,6 +69,17 @@ if(!isset($_REQUEST['session']) && isset($_COOKIE[COOKIENAME])){
|
|||||||
$session = $_COOKIE[COOKIENAME];
|
$session = $_COOKIE[COOKIENAME];
|
||||||
}
|
}
|
||||||
$session = preg_replace('/[^0-9a-zA-Z]/', '', $session);
|
$session = preg_replace('/[^0-9a-zA-Z]/', '', $session);
|
||||||
|
if (!extension_loaded('gettext')) {
|
||||||
|
prepare_stylesheets('fatal_error');
|
||||||
|
send_headers();
|
||||||
|
echo '<!DOCTYPE html><html lang="en" dir="ltr"><head>'.meta_html();
|
||||||
|
echo '<title>Fatal error</title>';
|
||||||
|
echo "<style>$styles[fatal_error]</style>";
|
||||||
|
echo '</head><body>';
|
||||||
|
echo '<h2>Fatal error: The gettext extension of PHP is required, please install it first</h2>';
|
||||||
|
print_end();
|
||||||
|
}
|
||||||
|
|
||||||
load_lang();
|
load_lang();
|
||||||
check_db();
|
check_db();
|
||||||
cron();
|
cron();
|
||||||
@ -4861,7 +4872,7 @@ function load_lang(): void
|
|||||||
$locale = LANGUAGES[$_COOKIE['language']]['locale'];
|
$locale = LANGUAGES[$_COOKIE['language']]['locale'];
|
||||||
$language = $_COOKIE['language'];
|
$language = $_COOKIE['language'];
|
||||||
$dir = LANGUAGES[$_COOKIE['language']]['dir'];
|
$dir = LANGUAGES[$_COOKIE['language']]['dir'];
|
||||||
}elseif(!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
|
}elseif(!empty($_SERVER['HTTP_ACCEPT_LANGUAGE']) && extension_loaded('intl')){
|
||||||
$prefLocales = array_reduce(
|
$prefLocales = array_reduce(
|
||||||
explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']),
|
explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']),
|
||||||
function (array $res, string $el) {
|
function (array $res, string $el) {
|
||||||
|
Reference in New Issue
Block a user