server/onyx/modules/chconfig/chmodules.class.php
2013-10-09 15:40:23 +02:00

57 lines
1.2 KiB
PHP

<?php
if(!defined('ONYX')) exit;
class chModules
{
//Adresse vers le fichier de configuration en cours de modification
private $_filename;
//Liste des modules
var $modules = array();
// Constructeur qui charge le fichier de modules
function __construct($filename = null)
{
if (!empty($filename))
$this->_filename = $filename;
else
$this->_filename = ONYX."modules/modules.xml";
//On charge le fichier
$xml = new DOMDocument();
$xml->load($this->_filename);
foreach($xml->getElementsByTagName('module') as $value)
{
$this->modules[$value->getAttribute('name')] = parse_config($value->getElementsByTagName("default")->item(0), "option", "name");
}
}
function write()
{
$xml = new DOMDocument('1.0', 'UTF-8');
$xml->formatOutput = true;
$xml_modules = $xml->createElement("modules");
foreach($this->modules as $name => $module)
{
$xml_module = $xml->createElement("module");
$xml_module->setAttribute("name", $name);
$xml_def = $xml->createElement("default");
unparse_config($xml, $xml_def, $module, "option", "name");
$xml_module->appendChild($xml_def);
$xml_modules->appendChild($xml_module);
}
$xml->appendChild($xml_modules);
return $xml;
}
}
?>