mirror of
https://github.com/Sarjuuk/aowow.git
synced 2025-11-29 15:58:16 +08:00
Locales/Search
* do not apply minimum string length limiter to logographic languages
This commit is contained in:
@@ -157,10 +157,13 @@ define('U_GROUP_PREMIUM_PERMISSIONS', (U_GROUP_PREMIUM|U_GROUP_STAFF|U_GRO
|
|||||||
|
|
||||||
// Locales
|
// Locales
|
||||||
define('LOCALE_EN', 0);
|
define('LOCALE_EN', 0);
|
||||||
|
define('LOCALE_KR', 1); // unused
|
||||||
define('LOCALE_FR', 2);
|
define('LOCALE_FR', 2);
|
||||||
define('LOCALE_DE', 3);
|
define('LOCALE_DE', 3);
|
||||||
define('LOCALE_CN', 4);
|
define('LOCALE_CN', 4);
|
||||||
|
define('LOCALE_TW', 5); // unused
|
||||||
define('LOCALE_ES', 6);
|
define('LOCALE_ES', 6);
|
||||||
|
define('LOCALE_MX', 7); // unused
|
||||||
define('LOCALE_RU', 8);
|
define('LOCALE_RU', 8);
|
||||||
|
|
||||||
// red buttons on the top of the page
|
// red buttons on the top of the page
|
||||||
|
|||||||
@@ -853,6 +853,12 @@ abstract class Util
|
|||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// todo: create Locale object and integrate
|
||||||
|
public static function isLogographic(int $localeId) : bool
|
||||||
|
{
|
||||||
|
return $localeId == LOCALE_CN || $localeId == LOCALE_TW || $localeId == LOCALE_KR;
|
||||||
|
}
|
||||||
|
|
||||||
// default back to enUS if localization unavailable
|
// default back to enUS if localization unavailable
|
||||||
public static function localizedString(array $data, string $field, bool $silent = false) : string
|
public static function localizedString(array $data, string $field, bool $silent = false) : string
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -135,14 +135,14 @@ class SearchPage extends GenericPage
|
|||||||
continue;
|
continue;
|
||||||
else if ($clean[0] == '-')
|
else if ($clean[0] == '-')
|
||||||
{
|
{
|
||||||
if (mb_strlen($clean) < 4)
|
if (mb_strlen($clean) < 4 && !Util::isLogographic(User::$localeId))
|
||||||
$this->invalid[] = mb_substr($raw, 1);
|
$this->invalid[] = mb_substr($raw, 1);
|
||||||
else
|
else
|
||||||
$this->excluded[] = mb_substr(str_replace('_', '\\_', $clean), 1);
|
$this->excluded[] = mb_substr(str_replace('_', '\\_', $clean), 1);
|
||||||
}
|
}
|
||||||
else if ($clean !== '')
|
else if ($clean !== '')
|
||||||
{
|
{
|
||||||
if (mb_strlen($clean) < 3)
|
if (mb_strlen($clean) < 3 && !Util::isLogographic(User::$localeId))
|
||||||
$this->invalid[] = $raw;
|
$this->invalid[] = $raw;
|
||||||
else
|
else
|
||||||
$this->included[] = str_replace('_', '\\_', $clean);
|
$this->included[] = str_replace('_', '\\_', $clean);
|
||||||
|
|||||||
Reference in New Issue
Block a user