bug3
[aidenligne_francais_universite.git] / fluxbb / plugins / AMP_Exemple.php
1 <?php
2 /***********************************************************************
3
4 Copyright (C) 2002-2005 Rickard Andersson (rickard@punbb.org)
5
6 This file is part of PunBB.
7
8 PunBB is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published
10 by the Free Software Foundation; either version 2 of the License,
11 or (at your option) any later version.
12
13 PunBB is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21 MA 02111-1307 USA
22
23 ************************************************************************/
24
25 ##
26 ##
27 ## Voici quelques notes intérrêssantes pour les aspirants auteurs de plugin :
28 ##
29 ## 1. Si vous voulez afficher un message par l\92intermédiaire de la fonction
30 ## message(), vous devez le faire avant d\92appeler generate_admin_menu($plugin).
31 ##
32 ## 2. Les plugins sont chargés par admin_loader.php et ne doivent pas être terminés
33 ## (par exemple en appelant exit()). Après que le script du plugin ait fini, le
34 ## script du chargeur affiche le pied de page, ainsi inutil de vous souciez de cela.
35 ## Cependant veuillez noter que terminer un plugin en appelant message() ou
36 ## redirect() est très bien.
37 ##
38 ## 3. L\92attribut action de toute balise <forme> et l\92URL cible pour la fonction
39 ## redirect() doit être placé à la valeur de $_SERVER[\92REQUEST_URI\92]. Cette
40 ## URL peut cependant être étendue pour inclure des variables supplémentaires
41 ## (comme l\92ajout de &foo=bar dans le plugin exemple).
42 ##
43 ## 4. Si votre plugin est pour les administrateurs seulement, le nom de fichier
44 ## doit avoir le préfixe AP_. S\92il est pour les administrateurs et les modérateurs,
45 ## utilisez le préfixe AMP_. Le plugin exemple a le préfixe AMP_ et est donc
46 ## disponible dans le menu de navigation aux administrateurs et aux modérateurs.
47 ##
48 ## 5. Utilisez _ au lieu des espaces dans le nom de fichier.
49 ##
50 ## 6. Tant que les scripts de plugin sont inclus depuis le scripts admin_loader.php
51 ## de FluxBB, vous avez accès toutes les fonctions et variables globales de FluxBB
52 ## (par exemple $db, $pun_config, $pun_user etc.).
53 ##
54 ## 7. Faites de votre mieux pour garder l\92aspect et l\92ergonomie de votre interface
55 ## utilisateur de plugins semblable au reste des scripts d\92administration.
56 ## N\92hésitez pas à emprunter le marquage et le code aux scripts d\92admin pour
57 ## l\92employer dans vos plugins.
58 ##
59 ## 8. Les plugins doivent êtres délivrés sous la licence d\92utilisation GNU/GPL ou
60 ## une licence compatible. Recopiez le préambule GPL (situé en haut des scripts
61 ## de PunBB) dans votre script de plugin et changez l e copyright pour qu\92il
62 ## corresponde à l\92auteur du plugin (c\92est à dire vous).
63 ##
64 ##
65
66
67 // Make sure no one attempts to run this script "directly"
68 if (!defined('PUN'))
69 exit;
70
71 // Tell admin_loader.php that this is indeed a plugin and that it is loaded
72 define('PUN_PLUGIN_LOADED', 1);
73
74 //
75 // The rest is up to you!
76 //
77
78 // If the "Show text" button was clicked
79 if (isset($_POST['show_text']))
80 {
81 // Make sure something something was entered
82 if (trim($_POST['text_to_show']) == '')
83 message('You didn\'t enter anything!');
84
85 // Display the admin navigation menu
86 generate_admin_menu($plugin);
87
88 ?>
89 <div class="block">
90 <h2><span>Plugin exemple</span></h2>
91 <div class="box">
92 <div class="inbox">
93 <p>Vous avez dit "<?php echo pun_htmlspecialchars($_POST['text_to_show']) ?>". Bon boulot.</p>
94 <p><a href="javascript: history.go(-1)">Retour</a></p>
95 </div>
96 </div>
97 </div>
98 <?php
99
100 }
101 else // If not, we show the "Show text" form
102 {
103 // Display the admin navigation menu
104 generate_admin_menu($plugin);
105
106 ?>
107 <div id="exampleplugin" class="blockform">
108 <h2><span>Plugin exemple</span></h2>
109 <div class="box">
110 <div class="inbox">
111 <p>Ce plugin ne fait rien de bien utile. D'où le nom &quot;Exemple&quot;.</p>
112 <p>Ce serait un bon endroit pour parler au sujet de votre plugin. Décrivez ce qu'il fait et comment il devrait être utilisé. Soyez bref, mais instructif.</p>
113 </div>
114 </div>
115
116 <h2 class="block2"><span>Un formulaire d'exemple</span></h2>
117 <div class="box">
118 <form id="example" method="post" action="<?php echo $_SERVER['REQUEST_URI'] ?>&amp;foo=bar">
119 <div class="inform">
120 <fieldset>
121 <legend>Saisissez un bout de texte et cliquez "Afficher"&nbsp;!</legend>
122 <div class="infldset">
123 <table class="aligntop" cellspacing="0">
124 <tr>
125 <th scope="row">Texte à afficher<div><input type="submit" name="show_text" value=" Afficher le texte " tabindex="2" /></div></th>
126 <td>
127 <input type="text" name="text_to_show" size="25" tabindex="1" />
128 <span>Le texte que vous voulez afficher.</span>
129 </td>
130 </tr>
131 </table>
132 </div>
133 </fieldset>
134 </div>
135 </form>
136 </div>
137 </div>
138 <?php
139
140 }
141
142 // Note that the script just ends here. The footer will be included by admin_loader.php.