liens-lien.php (2273B)
1 <?php 2 3 class LiensLien { 4 public static function action($chemin, $action, $paramètres) { 5 if ($action == "anuler") { 6 return new Page($chemin, '', "redirect"); 7 } else if ($action == "supprimer") { 8 Stockage::supprimer($chemin, true); // TODO ! gérer correctement le récursif 9 return new Page($chemin->parent(), '', "redirect"); 10 } else { 11 if (isset($paramètres["texte"])) { 12 Stockage::set_prop($chemin, "texte", $paramètres["texte"]); 13 } 14 if (isset($paramètres["cible"])) { 15 Stockage::set_prop($chemin, "cible", $paramètres["cible"]); 16 } 17 if (isset($paramètres["description"])) { 18 Stockage::set_prop($chemin, "cible", $paramètres["cible"]); 19 } 20 21 return new Page($chemin->parent(), '', "redirect"); 22 } 23 } 24 25 public static function vue($chemin, $vue = "normal") { 26 if ($vue == "normal") { 27 $ret = ''; 28 29 if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) { 30 $ret .= '<form class="liens lien edition" enctype="multipart/form-data" method="post" action="' . $chemin->get_url() . '">'; 31 $ret .= '<input type="text" name="texte" value="' . Stockage::get_prop($chemin, "texte") . '" />'; 32 $ret .= '<input type="text" name="cible" value="' . Stockage::get_prop($chemin, "cible") . '" />'; 33 $ret .= formulaire_édition_texte_enrichi(Stockage::get_prop($chemin, "description"), "description"); 34 $ret .= '<p><input type="submit" value="appliquer" /></p>'; 35 $ret .= '</form>'; 36 } else { 37 $ret .= '<a href="' . htmlspecialchars(Stockage::get_prop($chemin, "cible")) . '">' . Stockage::get_prop($chemin, "texte") . '</a>'; 38 $ret .= affichage_texte_enrichi(Stockage::get_prop($chemin, "description")); 39 } 40 if (Permissions::vérifier_permission($chemin, "supprimer", Authentification::get_utilisateur())) { 41 $ret .= '<form action="' . $chemin->get_url() . '">'; 42 $ret .= '<input type="hidden" name="action" value="supprimer"/>'; 43 $ret .= '<input type="submit" value="Supprimer le lien ' . htmlspecialchars(Stockage::get_prop($chemin, "cible")) . '"/>'; 44 $ret .= '</form>'; 45 } 46 47 return new Page($ret, Stockage::get_prop($chemin, "titre")); 48 } 49 } 50 } 51 52 Modules::enregister_module("LiensLien", "liens-lien", "vue", "texte cible description"); 53 54 ?>