| [ Index ] |
|
Code source de SPIP 1.9.2c |
1 <?php 2 3 /***************************************************************************\ 4 * SPIP, Systeme de publication pour l'internet * 5 * * 6 * Copyright (c) 2001-2007 * 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 if (!defined("_ECRIRE_INC_VERSION")) return; 14 15 include_spip('inc/charsets'); # pour le nom de fichier 16 include_spip('base/abstract_sql'); 17 18 // Effacer un doc (et sa vignette) 19 // http://doc.spip.org/@action_supprimer_dist 20 function action_supprimer_dist() { 21 22 $securiser_action = charger_fonction('securiser_action', 'inc'); 23 $arg = $securiser_action(); 24 25 preg_match('/^(\w+)\W(.*)$/', $arg, $r); 26 $var_nom = 'action_supprimer_' . $r[1]; 27 if (function_exists($var_nom)) { 28 spip_log("$var_nom $r[2]"); 29 $var_nom($r[2]); 30 } 31 else 32 spip_log("action supprimer $arg incompris"); 33 } 34 35 // Ne pas confondre cette fonction avec celle au pluriel ci-dessous 36 37 // http://doc.spip.org/@action_supprimer_document 38 function action_supprimer_document($arg) { 39 global $redirect; 40 supprimer_document_et_vignette(intval($arg)); 41 $redirect = rawurldecode($redirect); 42 if (strpos($redirect, 'id_rubrique=')) { 43 include_spip('inc/rubriques'); 44 calculer_rubriques(); 45 } 46 redirige_par_entete($redirect); 47 } 48 49 50 // http://doc.spip.org/@action_supprimer_rubrique 51 function action_supprimer_rubrique($id_rubrique) 52 { 53 spip_query("DELETE FROM spip_rubriques WHERE id_rubrique=$id_rubrique"); 54 // Les admin restreints qui n'administraient que cette rubrique 55 // deviennent redacteurs 56 // (il y a sans doute moyen de faire ca avec un having) 57 58 $q = spip_query("SELECT id_auteur FROM spip_auteurs_rubriques WHERE id_rubrique=$id_rubrique"); 59 60 while ($r = spip_fetch_array($q)) { 61 $id_auteur = $r['id_auteur']; 62 spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_rubrique=$id_rubrique AND id_auteur=$id_auteur"); 63 $n = spip_num_rows(spip_query("SELECT id_auteur FROM spip_auteurs_rubriques WHERE id_auteur=$id_auteur LIMIT 1")); 64 if (!$n) 65 spip_query("UPDATE spip_auteurs SET statut='1comite' WHERE id_auteur=$id_auteur"); 66 } 67 68 include_spip('inc/rubriques'); 69 calculer_rubriques(); 70 calculer_langues_rubriques(); 71 72 // invalider les caches marques de cette rubrique 73 include_spip('inc/invalideur'); 74 suivre_invalideur("id='id_rubrique/$id_rubrique'"); 75 76 } 77 78 // http://doc.spip.org/@supprimer_document_et_vignette 79 function supprimer_document_et_vignette($arg) 80 { 81 $result = spip_query("SELECT id_vignette, fichier FROM spip_documents WHERE id_document=$arg"); 82 if ($row = spip_fetch_array($result)) { 83 $fichier = $row['fichier']; 84 $id_vignette = $row['id_vignette']; 85 spip_query("DELETE FROM spip_documents WHERE id_document=$arg"); 86 spip_query("UPDATE spip_documents SET id_vignette=0 WHERE id_vignette=$arg"); 87 spip_query("DELETE FROM spip_documents_articles WHERE id_document=$arg"); 88 spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=$arg"); 89 spip_query("DELETE FROM spip_documents_breves WHERE id_document=$arg"); 90 @unlink($fichier); 91 92 if ($id_vignette > 0) { 93 $result = spip_query("SELECT id_vignette, fichier FROM spip_documents WHERE id_document=$id_vignette"); 94 95 if ($row = spip_fetch_array($result)) { 96 $fichier = $row['fichier']; 97 @unlink($fichier); 98 } 99 spip_query("DELETE FROM spip_documents WHERE id_document=$id_vignette"); 100 spip_query("DELETE FROM spip_documents_articles WHERE id_document=$id_vignette"); 101 spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=$id_vignette"); 102 spip_query("DELETE FROM spip_documents_breves WHERE id_document=$id_vignette"); 103 } 104 } 105 } 106 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
| Généré le : Wed Nov 21 10:20:27 2007 | par Balluche grâce à PHPXref 0.7 |
|