[-] BO : module XML config files stability improved
This commit is contained in:
+10
-5
@@ -458,8 +458,13 @@ abstract class ModuleCore
|
|||||||
$needNewConfigFile = true;
|
$needNewConfigFile = true;
|
||||||
if ($useConfig AND $xml_exist)
|
if ($useConfig AND $xml_exist)
|
||||||
{
|
{
|
||||||
|
libxml_use_internal_errors(true);
|
||||||
$xml_module = simplexml_load_file($configFile);
|
$xml_module = simplexml_load_file($configFile);
|
||||||
if ((int)$xml_module->need_instance == 0 AND !$needNewConfigFile)
|
foreach (libxml_get_errors() as $error)
|
||||||
|
$errors[] = '['.$module.'] '.Tools::displayError('Error found in config file:').' '.htmlentities($error->message);
|
||||||
|
libxml_clear_errors();
|
||||||
|
|
||||||
|
if (!count($errors) AND (int)$xml_module->need_instance == 0 AND !$needNewConfigFile)
|
||||||
{
|
{
|
||||||
$file = _PS_MODULE_DIR_.$module.'/'.Language::getIsoById($cookie->id_lang).'.php';
|
$file = _PS_MODULE_DIR_.$module.'/'.Language::getIsoById($cookie->id_lang).'.php';
|
||||||
if (Tools::file_exists_cache($file) AND include_once($file))
|
if (Tools::file_exists_cache($file) AND include_once($file))
|
||||||
@@ -976,11 +981,11 @@ abstract class ModuleCore
|
|||||||
$xml = '<?xml version="1.0" encoding="UTF-8" ?>
|
$xml = '<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
<module>
|
<module>
|
||||||
<name>'.$this->name.'</name>
|
<name>'.$this->name.'</name>
|
||||||
<displayName>'.html_entity_decode(addslashes($this->displayName), ENT_COMPAT, 'UTF-8').'</displayName>
|
<displayName>'.Tools::htmlentitiesUTF8($this->displayName).'</displayName>
|
||||||
<version>'.$this->version.'</version>
|
<version>'.$this->version.'</version>
|
||||||
<description>'.html_entity_decode(addslashes(strip_tags($this->description)), ENT_COMPAT, 'UTF-8').'</description>
|
<description>'.Tools::htmlentitiesUTF8($this->description).'</description>
|
||||||
<author>'.html_entity_decode(addslashes(strip_tags($this->author)), ENT_COMPAT, 'UTF-8').'</author>
|
<author>'.Tools::htmlentitiesUTF8($this->author).'</author>
|
||||||
<tab>'.html_entity_decode(addslashes($this->tab), ENT_COMPAT, 'UTF-8').'</tab>'.(isset($this->confirmUninstall) ? "\n\t".'<confirmUninstall>'.$this->confirmUninstall.'</confirmUninstall>' : '').'
|
<tab>'.Tools::htmlentitiesUTF8($this->tab).'</tab>'.(isset($this->confirmUninstall) ? "\n\t".'<confirmUninstall>'.$this->confirmUninstall.'</confirmUninstall>' : '').'
|
||||||
<is_configurable>'.(int)method_exists($this, 'getContent').'</is_configurable>
|
<is_configurable>'.(int)method_exists($this, 'getContent').'</is_configurable>
|
||||||
<need_instance>'.$need_instance.'</need_instance>'.(isset($this->limited_countries) ? "\n\t".'<limited_countries>'.(sizeof($this->limited_countries) == 1 ? $this->limited_countries[0] : '').'</limited_countries>' : '').'
|
<need_instance>'.$need_instance.'</need_instance>'.(isset($this->limited_countries) ? "\n\t".'<limited_countries>'.(sizeof($this->limited_countries) == 1 ? $this->limited_countries[0] : '').'</limited_countries>' : '').'
|
||||||
</module>';
|
</module>';
|
||||||
|
|||||||
Reference in New Issue
Block a user