commit 16322a9ce4805356b156eafa8290be3fd639de72
Author: Romuald <devnull@localhost>
Date:   Wed Nov 26 21:26:57 2008 +0100

    Page d'administration des championnats.

diff --git a/index.php b/index.php
new file mode 100644
index 0000000..6341572
--- /dev/null
+++ b/index.php
@@ -0,0 +1,342 @@
+<?php
+/*
+ * index.php - Visualisation du championnat
+ * Copyright (C) 2008 Romuald DELAVERGNE  <delavergne@free.fr>
+ *
+ * This source code is licensed under the GNU General Public License,
+ * Version 2.  See the file COPYING for more details.
+ */
+	if (basename(dirname($_SERVER['PHP_SELF'])) == "admin")
+		require_once '../functions.php';
+	else
+		require_once 'functions.php';
+
+	/*
+	echo "<pre>\n";
+	print_r($_POST);
+	echo "</pre>\n";
+	*/
+
+	$Pts = array(); // Nombre de points
+	$Joue = array();// Nombre de matchs joués
+	$Vic = array(); // Nombre de victoires
+	$Nul = array(); // Nombre de matchs nuls
+	$Def = array(); // Nombre de défaites
+	$Pen = array(); // Points de pénalités
+	$PG = array();  // Somme des points gagnés
+	$PP = array();  // Somme des points perdus
+	$Diff = array();// Diff entre les points gagnés et perdus
+	$Rang = array();// Nombre de points avec en décimale 'Diff".
+									// Permet de faire le tri en départageant les ex-aequos
+	$rencontres = array(); // Rencontres et résultats de chaque journée
+	$saisons = array();    // Liste des saisons disponibles
+	$divisions = array();  // Liste des divisions disponibles pour l'année
+	$subdivs = array();    // Liste des poules/phases disponibles pour la division
+
+	$saison = $_POST['saison'];     // l'année du début de saison
+	$div1 = $_POST['div1'];         // PRO, N, PN, R, PR ou D
+	$div2 = $_POST['div2'];         // A, B, 1, 2, 3, ...
+	$division = $_POST['division']; // PROA, N1, PN, R2, PR ou D4, ...
+	$poule = $_POST['poule'];       // A, B, ...
+	$phase = $_POST['phase'];       // 1, 2, ...
+	if (!$division) $division = $div1; if ($div2) $division .= $SEP_DIV.$div2;
+	$subdiv = $poule; if ($phase) $subdiv .= $SEP_DIV.$phase;
+
+	$path = (IamAdmin()) ? "../datas" : "datas";
+	getDirs($path, $saisons);
+	rsort($saisons);
+	if (!in_array($saison, $saisons)) unset($saison, $division, $div1, $div2, $subdiv, $poule, $phase);
+	if (!$saison && $saisons) $saison = $saisons[0];
+
+	if ($saison) {
+		$path .= "/$saison";
+		getDirs($path, $divisions);
+		sort($divisions, SORT_STRING);
+		if (!in_array($division, $divisions)) unset($division, $div1, $div2);
+		if (!$division && $divisions) $division = $divisions[0];
+	}
+
+	if ($division) {
+		$path .= "/$division";
+		list($div1, $div2) = explode($SEP_DIV, $division);
+		getDirs($path, $subdivs);
+		sort($subdivs, SORT_STRING);
+		if (!in_array($subdiv, $subdivs)) unset($subdiv, $poule, $phase);
+		if (!$subdiv && $subdivs) $subdiv = $subdivs[0];
+	}
+	if ($subdiv) {
+		list($poule, $phase) = explode($SEP_DIV, $subdiv);
+		$path .= "/$subdiv";
+	}
+
+	// Récupération des équipes
+	$equipes = getEquipes($path);
+
+	// Récupération des résultats
+	if ($dir = opendir($path)) {
+		while (($file = readdir($dir)) !== FALSE) {
+			if (is_file("$path/$file") && preg_match("/match-*/", $file)) {
+				list($prefix, $journee, $domicile, $visiteur) = explode("-", $file);
+				$resu = array_map('rtrim', file("$path/$file"));
+				$resu = file_get_contents("$path/$file");
+				$rencontres[$journee][] = "$domicile:$visiteur:$resu";
+			}
+		}
+		ksort($rencontres, SORT_STRING);
+		closedir($dir);
+	}
+
+	// Récupération des pénalités
+	$file = "$path/penalites";
+	if (file_exists($file) && $penalites = file($file)) {
+		foreach ($penalites as $n => $p) {
+			list($equipe, $penalite) = explode(":", rtrim($penalites[$n]));
+			$Pen[$equipe] = $penalite;
+		}
+	}
+?>
+<html>
+<head>
+	<title>Championnat de tennis de table</title>
+	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+	<meta http-equiv="Content-language" content="fr" />
+	<meta name="copyright" content="Tous droits réservés - All Rights Reserved" />
+	<meta name="author" content="Romuald DELAVERGNE">
+	<link rel="stylesheet" type="text/css" href="<?=(IamAdmin()) ? "../" : ""?>style/fftt.css" media="screen" title="Normal" />
+</head>
+<html>
+<body>
+<?php
+	/*
+	echo "<pre>\n";
+	echo "saison  =/$saison/\n";
+	echo "division=/$division/\n";
+	echo "subdiv  =/$subdiv/\n";
+	echo "poule   =/$poule/\n";
+	echo "phase   =/$phase/\n";
+	echo "equipe1=/".$equipes[0]."/\n";
+	print_r($equipes);
+	print_r($rencontres);
+	//print_r($saisons);
+	//print_r($divisions);
+	echo "</pre>\n";
+	*/
+?>
+<?php if ($saisons) { ?>
+	<form name="resultats" method="post" action="<?=$_SERVER['PHP_SELF']?>">
+		<div id="boutons-selection">
+		Saison :
+		<select name="saison">
+<?php
+		foreach ($saisons as $s) {
+			echo "\t\t\t<option value=\"$s\"";
+			if ($saison == $s) echo " selected";
+			echo ">$s/".($s+1)."</option>\n";
+		}
+?>
+		</select>
+<?php } ?>
+<?php if ($divisions) { ?>
+		Division :
+		<select name="division">
+<?php
+		foreach ($divisions as $d) {
+			list($a, $b) = explode($SEP_DIV, $d);
+			echo "\t\t\t<option value=\"$d\"";
+			if ($d == $division) echo " selected";
+			echo ">".$a.$b."</option>\n";
+		}
+?>
+		</select>
+<?php } ?>
+<?php if ($poule) { ?>
+		Poule :
+		<select name="poule">
+<?php
+		foreach ($subdivs as $s) {
+			list($a, $b) = explode($SEP_DIV, $s);
+			echo "\t\t\t<option value=\"$a\"";
+			if ($poule == $a) echo " selected";
+			echo ">$a</option>\n";
+		}
+?>
+		</select>
+<?php } ?>
+<?php	if ($phase) { ?>
+		Phase :
+		<select name="phase">
+<?php
+		foreach ($subdivs as $s) {
+			list($a, $b) = explode($SEP_DIV, $s);
+			echo "\t\t\t<option value=\"$b\"";
+			if ($phase == $b) echo " selected";
+			echo ">$b</option>\n";
+		}
+?>
+		</select>
+<?php } ?>
+<?php if ($saisons) { ?>
+		<input type="submit" name="action" value="s&eacute;lectionner" />
+		</div>
+	</form>
+<?php } ?>
+<?php if (IamAdmin()) { ?>
+	<form name="resultats" method="post" action="admin.php">
+		<input type="hidden" name="saison" value="<?=$saison?>" />
+		<input type="hidden" name="div1" value="<?=$div1?>" />
+		<input type="hidden" name="div2" value="<?=$div2?>" />
+		<input type="hidden" name="poule" value="<?=$poule?>" />
+		<input type="hidden" name="phase" value="<?=$phase?>" />
+		<div id="championnat-ajouter">
+			<input type="submit" name="championnat" value="ajouter un championnat" />
+<?php 	if ($saisons) { ?>
+			<input type="submit" name="exporter-tout" value="tout exporter" />
+<?php if (FALSE) { ?>
+			<input type="submit" name="importer-tout" value="tout importer" />
+			<input type="submit" name="supprimer-tout" value="tout supprimer" />
+<?php } ?>
+<?php 	} ?>
+		</div>
+<?php 	if ($saisons) { ?>
+		<div id="boutons-championnat">
+			<input type="submit" name="championnat" value="modifier" />
+			<input type="submit" name="championnat" value="supprimer" onClick='return confirm("Voulez-vous vraiment effacer tout le championnat ?")' />
+			<input type="submit" name="championnat" value="exporter" />
+		</div>
+<?php 	} ?>
+<?php }
+	if ($equipes) foreach ($equipes as $n => $e) {
+		$Pts[$n] -= $Pen[$n];
+		$Joue[$n] = 0;
+		$Vic[$n] = 0;
+		$Nul[$n] = 0;
+		$Def[$n] = 0;
+		$PG[$n] = 0;
+		$PP[$n] = 0;
+		$Diff[$n] = 0;
+		$Rang[$n] = 0;
+	}
+	if ($rencontres) foreach ($rencontres as $j => $rencontre) {
+		foreach ($rencontre as $r) {
+			list($domicile, $visiteur, $ptsDom, $ptsVis, $scoreDom, $scoreVis) = explode(":", $r);
+			if ($ptsDom == "" || $ptsVis == "" || $scoreDom == "" || $scoreVis == "") continue;
+
+			$Joue[$domicile]++;
+			$Joue[$visiteur]++;
+			$Pts[$domicile] += $scoreDom;
+			$Pts[$visiteur] += $scoreVis;
+			$PG[$domicile] += $ptsDom;
+			$PP[$domicile] += $ptsVis;
+			$PG[$visiteur] += $ptsVis;
+			$PP[$visiteur] += $ptsDom;
+
+			if ($scoreDom > $scoreVis) {
+				$Vic[$domicile]++;
+				$Def[$visiteur]++;
+			}
+			elseif ($ptsDom < $ptsVis) {
+				$Def[$domicile]++;
+				$Vic[$visiteur]++;
+			}
+			else {
+				$Nul[$domicile]++;
+				$Nul[$visiteur]++;
+			}
+		}
+	}
+	if ($equipes) foreach ($equipes as $n => $e) {
+		$Diff[$n] = $PG[$n] - $PP[$n];
+		$Rang[$n] = $Pts[$n] + $Diff[$n]/1000;
+	}
+	arsort($Rang);
+	if ($equipes) {
+?>
+		<div id="tabClassement">
+		<table>
+			<tr>
+				<th class="colClt">Clt</th>
+				<th class="colEquipe">Equipe</th>
+				<th class="colPts">Pts</th>
+				<th class="colJoue">Jou&eacute;</th>
+				<th class="colVic">Vic</th>
+				<th class="colNul">Nul</th>
+				<th class="colDef">D&eacute;f</th>
+				<th class="colPen">P&eacute;n</th>
+				<th class="colPG">PG</th>
+				<th class="colPP">PP</th>
+				<th class="colDiff">Diff</th>
+			</tr>
+<?php
+	}
+	$i = 0;
+	foreach ($Rang as $equipe => $r) {
+		$i++;
+?>
+			<tr>
+				<td class="colClt"><?=(isset($last) && $last == $Pts[$equipe]) ? "-" : $i?></td>
+				<td class="colEquipe"><?=$equipes[$equipe]?></td>
+				<td class="colPts"><?=$Pts[$equipe]?></td>
+				<td class="colJoue"><?=$Joue[$equipe]?></td>
+				<td class="colVic"><?=($Vic[$equipe]) ? $Vic[$equipe] : "0"?></td>
+				<td class="colNul"><?=($Nul[$equipe]) ? $Nul[$equipe] : "0"?></td>
+				<td class="colDef"><?=($Def[$equipe]) ? $Def[$equipe] : "0"?></td>
+				<td class="colPen"><?=($Pen[$equipe]) ? $Pen[$equipe] : "0"?></td>
+				<td class="colPG"><?=($PG[$equipe]) ? $PG[$equipe] : "0"?></td>
+				<td class="colPP"><?=($PP[$equipe]) ? $PP[$equipe] : "0"?></td>
+				<td class="colDiff"><?=($Diff[$equipe]) ? $Diff[$equipe] : "0"?></td>
+			</tr>
+<?php
+		$last = $Pts[$equipe];
+	}
+?>
+<?php if ($equipes) { ?>
+		</table>
+		</div>
+		<br />
+<?php } ?>
+<?php
+	$j = 0;
+	foreach ($rencontres as $j => $rencontre) {
+?>
+	<div class="tabJournee">
+	<table>
+		<tr>
+			<th class="colJournee" colspan="6">Journ&eacute;e <?=$j?></th>
+		<tr>
+<?php
+		foreach ($rencontre as $r) {
+			list($domicile, $visiteur, $ptsDom, $ptsVis) = explode(":", $r);
+?>
+		<tr>
+			<td class="colDom"><div<?=($ptsDom != "" && $ptsVis != "" && $ptsDom >= $ptsVis) ? " class=\"vainqueur\"": ""?>><?=$equipes[$domicile]?></div></td>
+			<td class="colSep">&nbsp;-&nbsp;</td>
+			<td class="colVis"><div<?=($ptsDom != "" && $ptsVis != "" && $ptsVis >= $ptsDom) ? " class=\"vainqueur\"": ""?>><?=$equipes[$visiteur]?></div></td>
+			<td class="colPtsDom"><?=$ptsDom?></td>
+			<td class="colPtsVis"><?=$ptsVis?></td>
+<?php if (IamAdmin()) { ?>
+			<td>
+<?php $value = "$j-$domicile-$visiteur"; ?>
+				<input type="submit" name="rencontre-<?=$value?>" value="modifier" />
+				<input type="submit" name="rencontre-<?=$value?>" value="supprimer" onClick='return confirm("Voulez-vous vraiment effacer cette rencontre entre\n<?=$equipes[$domicile]?> et <?=$equipes[$visiteur]?> ?")' />
+			</td>
+<?php } ?>
+		</tr>
+<?php
+		}
+?>
+		</table>
+		</div>
+		<br />
+<?php
+	}
+?>
+<?php if (IamAdmin()) { ?>
+<?php 	if ($equipes) { ?>
+		<div id="rencontre-ajouter">
+			<input type="submit" name="rencontre-ajouter" value="ajouter une rencontre" />
+		</div>
+<?php 	} ?>
+	</form>
+<?php } ?>
+</body>
+</html>
