Statistiques
| Branche: | Révision :

root / index.php @ c32ba05351ff5b41170a98bd4b45859165ab51b6

Historique | Voir | Annoter | Télécharger (9,93 ko)

1
<?php
2
/*
3
 * index.php - Visualisation du championnat
4
 * Copyright (C) 2008 Romuald DELAVERGNE  <delavergne@free.fr>
5
 *
6
 * This source code is licensed under the GNU General Public License,
7
 * Version 2.  See the file COPYING for more details.
8
 */
9
        if (basename(dirname($_SERVER['PHP_SELF'])) == "admin")
10
                require_once '../functions.php';
11
        else
12
                require_once 'functions.php';
13
14
        /*
15
        echo "<pre>\n";
16
        print_r($_POST);
17
        echo "</pre>\n";
18
        */
19
20
        $Pts = array(); // Nombre de points
21
        $Joue = array();// Nombre de matchs joués
22
        $Vic = array(); // Nombre de victoires
23
        $Nul = array(); // Nombre de matchs nuls
24
        $Def = array(); // Nombre de défaites
25
        $Pen = array(); // Points de pénalités
26
        $PG = array();  // Somme des points gagnés
27
        $PP = array();  // Somme des points perdus
28
        $Diff = array();// Diff entre les points gagnés et perdus
29
        $Rang = array();// Nombre de points avec en décimale 'Diff".
30
                                                                        // Permet de faire le tri en départageant les ex-aequos
31
        $rencontres = array(); // Rencontres et résultats de chaque journée
32
        $saisons = array();    // Liste des saisons disponibles
33
        $divisions = array();  // Liste des divisions disponibles pour l'année
34
        $subdivs = array();    // Liste des poules/phases disponibles pour la division
35
36
        $saison = $_POST['saison'];     // l'année du début de saison
37
        $div1 = $_POST['div1'];         // PRO, N, PN, R, PR ou D
38
        $div2 = $_POST['div2'];         // A, B, 1, 2, 3, ...
39
        $division = $_POST['division']; // PROA, N1, PN, R2, PR ou D4, ...
40
        $poule = $_POST['poule'];       // A, B, ...
41
        $phase = $_POST['phase'];       // 1, 2, ...
42
        if (!$division) $division = $div1; if ($div2) $division .= $SEP_DIV.$div2;
43
        $subdiv = $poule; if ($phase) $subdiv .= $SEP_DIV.$phase;
44
45
        $path = (IamAdmin()) ? "../datas" : "datas";
46
        getDirs($path, $saisons);
47
        rsort($saisons);
48
        if (!in_array($saison, $saisons)) unset($saison, $division, $div1, $div2, $subdiv, $poule, $phase);
49
        if (!$saison && $saisons) $saison = $saisons[0];
50
51
        if ($saison) {
52
                $path .= "/$saison";
53
                getDirs($path, $divisions);
54
                sort($divisions, SORT_STRING);
55
                if (!in_array($division, $divisions)) unset($division, $div1, $div2);
56
                if (!$division && $divisions) $division = $divisions[0];
57
        }
58
59
        if ($division) {
60
                $path .= "/$division";
61
                list($div1, $div2) = explode($SEP_DIV, $division);
62
                getDirs($path, $subdivs);
63
                sort($subdivs, SORT_STRING);
64
                if (!in_array($subdiv, $subdivs)) unset($subdiv, $poule, $phase);
65
                if (!$subdiv && $subdivs) $subdiv = $subdivs[0];
66
        }
67
        if ($subdiv) {
68
                list($poule, $phase) = explode($SEP_DIV, $subdiv);
69
                $path .= "/$subdiv";
70
        }
71
72
        // Récupération des équipes
73
        $equipes = getEquipes($path);
74
75
        // Récupération des résultats
76
        if ($dir = opendir($path)) {
77
                while (($file = readdir($dir)) !== FALSE) {
78
                        if (is_file("$path/$file") && preg_match("/match-*/", $file)) {
79
                                list($prefix, $journee, $domicile, $visiteur) = explode("-", $file);
80
                                $resu = array_map('rtrim', file("$path/$file"));
81
                                $resu = file_get_contents("$path/$file");
82
                                $rencontres[$journee][] = "$domicile:$visiteur:$resu";
83
                        }
84
                }
85
                ksort($rencontres, SORT_STRING);
86
                closedir($dir);
87
        }
88
89
        // Récupération des pénalités
90
        $Pen = getPenalites($path);
91
?>
92
<html>
93
<head>
94
        <title>Championnat de tennis de table</title>
95
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
96
        <meta http-equiv="Content-language" content="fr" />
97
        <meta name="copyright" content="Tous droits réservés - All Rights Reserved" />
98
        <meta name="author" content="Romuald DELAVERGNE">
99
        <link rel="stylesheet" type="text/css" href="<?=(IamAdmin()) ? "../" : ""?>style/fftt.css" media="screen" title="Normal" />
100
</head>
101
<html>
102
<body>
103
<?php
104
        /*
105
        echo "<pre>\n";
106
        echo "saison  =/$saison/\n";
107
        echo "division=/$division/\n";
108
        echo "subdiv  =/$subdiv/\n";
109
        echo "poule   =/$poule/\n";
110
        echo "phase   =/$phase/\n";
111
        echo "equipe1=/".$equipes[0]."/\n";
112
        print_r($equipes);
113
        print_r($rencontres);
114
        //print_r($saisons);
115
        //print_r($divisions);
116
        echo "</pre>\n";
117
        */
118
?>
119
<?php if ($saisons) { ?>
120
        <form name="resultats" method="post" action="<?=$_SERVER['PHP_SELF']?>">
121
                <div id="boutons-selection">
122
                        Saison :
123
                        <select name="saison">
124
<?php
125
                foreach ($saisons as $s) {
126
                        echo "\t\t\t\t<option value=\"$s\"";
127
                        if ($saison == $s) echo " selected";
128
                        echo ">$s/".($s+1)."</option>\n";
129
                }
130
?>
131
                        </select>
132
<?php } ?>
133
<?php if ($divisions) { ?>
134
                        Division :
135
                        <select name="division">
136
<?php
137
                foreach ($divisions as $d) {
138
                        list($a, $b) = explode($SEP_DIV, $d);
139
                        echo "\t\t\t\t<option value=\"$d\"";
140
                        if ($d == $division) echo " selected";
141
                        echo ">".$a.$b."</option>\n";
142
                }
143
?>
144
                        </select>
145
<?php } ?>
146
<?php if ($poule) { ?>
147
                        Poule :
148
                        <select name="poule">
149
<?php
150
                foreach ($subdivs as $s) {
151
                        list($a, $b) = explode($SEP_DIV, $s);
152
                        echo "\t\t\t\t<option value=\"$a\"";
153
                        if ($poule == $a) echo " selected";
154
                        echo ">$a</option>\n";
155
                }
156
?>
157
                        </select>
158
<?php } ?>
159
<?php        if ($phase) { ?>
160
                        Phase :
161
                        <select name="phase">
162
<?php
163
                foreach ($subdivs as $s) {
164
                        list($a, $b) = explode($SEP_DIV, $s);
165
                        echo "\t\t\t\t<option value=\"$b\"";
166
                        if ($phase == $b) echo " selected";
167
                        echo ">$b</option>\n";
168
                }
169
?>
170
                        </select>
171
<?php } ?>
172
<?php if ($saisons) { ?>
173
                        <input type="submit" name="action" value="s&eacute;lectionner" />
174
                </div>
175
        </form>
176
<?php } ?>
177
<?php if (IamAdmin()) { ?>
178
        <form name="resultats" method="post" action="admin.php">
179
                <input type="hidden" name="saison" value="<?=$saison?>" />
180
                <input type="hidden" name="div1" value="<?=$div1?>" />
181
                <input type="hidden" name="div2" value="<?=$div2?>" />
182
                <input type="hidden" name="poule" value="<?=$poule?>" />
183
                <input type="hidden" name="phase" value="<?=$phase?>" />
184
                <div id="championnat-ajouter">
185
                        <input type="submit" name="championnat" value="ajouter un championnat" />
186
<?php         if ($saisons) { ?>
187
                        <input type="submit" name="exporter" value="exporter" />
188
                        <input type="submit" name="importer" value="importer" />
189
<?php if (FALSE) { ?>
190
                        <input type="submit" name="supprimer-tout" value="tout supprimer" />
191
<?php } ?>
192
<?php         } ?>
193
                </div>
194
<?php         if ($saisons) { ?>
195
                <div id="boutons-championnat">
196
                        <input type="submit" name="championnat" value="modifier" />
197
                        <input type="submit" name="championnat" value="supprimer" onClick='return confirm("Voulez-vous vraiment effacer tout le championnat ?")' />
198
                        <input type="submit" name="championnat" value="p&eacute;nalit&eacute;s" />
199
                </div>
200
<?php         } ?>
201
<?php }
202
        if ($equipes) foreach ($equipes as $n => $e) {
203
                $Pts[$n] = $Joue[$n] = $Vic[$n] = $Nul[$n] = $Def[$n] = $PG[$n] = $PP[$n] = $Diff[$n] = $Rang[$n] = 0;
204
        }
205
        if ($rencontres) foreach ($rencontres as $j => $rencontre) {
206
                foreach ($rencontre as $r) {
207
                        list($domicile, $visiteur, $ptsDom, $ptsVis, $scoreDom, $scoreVis) = explode(":", $r);
208
                        if ($ptsDom == "" || $ptsVis == "" || $scoreDom == "" || $scoreVis == "") continue;
209
210
                        $Joue[$domicile]++;
211
                        $Joue[$visiteur]++;
212
                        $Pts[$domicile] += $scoreDom;
213
                        $Pts[$visiteur] += $scoreVis;
214
                        $PG[$domicile] += $ptsDom;
215
                        $PP[$domicile] += $ptsVis;
216
                        $PG[$visiteur] += $ptsVis;
217
                        $PP[$visiteur] += $ptsDom;
218
219
                        if ($scoreDom > $scoreVis) {
220
                                $Vic[$domicile]++;
221
                                $Def[$visiteur]++;
222
                        }
223
                        elseif ($ptsDom < $ptsVis) {
224
                                $Def[$domicile]++;
225
                                $Vic[$visiteur]++;
226
                        }
227
                        else {
228
                                $Nul[$domicile]++;
229
                                $Nul[$visiteur]++;
230
                        }
231
                }
232
        }
233
        if ($equipes) foreach ($equipes as $n => $e) {
234
                $Pts[$n] -= $Pen[$n];
235
                $Diff[$n] = $PG[$n] - $PP[$n];
236
                $Rang[$n] = $Pts[$n] + $Diff[$n]/1000;
237
        }
238
        arsort($Rang);
239
?>
240
        <div id="tabClassement">
241
                <table>
242
                        <tr>
243
                                <th class="colClt">Clt</th>
244
                                <th class="colEquipe">Equipe</th>
245
                                <th class="colPts">Pts</th>
246
                                <th class="colJoue">Jou&eacute;</th>
247
                                <th class="colVic">Vic</th>
248
                                <th class="colNul">Nul</th>
249
                                <th class="colDef">D&eacute;f</th>
250
                                <th class="colPen">P&eacute;n</th>
251
                                <th class="colPG">PG</th>
252
                                <th class="colPP">PP</th>
253
                                <th class="colDiff">Diff</th>
254
                        </tr>
255
<?php
256
        $i = 0;
257
        if ($equipes) foreach ($Rang as $equipe => $r) {
258
                $i++;
259
?>
260
                        <tr>
261
                                <td class="colClt"><?=(isset($last) && $last == $Pts[$equipe]) ? "-" : $i?></td>
262
                                <td class="colEquipe"><?=$equipes[$equipe]?></td>
263
                                <td class="colPts"><?=$Pts[$equipe]?></td>
264
                                <td class="colJoue"><?=$Joue[$equipe]?></td>
265
                                <td class="colVic"><?=($Vic[$equipe]) ? $Vic[$equipe] : "0"?></td>
266
                                <td class="colNul"><?=($Nul[$equipe]) ? $Nul[$equipe] : "0"?></td>
267
                                <td class="colDef"><?=($Def[$equipe]) ? $Def[$equipe] : "0"?></td>
268
                                <td class="colPen"><?=($Pen[$equipe]) ? $Pen[$equipe] : "0"?></td>
269
                                <td class="colPG"><?=($PG[$equipe]) ? $PG[$equipe] : "0"?></td>
270
                                <td class="colPP"><?=($PP[$equipe]) ? $PP[$equipe] : "0"?></td>
271
                                <td class="colDiff"><?=($Diff[$equipe]) ? $Diff[$equipe] : "0"?></td>
272
                        </tr>
273
<?php
274
                $last = $Pts[$equipe];
275
        }
276
?>
277
                </table>
278
        </div>
279
        <br />
280
<?php
281
        $j = 0;
282
        foreach ($rencontres as $j => $rencontre) {
283
?>
284
        <div class="tabJournee">
285
                <table>
286
                        <tr>
287
                                <th class="colJournee" colspan="6">Journ&eacute;e <?=$j?></th>
288
                        <tr>
289
<?php
290
                foreach ($rencontre as $r) {
291
                        list($domicile, $visiteur, $ptsDom, $ptsVis) = explode(":", $r);
292
?>
293
                        <tr>
294
                                <td class="colDom"><div<?=($ptsDom != "" && $ptsVis != "" && $ptsDom >= $ptsVis) ? " class=\"vainqueur\"": ""?>><?=$equipes[$domicile]?></div></td>
295
                                <td class="colSep">&nbsp;-&nbsp;</td>
296
                                <td class="colVis"><div<?=($ptsDom != "" && $ptsVis != "" && $ptsVis >= $ptsDom) ? " class=\"vainqueur\"": ""?>><?=$equipes[$visiteur]?></div></td>
297
                                <td class="colPtsDom"><?=$ptsDom?></td>
298
                                <td class="colPtsVis"><?=$ptsVis?></td>
299
<?php if (IamAdmin()) { ?>
300
                                <td>
301
<?php $value = "$j-$domicile-$visiteur"; ?>
302
                                        <input type="submit" name="rencontre-<?=$value?>" value="modifier" />
303
                                        <input type="submit" name="rencontre-<?=$value?>" value="supprimer" onClick='return confirm("Voulez-vous vraiment effacer cette rencontre entre\n<?=$equipes[$domicile]?> et <?=$equipes[$visiteur]?> ?")' />
304
                                </td>
305
<?php } ?>
306
                        </tr>
307
<?php
308
                }
309
?>
310
                </table>
311
        </div>
312
        <br />
313
<?php
314
        }
315
?>
316
<?php if (IamAdmin()) { ?>
317
<?php         if ($equipes) { ?>
318
        <div id="rencontre-ajouter">
319
                <input type="submit" name="rencontre-ajouter" value="ajouter une rencontre" />
320
        </div>
321
<?php         } ?>
322
        </form>
323
<?php } ?>
324
</body>
325
</html>