<?php 
class AccueilModules {
	private $persistance = 'db/config.xml';
	private $modules = array();
	
	
	function __construct(){
		if($config = simplexml_load_file($this->persistance)){
			$config_xml = $config->item;
			foreach($config_xml as $item){
				$this->modules["$item[id]"] = $item;
			}
			$this->getModules();
			$this->buildConfigMenu();
		}else{
			echo 'baaaaad persistance...';
		}
	}
	
	function getModules(){
		foreach($this->modules as $module=>$moduleConf){
			if(file_exists('class/'.ucfirst($module).'.php') && $moduleConf->visibility == "true"){
				$params = array();
				foreach($moduleConf as $confParam){
					$params[$confParam->getName()] = "$confParam";
				}
				require ucfirst($module).'.php';
				call_user_func(array($module, "start"), $params);
			}
		}
	}

	function buildConfigMenu(){
		echo '<a href="#config" id="config-menu">Configuration</a>
				<div style="display:none;">
				<div id="config">
				<form id="config_form" action="" method="post">
				<h3>Modules configuration</h3><br/>';
		foreach($this->modules as $module=>$moduleConf){
			echo $module.' module : <input type="radio" name="'.$module.'_group" value="true"';
			if ($moduleConf->visibility == "true") echo " checked";
			echo '/>true&nbsp;&nbsp;<input type="radio" name="'.$module.'_group" value="false"';
			if ($moduleConf->visibility == "false") echo " checked";
			echo '/>false<br/><br/>';
		}
		echo '<a id="config-submit" href="" class="green-button">Enregistrer</a>
				</form>
				</div>
				</div>';
	}
}