equipes-index.php (2910B)
1 <?php 2 3 class ÉquipesIndex { 4 public static function action($chemin, $action, $paramètres) { 5 if ($action == "anuler") { 6 return new Page($chemin, '', "redirect"); 7 } else if ($action == "nouvelle_page") { 8 $np = Stockage::nouvelle_page($chemin, "Nouvelle équipe", "equipes-equipe"); 9 Stockage::set_prop($np, "proprietaire", Authentification::get_utilisateur()); 10 Stockage::set_prop($np, "titre", "Nouvelle équipe"); 11 Stockage::set_prop($np, "dernier_numero", 0); 12 enregistrer_nouveaute($np); 13 return new Page($np, '', "redirect"); 14 } else { 15 if (isset($paramètres["description"])) { 16 Stockage::set_prop($chemin, "description", $paramètres["description"]); 17 } 18 19 if (isset($paramètres["titre"])) { 20 Stockage::set_prop($chemin, "titre", $paramètres["titre"]); 21 } 22 23 if (isset($paramètres["vue"])) { 24 return self::vue($chemin, $paramètres["vue"]); 25 } else { 26 return self::vue($chemin); 27 } 28 } 29 } 30 31 public static function vue($chemin, $vue = "normal") { 32 if ($vue == "normal") { 33 $ret = ''; 34 35 if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) { 36 $ret .= '<form class="equipes infos" method="post" action="' . $chemin->get_url() . '">'; 37 $ret .= '<h2><input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" /></h2>'; 38 $ret .= formulaire_édition_texte_enrichi(Stockage::get_prop($chemin, "description"), "description"); 39 $ret .= '<p><input type="submit" value="appliquer" /></p>'; 40 $ret .= '</form>'; 41 } else { 42 $ret .= '<h2>' . Stockage::get_prop($chemin, "titre") . '</h2>'; 43 $ret .= '<p class="equipes index description affichage">' . Stockage::get_prop($chemin, "description") . '</p>'; 44 } 45 46 $ret .= '<div class="equipes index liste-equipes">'; 47 $ret .= '<ul>'; 48 49 if (Permissions::vérifier_permission($chemin, "nouvelle_page", Authentification::get_utilisateur())) { 50 $ret .= '<li>'; 51 $ret .= '<div class="titre">'; 52 53 $ret .= '<form class="equipes nouvelle_page" method="post" action="' . $chemin->get_url() . '">'; 54 $ret .= '<p>'; 55 $ret .= '<input type="hidden" name="action" value="nouvelle_page"/>'; 56 $ret .= '<input type="submit" value="Nouvelle équipe"/>'; 57 $ret .= '</p>'; 58 $ret .= '</form>'; 59 60 $ret .= '</div>'; 61 $ret .= '</li>'; 62 } 63 64 foreach (Stockage::liste_enfants($chemin) as $k) { // TODO : trier par numéro ! 65 $mini = Modules::vue($k, 'miniature'); 66 $ret .= '<li>'; 67 $ret .= '<a href="' . $k->get_url() . '">'; // TODO : escape l'url ! 68 $ret .= '<span class="titre">'; 69 $ret .= $mini->titre; 70 $ret .= '</span>'; 71 $ret .= '</a>'; 72 $ret .= '</li>'; 73 } 74 75 $ret .= '</ul>'; 76 77 return new Page($ret, Stockage::get_prop($chemin, "titre")); 78 } 79 } 80 } 81 82 Modules::enregister_module("ÉquipesIndex", "equipes-index", "vue", "titre description"); 83 84 ?>