You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
2.4 KiB
81 lines
2.4 KiB
<?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 setLink($link){ |
|
// Saving the position and z-index of the note: |
|
$xmla = simplexml_load_file('../'.self::LINKS_FILE); |
|
|
|
$path = $xmla->xpath("//item[@id='weather']"); |
|
$path[0]->x = $x; |
|
|
|
$xmla->asXML('../'.AccueilModules::CONFIG_FILE); |
|
|
|
echo "ok"; |
|
} |
|
|
|
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); |
|
} |
|
} |
|
} |
|
} |