<?php class links extends Module{ protected $moduleName; protected $moduleTitle; protected $pathToModule; protected static $paramsList = array( 'visibility' ); const LINKS_FILE = 'db/links.xml'; public $params = array(); public function __construct($params){ $this->moduleName = get_class(); $this->pathToModule = 'modules/'.$this->moduleName.'/'; $this->setParams($params); echo '<script type="text/javascript" src="'.$this->pathToModule.'js/'.$this->moduleName.'.js"></script> <link rel="stylesheet" href="'.$this->pathToModule.'css/'.$this->moduleName.'.css" type="text/css" /> <div style="display:none;"><div id="links-add-fancy"></div></div> <div class="appscontainer">'; if($links_xml = simplexml_load_file($this->pathToModule.self::LINKS_FILE)){ $links = $links_xml->label; foreach($links as $label){ //<span class="label">'.$label['id'].'</span> echo '<ul class="iconlist" id="'.$label['id'].'">'; foreach($label->link as $link){ echo '<li class="iconitem" id="'.$link->title.'"><img src="images/interface/delete.png" class="deleteLink" /><a href="'.$link->url.'" class="'.$link->onclick.'"><img src="images/links/'.$link->img.'" /><br>'.$link->title.'</a></li>'; } echo '</ul> <hr>'; } }else{ echo 'Can\'t find '.$this->pathToModule.self::LINKS_FILE; } echo '</div>'; } private function setParams($params){ $this->params = $params; } public static function start($params){ $links = new links($params); } public function setVisibility($visibility){ // Saving the position and z-index of the note: $xmla = simplexml_load_file('../'.AccueilModules::CONFIG_FILE); $path = $xmla->xpath("//item[@id='links']"); $path[0]->visibility = $visibility; $xmla->asXML('../'.AccueilModules::CONFIG_FILE); echo "ok"; } public static function updateConfig($updated){ foreach ($updated as $what=>$withWhat){ if(in_array($what, self::$paramsList)){ call_user_func(array(get_class(), "set".ucfirst($what)), $withWhat); } } } }