<?php // index.php // Administration de l'extension : initialisations (tables, fichier de configuration) , information etc. : toutes // opérations réservées à l'administrateur technique de Wikini. // Vérification de sécurité if (!defined("TOOLS_MANAGER")) { die("accès direct interdit"); } // Affichage au moyen de la méthode statique buffer::str : buffer::str('Parametrage de l\'extension Hello ...' . '<br />'); // Utilisation d'un objet Wiki pour acces à la base de donnée $wiki = new Wiki($wakkaConfig); buffer::str('Utilisateurs enregistrés : ' . '<br />'); $last_users = $wiki->LoadAll("select name, signuptime from " . $wiki->config["table_prefix"] . "users order by signuptime desc limit 10"); foreach ($last_users as $user) { buffer::str($user["name"] . " . . . " . $user["signuptime"] . "<br />\n"); }
// -- (1) Formulaire d'accueil de l'action ------------------------------- // // Le formulaire est affiché si aucun spammer n'a encore été précisé ou // si le champ a été laissé vide et validé if (empty($_POST['spammer']) && empty($_POST['from']) && !isset($_POST['clean'])) { buffer::str("<div class=\"action_erasespam\">\n" . "<form method=\"post\" action=\"" . $despam_url . "\" name=\"selection\">\n" . "<fieldset>\n" . "<legend>Sélection des pages</legend>\n"); buffer::str("<p>\n" . "Toutes les modifications depuis " . "<select name=\"from\">\n" . "<option selected=\"selected\" value=\"1\">depuis 1 heure</option>\n" . "<option value=\"3\">depuis 3 heures</option>\n" . "<option value=\"6\">depuis 6 heures</option>\n" . "<option value=\"12\">depuis 12 heures</option>\n" . "<option value=\"24\">depuis 24 heures</option>\n" . "<option value=\"48\">depuis 48 heures</option>\n" . "<option value=\"168\">depuis 1 semaine</option>\n" . "<option value=\"336\">depuis 2 semaines</option>\n" . "<option value=\"744\">depuis 1 mois</option>\n" . "</select>\n" . "<button name=\"2\" value=\"Valider\">Valider</button>\n" . "</p>\n"); buffer::str("</fieldset>\n" . "</form>\n" . "</div>\n\n"); } else { if (!isset($_POST['clean'])) { if (isset($_POST['from']) && isset($_POST['2'])) { $requete = "select *\n\t\t\tfrom " . $wiki->config["table_prefix"] . "pages\n\t\t\twhere\n\t\t\ttime > date_sub(now(), interval " . addslashes($_POST['from']) . " hour)\n\t\t\tand latest = 'Y'\n\t\t\torder by `time` desc"; $title = "<p>Nettoyage des pages vandalisées depuis " . $_POST['from'] . " heure(s)</p>\n"; } //buffer::str( $requete; $pagesFromSpammer = $wiki->LoadAll($requete); // Affichage des pages pour validation buffer::str("<div class=\"action_erasespam\">\n"); buffer::str($title); buffer::str("<form method=\"post\" action=\"" . $despam_url . "\">\n"); buffer::str("<table>\n"); foreach ($pagesFromSpammer as $i => $page) { $revisions = $wiki->LoadAll("select * from " . $wiki->config["table_prefix"] . "pages where tag = '" . mysql_escape_string($page["tag"]) . "' order by time desc"); buffer::str("<tr>\n" . "<td>" . $page["tag"] . " " . "(" . $page["time"] . ") " . " par " . $page['user'] . " " . "</td>\n"); buffer::str("<td>" . "<input name=\"suppr[]\" value=\"" . $page["tag"] . "\" type=\"checkbox\" /> [Suppr.!]" . "</td>\n"); buffer::str("<td>\n"); buffer::str("<p>"); buffer::str("_____________________________________________________________________________________________________"); buffer::str("<p>"); foreach ($revisions as $revision) { // Si c'est la dernière version on saute cette itération