crabs_cms-1.0.4 ©2006-2008 - Christophe Cazajus (crabs-mettre_le_signe_at-crabs-world.com)
1 <?xml version="1.0" encoding="iso-8859-15" ?> 2 <xsl:stylesheet 3 xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 4 version="1.0"> 5 <xsl:output encoding="iso-8859-15" method="html" 6 doctype-public="-//W3C//DTD HTML 4.01//EN" 7 doctype-system="http://www.w3.org/TR/html4/strict.dtd" /> 8 <xsl:strip-space elements="*"/> 9 <xsl:preserve-space elements="index dossier article nouveaute"/> 10 <!--GPL--> 11 <!-- 12 ============================================================================= 13 crabs_cms-1.0.4 : Crabs Contents Management System 14 Copyright (C) 2006-2008 : Christophe Cazajus (crabs-mettre_le_signe_at-crabs-world.com) 15 16 Ce source fait partie d'un projet logiciel libre. Vous pouvez le distribuer 17 et/ou le modifier en respectant les termes de la GNU General Public License 18 version 2 ou (suite a votre propre choix) une version ulterieure. 19 20 Ce programme est distribue dans l'espoir qu'il puisse etre utile, mais 21 sans aucune garantie, meme si il est associe a un produit qui vous en 22 propose une. Conformez-vous a la GNU General Public License pour avoir 23 plus de precisions. 24 25 L'auteur ne peut etre tenu responsable de l'utilisation faite des 26 composantes associees a ce projet (en partie ou dans leur totalite). 27 28 Une copie du fichier de la GNU GPL est fournie dans le repertoire DOC 29 de ce projet sous le nom gnu_gpl.txt 30 31 ============================================================================= 32 --> 33 <!-- 34 ### #### 35 ### LA PAGE #### 36 ### #### 37 --> 38 <xsl:template match="/"> 39 <html> 40 <head> 41 <link rel="stylesheet" href="{//document/root}/STYLE/forum.css" 42 type="text/css" /> 43 <title><xsl:value-of select="//document/titre"/></title> 44 <xsl:if test="//document/description"> 45 <meta name="description" content="{//document/description}"/> 46 </xsl:if> 47 </head> 48 <body> 49 <div id="logo"><xsl:value-of select="//document/titre"/></div> 50 <div id="menu_principal"> 51 <xsl:choose><xsl:when test="//document/membre"> 52 <span class="a_droite"> 53 <a href="{//document/root}/MEMBRE/logout.php" 54 title="Redevenir anonyme" 55 >Déconnexion</a> 56 </span> 57 <span class="a_droite"> 58 <a href="{//document/root}/MEMBRE/GESTION/" 59 title="Gestion du site" 60 >Membres</a> 61 </span> 62 <span class="a_droite"> 63 <a href="contribution.php" 64 title="vos contributions et messages dans le forum" 65 >Contributions</a> 66 </span> 67 </xsl:when><xsl:when test="//document/forum_membre"> 68 <span class="a_droite"> 69 <a href="{//document/root}/FORUM/logout.php" 70 title="Redevenir anonyme" 71 >Déconnexion</a> 72 </span> 73 <span class="a_droite"> 74 <a href="contribution.php" 75 title="vos contributions et messages dans le forum" 76 >Contributions</a> 77 </span> 78 </xsl:when><xsl:otherwise> 79 <span class="a_droite"> 80 <a href="{//document/root}/membre.php" 81 title="Reservé aux membres" 82 >Connexion</a> 83 </span> 84 </xsl:otherwise></xsl:choose> 85 <xsl:apply-templates select="//document/menu/item" mode="menu"/> 86 <span class="item"> 87 <a href="index.php" title="Accéder au forum du site" 88 >Forums</a> 89 </span> 90 </div> 91 <xsl:apply-templates /> 92 <div class="charte"> 93 <xsl:variable name="post"> 94 <xsl:choose><xsl:when test="//document/membre"> 95 <xsl:text>oui</xsl:text> 96 </xsl:when><xsl:when test="//document/forum_membre"> 97 <xsl:text>oui</xsl:text> 98 </xsl:when><xsl:otherwise> 99 <xsl:text>non</xsl:text> 100 </xsl:otherwise></xsl:choose> 101 </xsl:variable> 102 <xsl:choose><xsl:when test="$post='non'"> 103 <p>Suite à l'utilisation abusive des forums publics par des 104 « robots spammer » vous devez ouvrir un 105 compte pour participer aux forums.</p> 106 <p>Vous choisirez votre pseudo, qui ne devra pas déjà être 107 utilisé, et vous préciserez une adresse mail valide. Cette adresse 108 ne servira qu'aux services propres à votre connexion :</p> 109 <ul> 110 <li>recevoir le mail de confirmation de l'inscription,</li> 111 <li>recevoir, dans le cas de l'oubli de l'actuel, un nouveau mot de 112 passe (uniquement à cette adresse).</li> 113 </ul> 114 <p>Nous nous engageons à conserver ces informations uniquement dans 115 le cadre du fonctionnement du site afin de vous permettre de participer 116 aux forums.</p> 117 <p>Utiliser le lien suivant pour vous inscrire : 118 <a href="inscrire.php">Vous inscrire</a>.</p> 119 <p>Si vous disposez d'un compte valide, utilisez la page de connexion 120 (lien «connexion» dans le menu en haut de la page).</p> 121 <p>Votre navigateur devra être comptible avec le XML + XSL, cas de la 122 plus part des navigateurs modernes. Afin de le vérifier, veillez à ce 123 que la page d'inscription s'affiche correctement.</p> 124 </xsl:when><xsl:otherwise> 125 <p>écrire la charte</p> 126 </xsl:otherwise></xsl:choose> 127 </div> 128 <div id="bas_de_page"> 129 <p>Site de demonstration de Crabs-CMS</p> 130 <!-- merci de laisser ce lien --> 131 <p><a href="http://www.crabs-world.com/"> 132 <img src="{//document/root}/IMAGES/crabe.jpeg" 133 alt="Développement Crabs CMS sur le Monde de Crabs" 134 title="Développement Crabs CMS sur le Monde de Crabs" 135 width="100" height="40" /> 136 </a></p> 137 </div> 138 </body> 139 </html> 140 </xsl:template> 141 142 <!-- ICI les elements à ingnorer --> 143 <xsl:template match="titre"></xsl:template> 144 <xsl:template match="accueil"></xsl:template> 145 <xsl:template match="root"></xsl:template> 146 <xsl:template match="urladd"></xsl:template> 147 <xsl:template match="ext"></xsl:template> 148 <xsl:template match="description"></xsl:template> 149 <xsl:template match="menu"></xsl:template> 150 <xsl:template match="liste"></xsl:template> 151 152 <xsl:template match="item" mode="menu"> 153 <span class="item"> 154 <a href="{//document/root}/{//document/urladd}{@page}.{//document/ext}" 155 title="{@titre}" 156 ><xsl:value-of select="@titre_item"/></a> 157 </span> 158 </xsl:template> 159 160 <!-- 161 ### #### 162 ### PAGE : LA LISTE DES FORUMS #### 163 ### #### 164 --> 165 <xsl:template match="forums"> 166 <div id="forums"> 167 <h1>Les forums</h1> 168 <xsl:apply-templates mode="forums" /> 169 </div> 170 </xsl:template> 171 <xsl:template match="forum" mode="forums"> 172 <div class="forum"> 173 <div class="titre"> 174 <a href="forum.php?f={@fid}"><xsl:value-of select="titre"/></a> 175 </div> 176 <div class="info"><xsl:value-of select="info"/></div> 177 <div class="item">forum '<xsl:value-of select="item"/>'</div> 178 </div> 179 </xsl:template> 180 <!-- 181 ### #### 182 ### PAGE : LA LISTE DES THREADS #### 183 ### #### 184 --> 185 <xsl:template match="threads"> 186 <div id="forums"> 187 <xsl:apply-templates mode="threads" select="forums"/> 188 <h1><xsl:value-of select="forums/forum[@courant='oui']/titre"/></h1> 189 <table class="threads"> 190 <tr> 191 <th>Sujet</th> 192 <th>Auteur</th> 193 <th>Date</th> 194 <th colspan="2">Réponses</th> 195 </tr> 196 <xsl:apply-templates mode="threads" select="thread"/> 197 </table> 198 <xsl:if test="@post='oui'"> 199 <xsl:variable name="pseudo"> 200 <xsl:choose><xsl:when test="//document/membre"> 201 <xsl:value-of select="//document/membre/@pseudo"/> 202 </xsl:when><xsl:when test="//document/forum_membre"> 203 <xsl:value-of select="//document/forum_membre/@pseudo"/> 204 </xsl:when><xsl:otherwise> 205 <xsl:text>Inconnu (pas normal...)</xsl:text> 206 </xsl:otherwise></xsl:choose> 207 </xsl:variable> 208 <form method="post" action="thread_ouvrir.php"><table> 209 <input type="hidden" name="pseudo" value="{$pseudo}"/> 210 <input type="hidden" name="fid" value="{@fid}"/> 211 <tr><th colspan="2">Ouvrir une discussion</th></tr> 212 <tr> 213 <td class="label">Pseudo :</td> 214 <td class="saisie"><xsl:value-of select="$pseudo"/></td> 215 </tr><tr> 216 <td class="label">Sujet :</td> 217 <td class="saisie"> 218 <input type="text" size="60" name="titre" value=""/> 219 </td> 220 </tr><tr> 221 <td class="label">Message :</td> 222 <td class="saisie"> 223 <textarea name="question" rows="12" cols="60" 224 ></textarea> 225 </td> 226 </tr><tr> 227 <td class="bouton" colspan="2"> 228 <input name="ok" value="Envoyer" type="submit" /> 229 </td> 230 </tr> 231 </table></form> 232 </xsl:if> 233 <xsl:apply-templates mode="threads" select="forums"/> 234 </div> 235 </xsl:template> 236 <xsl:template match="forums" mode="threads"> 237 <div class="acces_forums"> 238 <xsl:text>Les forums : </xsl:text> 239 <xsl:apply-templates mode="threads" select="forum"/> 240 </div> 241 </xsl:template> 242 <xsl:template match="forum" mode="threads"> 243 <xsl:if test="position()>1">, </xsl:if> 244 <a href="forum.php?f={@fid}" title="Aller sur le forum '{titre}'"> 245 <xsl:value-of select="item"/> 246 </a> 247 </xsl:template> 248 <xsl:template match="thread" mode="threads"> 249 <tr> 250 <td> 251 <a href="thread.php?q={qid}"><xsl:value-of select="titre"/></a> 252 </td> 253 <td style="width:70px;"><xsl:value-of select="qui"/></td> 254 <td style="width:40px;"><xsl:value-of select="quand"/></td> 255 <td style="width:180px;"> 256 <xsl:if test="nb_reponse > 0"> 257 <a href="thread.php?q={qid}#fr{lqid}"> 258 <xsl:value-of select="lqui"/> 259 <xsl:text> le </xsl:text> 260 <xsl:value-of select="lquand"/> 261 </a> 262 </xsl:if> 263 </td> 264 <td style="width:20px;"><xsl:value-of select="nb_reponse"/></td> 265 </tr> 266 </xsl:template> 267 <!-- 268 ### #### 269 ### PAGE : LES MESSAGES D'UN THREAD #### 270 ### #### 271 --> 272 <xsl:template match="thread"> 273 <div id="forums"> 274 <xsl:apply-templates mode="threads" select="forums"/> 275 <h1><xsl:value-of select="le_thread/sujet"/></h1> 276 <p class="action"> 277 <a href="forum.php?f={@fid}"> 278 <xsl:value-of select="forums/forum[@courant='oui']/titre"/> 279 </a> 280 <xsl:text> (</xsl:text> 281 <xsl:value-of select="forums/forum[@courant='oui']/item"/> 282 <xsl:text>)</xsl:text> 283 </p> 284 <xsl:apply-templates mode="thread" select="le_thread/message"/> 285 <xsl:choose><xsl:when test="@ouvert='Y'"> 286 <xsl:if test="@post='oui'"> 287 <xsl:variable name="pseudo"> 288 <xsl:choose><xsl:when test="//document/membre"> 289 <xsl:value-of select="//document/membre/@pseudo"/> 290 </xsl:when><xsl:when test="//document/forum_membre"> 291 <xsl:value-of select="//document/forum_membre/@pseudo"/> 292 </xsl:when><xsl:otherwise> 293 <xsl:text>Inconnu (pas normal...)</xsl:text> 294 </xsl:otherwise></xsl:choose> 295 </xsl:variable> 296 <form method="post" action="thread_repondre.php"><table> 297 <input type="hidden" name="pseudo" value="{$pseudo}"/> 298 <input type="hidden" name="fid" value="{@fid}"/> 299 <input type="hidden" name="qid" value="{@qid}"/> 300 <tr><th colspan="2">Continuer la discussion</th></tr> 301 <tr> 302 <td class="label">Pseudo :</td> 303 <td class="saisie"><xsl:value-of select="$pseudo"/></td> 304 </tr><tr> 305 <td class="label">Sujet :</td> 306 <td class="saisie"> 307 <xsl:value-of select="le_thread/sujet"/> 308 </td> 309 </tr><tr> 310 <td class="label">Message :</td> 311 <td class="saisie"> 312 <textarea name="reponse" rows="12" cols="60" 313 ></textarea> 314 </td> 315 </tr><tr> 316 <td class="bouton" colspan="2"> 317 <input name="ok" value="Envoyer" type="submit" /> 318 </td> 319 </tr> 320 </table></form> 321 </xsl:if> 322 </xsl:when><xsl:otherwise> 323 <p class="ferme">Cette discussion est fermée.</p> 324 </xsl:otherwise></xsl:choose> 325 <xsl:apply-templates mode="threads" select="forums"/> 326 </div> 327 </xsl:template> 328 329 <xsl:template match="message" mode="thread"> 330 <div class="message"> 331 <div class="qui_quand"> 332 <xsl:text>Par </xsl:text> 333 <xsl:value-of select="pseudo"/> 334 <xsl:text>, le </xsl:text> 335 <xsl:value-of select="date"/> 336 <a name="{@table}{@id}"> </a> 337 </div> 338 <div class="texte"><xsl:copy-of select="texte"/></div> 339 <xsl:if test="//document/thread/@modere='oui'"> 340 <p class="action"> 341 <a href="modere.php?t={@table}&id={@id}&q={../../@qid}">Modérer</a> 342 <xsl:text>, </xsl:text> 343 <a href="supprime.php?t={@table}&id={@id}&f={../../@fid}&q={../../@qid}">supprimer</a> 344 <xsl:text>, </xsl:text> 345 <xsl:choose><xsl:when test="//document/thread/@ouvert='Y'"> 346 <a href="ferme.php?q={//document/thread/@qid}">fermer</a> 347 </xsl:when><xsl:otherwise> 348 <a href="ouvre.php?q={//document/thread/@qid}">ouvrir</a> 349 </xsl:otherwise></xsl:choose> 350 <xsl:text>.</xsl:text> 351 </p> 352 </xsl:if> 353 </div> 354 </xsl:template> 355 356 <xsl:template match="modere"> 357 <div id="forums"> 358 <form method="post" action="modere_done.php"><table> 359 <input type="hidden" name="table" value="{@table}"/> 360 <input type="hidden" name="id" value="{@id}"/> 361 <input type="hidden" name="qid" value="{@qid}"/> 362 <tr><th colspan="2">Modérer la discussion</th></tr> 363 <xsl:if test="titre"> 364 <tr> 365 <td class="label">Sujet :</td> 366 <td class="saisie"> 367 <input type="text" size="60" name="titre" value="{titre}"/> 368 </td> 369 </tr> 370 </xsl:if> 371 <tr> 372 <td class="label">Message :</td> 373 <td class="texte"> 374 <textarea name="texte" rows="12" cols="60" 375 ><xsl:value-of select="texte"/></textarea> 376 </td> 377 </tr><tr> 378 <td class="bouton" colspan="2"> 379 <input name="ok" value="Modérer" type="submit" /> 380 </td> 381 </tr> 382 </table></form> 383 </div> 384 </xsl:template> 385 386 <xsl:template match="inscrire"> 387 <div id="forums"> 388 <xsl:for-each select="erreur|info"> 389 <p class="{name()}"><xsl:value-of select="text()"/></p> 390 </xsl:for-each> 391 <xsl:if test="@formulaire='oui'"> 392 <form method="post" action="inscrire.php"><table> 393 <tr><th colspan="2">Création d'un compte Forum</th></tr> 394 <tr> 395 <td class="label">Pseudo :</td> 396 <td class="saisie"> 397 <input type="text" size="32" name="p" value="{pseudo}"/> 398 </td> 399 </tr> 400 <tr> 401 <td class="label">Email :</td> 402 <td class="saisie"> 403 <input type="text" size="64" name="e" value="{email}"/> 404 </td> 405 </tr> 406 <tr> 407 <td class="bouton" colspan="2"> 408 <input name="ok" value="Envoyer" type="submit" /> 409 </td> 410 </tr> 411 </table></form> 412 </xsl:if> 413 </div> 414 </xsl:template> 415 416 <xsl:template match="confirme"> 417 <div id="forums"> 418 <xsl:for-each select="erreur|info"> 419 <p class="{name()}"><xsl:value-of select="text()"/></p> 420 </xsl:for-each> 421 <xsl:if test="@formulaire='oui'"> 422 <form method="post" action="confirme.php"><table> 423 <input type="hidden" name="c" value="{cle}"/> 424 <tr><th colspan="2">Confirmation de la création d'un compte</th></tr> 425 <tr> 426 <td class="label">Pseudo :</td> 427 <td class="saisie"> 428 <input type="text" size="32" name="p" value="{pseudo}"/> 429 </td> 430 </tr> 431 <tr> 432 <td class="label">Mot de Passe :</td> 433 <td class="saisie"> 434 <input type="password" size="32" name="op" value=""/> 435 </td> 436 </tr> 437 <tr> 438 <td class="label">Nouveau Mot de Passe :</td> 439 <td class="saisie"> 440 <input type="password" size="32" name="np1" value=""/> 441 </td> 442 </tr> 443 <tr> 444 <td class="label">Confirmation :</td> 445 <td class="saisie"> 446 <input type="password" size="32" name="np2" value=""/> 447 </td> 448 </tr> 449 <tr> 450 <td class="bouton" colspan="2"> 451 <input name="ok" value="Confirmer" type="submit" /> 452 </td> 453 </tr> 454 </table></form> 455 </xsl:if> 456 </div> 457 </xsl:template> 458 <!-- 459 ### #### 460 ### PAGE : LES CONTRIBUTIONS #### 461 ### #### 462 --> 463 <xsl:template match="contributions"> 464 <div id="forums"> 465 <xsl:apply-templates mode="threads" select="forums"/> 466 <h1>Contributions</h1> 467 <table class="threads"> 468 <tr> 469 <th>Sujet</th> 470 <th>Auteur</th> 471 <th>Date</th> 472 <th colspan="2">Réponses</th> 473 </tr> 474 <xsl:apply-templates mode="contrib" select="thread"/> 475 </table> 476 <xsl:apply-templates mode="threads" select="forums"/> 477 </div> 478 </xsl:template> 479 480 <xsl:template match="thread" mode="contrib"> 481 <tr> 482 <td> 483 <a href="thread.php?q={qid}"><xsl:value-of select="titre"/></a> 484 </td> 485 <td style="width:70px;"><xsl:value-of select="qui"/></td> 486 <td style="width:40px;"><xsl:value-of select="quand"/></td> 487 <td style="width:180px;"> 488 <xsl:if test="nb_reponse > 0"> 489 <a href="thread.php?q={qid}#fr{lqid}"> 490 <xsl:value-of select="lqui"/> 491 <xsl:text> le </xsl:text> 492 <xsl:value-of select="lquand"/> 493 </a> 494 </xsl:if> 495 </td> 496 <td style="width:20px;"><xsl:value-of select="nb_reponse"/></td> 497 </tr> 498 </xsl:template> 499 500 </xsl:stylesheet> 501
Date de génération : 24/10/2008 21:34