diff --git a/server/lib/Translator.php b/server/lib/Translator.php index 6d7fafe..1074036 100644 --- a/server/lib/Translator.php +++ b/server/lib/Translator.php @@ -23,7 +23,7 @@ public function readProjectLangs(): void { $langs = array_filter($entries, function ($entry) { $lang_path = $this::$lang_path; return - $entry !== '.' && $entry !== '..' + preg_match('/^[a-z0-9_]+$/', $entry) && is_file("{$lang_path}{$entry}/messages.json"); }); $this->setProjectLangs($langs); @@ -119,6 +119,9 @@ protected function getLangMessage(string $id): ?array { * @return array> */ protected function readMessagesJson(string $lang): array { + if (!preg_match('/^[a-z0-9_]+$/', $lang)) { + return []; + } $lang_path = $this::$lang_path; $messages_json_path = "{$lang_path}{$lang}/messages.json"; $messages_json_content = is_file($messages_json_path)