Show an error if no language files found during setup, mitigates #380

This commit is contained in:
Dylan K. Taylor 2017-02-25 11:21:32 +00:00
parent dc7b5b14d5
commit 11e0387e19
2 changed files with 25 additions and 11 deletions

View File

@ -34,7 +34,11 @@ class BaseLang{
$path = \pocketmine\PATH . "src/pocketmine/lang/locale/"; $path = \pocketmine\PATH . "src/pocketmine/lang/locale/";
} }
$files = array_filter(scandir($path), function($filename){ if(is_dir($path)){
$allFiles = scandir($path);
if($allFiles !== false){
$files = array_filter($allFiles, function($filename){
return substr($filename, -4) === ".ini"; return substr($filename, -4) === ".ini";
}); });
@ -50,6 +54,10 @@ class BaseLang{
return $result; return $result;
} }
}
return [];
}
protected $langName; protected $langName;

View File

@ -45,8 +45,14 @@ class SetupWizard{
public function run(){ public function run(){
echo "[*] PocketMine-MP set-up wizard\n"; echo "[*] PocketMine-MP set-up wizard\n";
echo "[*] Please select a language:\n";
$langs = BaseLang::getLanguageList(); $langs = BaseLang::getLanguageList();
if(empty($langs)){
echo "[!] No language files found, please use provided builds or clone the repository recursively." . PHP_EOL;
return false;
}
echo "[*] Please select a language:\n";
foreach($langs as $short => $native){ foreach($langs as $short => $native){
echo " $native => $short\n"; echo " $native => $short\n";
} }