43 lines
1.3 KiB
PHP
43 lines
1.3 KiB
PHP
<?php
|
|
if (!defined('_ECRIRE_INC_VERSION')) return;
|
|
|
|
function action_bigform_supprimer_doc_dist($arg = null){
|
|
|
|
if ($arg === null) {
|
|
$securiser_action = charger_fonction('securiser_action', 'inc');
|
|
$arg = $securiser_action();
|
|
list($id_document, $id_objet, $objet) = explode('-', $arg);
|
|
} else {
|
|
list($id_document, $id_objet, $objet) = $arg;
|
|
}
|
|
|
|
include_spip('inc/autoriser');
|
|
|
|
// il faut ajouter id_objet / objet
|
|
if (!autoriser('dissociersupprimer', 'document', $id_document)) {
|
|
spip_log("Echec : Dissociation / Suppression document $id_document interdite", _LOG_ERREUR);
|
|
return false;
|
|
}
|
|
|
|
if (intval($id_document) and intval($id_objet) and $objet) {
|
|
include_spip('inc/documents');
|
|
if (!$doc = sql_fetsel('*', 'spip_documents', 'id_document=' . intval($id_document))) {
|
|
spip_log("Echec : Suppression document $id_document : le document n'existe pas en base", _LOG_ERREUR);
|
|
return false;
|
|
}
|
|
sql_delete('spip_documents_liens',
|
|
['id_document='.intval($id_document),
|
|
'id_objet='.intval($id_objet),
|
|
'objet='.sql_quote($objet)]);
|
|
|
|
|
|
sql_delete('spip_documents', 'id_document=' . intval($id_document));
|
|
|
|
spip_unlink(get_spip_doc($doc['fichier']));
|
|
}
|
|
|
|
// Cache
|
|
include_spip('inc/invalideur');
|
|
suivre_invalideur("id='id_document/$id_document'");
|
|
|
|
}
|