* better error handling for monsters and spells loader

* check if file exist before loading
* save errors to system/logs/error.log
This commit is contained in:
slawkens1
2017-10-16 23:31:28 +02:00
parent c914a73352
commit 66a3c46aaf
9 changed files with 119 additions and 22 deletions

View File

@@ -93,9 +93,18 @@ class OTS_SpellsList implements IteratorAggregate, Countable
*/
public function __construct($file)
{
// loads DOM document
// check if spells.xml exist
if(!@file_exists($file)) {
log_append('error.log', '[OTS_SpellsList.php] Fatal error: Cannot load spells.xml. File does not exist. (' . $file . '). Error: ' . print_r(error_get_last(), true));
throw new Exception('Error: Cannot load spells.xml. File not found. More info in system/logs/error.log file.');
}
// loads monsters mapping file
$spells = new DOMDocument();
$spells->load($file);
if(!@$spells->load($file)) {
log_append('error.log', '[OTS_SpellsList.php] Fatal error: Cannot load spells.xml (' . $file . '). Error: ' . print_r(error_get_last(), true));
throw new Exception('Error: Cannot load spells.xml. File is invalid. More info in system/logs/error.log file.');
}
// loads runes
foreach( $spells->getElementsByTagName('rune') as $rune)