3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2014 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
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 \***************************************************************************/
13 if (!defined('_ECRIRE_INC_VERSION')) return;
15 // http://doc.spip.org/@supprimer_document
16 function action_supprimer_document_dist($id_document) {
17 include_spip('inc/autoriser');
18 if (!autoriser('supprimer','document',$id_document))
21 include_spip('inc/documents');
22 if (!$doc = sql_fetsel('*', 'spip_documents', 'id_document='.$id_document))
25 spip_log("Suppression du document $id_document (".$doc['fichier'].")");
27 // Si c'est un document ayant une vignette, supprimer aussi la vignette
28 if ($doc['id_vignette']) {
29 action_supprimer_document_dist($doc['id_vignette']);
30 sql_delete('spip_documents_liens', 'id_document='.$doc['id_vignette']);
33 // Supprimer le fichier si le doc est local,
34 // et la copie locale si le doc est distant
35 if ($doc['distant'] == 'oui') {
36 include_spip('inc/distant');
37 if ($local = copie_locale($doc['fichier'],'test'))
40 else spip_unlink(get_spip_doc($doc['fichier']));
42 sql_delete('spip_documents', 'id_document='.$id_document);
44 pipeline('post_edition',
47 'operation' => 'supprimer_document',
48 'table' => 'spip_documents',
49 'id_objet' => $id_document