[SPIP] v3.2.1-->v3.2.2
[lhc/web/www.git] / www / ecrire / base / delete_all.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2019 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
12
13 /**
14 * Gestion d'affichage de la page de destruction des tables de SPIP
15 *
16 * @package SPIP\Core\Base
17 */
18
19 if (!defined('_ECRIRE_INC_VERSION')) {
20 return;
21 }
22
23 /**
24 * Destruction des tables SQL de SPIP
25 *
26 * La liste des tables à supprimer est à poster sur le nom (tableau) `delete`
27 *
28 * @pipeline_appel delete_tables
29 * @param string $titre Inutilisé
30 **/
31 function base_delete_all_dist($titre) {
32 $delete = _request('delete');
33 $res = array();
34 if (is_array($delete)) {
35 foreach ($delete as $table) {
36 if (sql_drop_table($table)) {
37 $res[] = $table;
38 } else {
39 spip_log("SPIP n'a pas pu detruire $table.", _LOG_ERREUR);
40 }
41 }
42
43 // un pipeline pour detruire les tables installees par les plugins
44 pipeline('delete_tables', '');
45
46 spip_unlink(_FILE_CONNECT);
47 spip_unlink(_FILE_CHMOD);
48 spip_unlink(_FILE_META);
49 spip_unlink(_ACCESS_FILE_NAME);
50 spip_unlink(_CACHE_RUBRIQUES);
51 }
52 $d = count($delete);
53 $r = count($res);
54 spip_log("Tables detruites: $r sur $d: " . join(', ', $res), _LOG_INFO_IMPORTANTE);
55 }