www

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

equipes-equipe.php (3493B)


      1 <?php
      2 
      3 class ÉquipesÉquipe {
      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 			// SECURITE : On ne doit PAS pouvoir modifier dernier_numero arbitrairement
      9 			// CONCURENCE : Faire un lock quelque part...
     10 			$numéro_joueur = 1 + Stockage::get_prop($chemin, "dernier_numero");
     11 			Stockage::set_prop($chemin, "dernier_numero", $numéro_joueur);
     12 			$np = Stockage::nouvelle_page($chemin, "Joueur" . $numéro_joueur, "equipes-joueur");
     13 			Stockage::set_prop($np, "proprietaire", Authentification::get_utilisateur());
     14 			Stockage::set_prop($np, "nom", "Dupondt");
     15 			Stockage::set_prop($np, "prenom", "Jean");
     16 			Stockage::set_prop($np, "description", "");
     17 			enregistrer_nouveaute($np);
     18 			
     19 			return new Page($chemin, '', "redirect");
     20 		} else if ($action == "supprimer") {
     21 			Stockage::supprimer($chemin, true); // TODO ! gérer correctement le récursif
     22 			return new Page($chemin->parent(), '', "redirect");
     23 		} else {
     24 			if (isset($paramètres["titre"]) && Stockage::prop_diff($chemin, "titre", $paramètres["titre"])) {
     25 				Stockage::set_prop($chemin, "titre", $paramètres["titre"]);
     26 				Stockage::renomer($chemin, $paramètres["titre"]);
     27 				$chemin = $chemin->renomer($paramètres["titre"]);
     28 				// TODO : transmettre le paramètre "vue"
     29 				return new Page($chemin, '', "redirect");
     30 			}
     31 			
     32 			if (isset($paramètres["vue"])) {
     33 				return self::vue($chemin, $paramètres["vue"]);
     34 			} else {
     35 				return self::vue($chemin);
     36 			}
     37 		}
     38 	}
     39 	
     40 	public static function vue($chemin, $vue = "normal") {
     41 		if ($vue == "normal") {
     42 			$ret = '';
     43 			
     44 			if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) {
     45 				$ret .= '<form class="équipes équipe infos" method="post" action="' . $chemin->get_url() . '">';
     46 				$ret .= '<h2><input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" /></h2>';
     47 				$ret .= '<p><input type="submit" value="appliquer" /></p>';
     48 				$ret .= '</form>';
     49 			} else {
     50 				$ret .= '<h2 class="équipes équipe titre affichage">' . Stockage::get_prop($chemin, "titre") . '</h2>';
     51 			}
     52 			if (Permissions::vérifier_permission($chemin, "supprimer", Authentification::get_utilisateur())) {
     53 				$ret .= '<form action="' . $chemin->get_url() . '">';
     54 				$ret .= '<input type="hidden" name="action" value="supprimer"/>';
     55 				$ret .= '<input type="submit" value="Supprimer l\'équipe"/>';
     56 				$ret .= '</form>';
     57 			}
     58 	        $ret .= '<ul class="équipes équipe">';
     59 			
     60 	        foreach (stockage::liste_enfants($chemin) as $k) {
     61 	            $ret .= '<li>' . Modules::vue($k)->contenu . '</li>';
     62 	        }
     63 			
     64 			if (Permissions::vérifier_permission($chemin, "nouvelle_page", Authentification::get_utilisateur())) {
     65 				$ret .= '<li>';
     66 				$ret .= '<form class="équipes équipe nouvelle_page" method="post" action="' . $chemin->get_url() . '">';
     67 				$ret .= '<p>';
     68 				$ret .= '<input type="hidden" name="action" value="nouvelle_page"/>';
     69 				$ret .= '<input type="submit" value="Nouveau joueur"/>';
     70 				$ret .= '</p>';
     71 				$ret .= '</form>';
     72 				$ret .= '</li>';
     73 			}
     74 			
     75 	        $ret .= '</ul>';
     76 			
     77 			return new Page($ret, Stockage::get_prop($chemin, "titre"));
     78 		} else if ($vue == "miniature") {
     79 			return new Page("Équipe.", Stockage::get_prop($chemin, "titre"));
     80 		}
     81 	}
     82 }
     83 
     84 Modules::enregister_module("ÉquipesÉquipe", "equipes-equipe", "vue", "titre");
     85 
     86 ?>