www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

articles-article.php (2375B)


      1 <?php
      2 
      3 class ArticlesArticle {
      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["contenu"])) {
     12 				Stockage::set_prop($chemin, "contenu", $paramètres["contenu"]);
     13 			}
     14 			
     15 			// titre après les autres paramètres car il peut générer un redirect.
     16 			if (isset($paramètres["titre"]) && Stockage::prop_diff($chemin, "titre", $paramètres["titre"])) {
     17 				Stockage::set_prop($chemin, "titre", $paramètres["titre"]);
     18 				Stockage::renomer($chemin, $paramètres["titre"]);
     19 				$chemin = $chemin->renomer($paramètres["titre"]);
     20 				// TODO : transmettre le paramètre "vue"
     21 				return new Page($chemin, '', "redirect");
     22 			}
     23 			
     24 			if (isset($paramètres["vue"])) {
     25 				return self::vue($chemin, $paramètres["vue"]);
     26 			} else {
     27 				return self::vue($chemin);
     28 			}
     29 		}
     30 	}
     31 	
     32 	public static function vue($chemin, $vue = "normal") {
     33 		if ($vue == "normal") {
     34 			$ret = '';
     35 			
     36 			if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) {
     37 				$ret .= '<form class="articles article edition" enctype="multipart/form-data" method="post" action="' . $chemin->get_url() . '">';
     38 				$ret .= '<h2><input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" /></h2>';
     39 				$ret .= formulaire_édition_texte_enrichi(Stockage::get_prop($chemin, "contenu"), "contenu");
     40 				$ret .= '<p><input type="submit" value="appliquer" /></p>';
     41 				$ret .= '</form>';
     42 			} else {
     43 				$ret .= '<h2>' . Stockage::get_prop($chemin, "titre") . '</h2>';
     44 				$ret .= affichage_texte_enrichi(Stockage::get_prop($chemin, "contenu"));
     45 			}
     46 			if (Permissions::vérifier_permission($chemin, "supprimer", Authentification::get_utilisateur())) {
     47 				// TODO : afficher le bouton "Supprimer".
     48 			}
     49 			
     50 			return new Page($ret, Stockage::get_prop($chemin, "titre"));
     51 		} elseif ($vue == "miniature") {
     52 			$ret = miniature_texte_enrichi(Stockage::get_prop($chemin, "contenu"));
     53 			return new Page($ret, Stockage::get_prop($chemin, "titre"));
     54 		}
     55 	}
     56 }
     57 
     58 Modules::enregister_module("ArticlesArticle", "articles-article", "vue", "titre contenu");
     59 
     60 ?>