123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- /***************************************************************************\
- * SPIP, Systeme de publication pour l'internet *
- * *
- * Copyright (c) 2001-2014 *
- * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
- * *
- * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
- * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
- \***************************************************************************/
- if (!defined("_ECRIRE_INC_VERSION")) return;
- include_spip('base/abstract_sql');
- function action_supprimer_tous_orphelins() {
- $securiser_action = charger_fonction('securiser_action','inc');
- $arg = $securiser_action();
- //on recupere le contexte pour ne supprimer les orphelins que de ce dernier
- list($media,$distant,$statut,$sanstitre) = explode('/',$arg);
-
- //critere sur le media
- if($media)
- $select = "media=".sql_quote($media);
- //critere sur le distant
- if($distant)
- $where[] = "distant=".sql_quote($distant);
- //critere sur le statut
- if($statut)
- $where[] = "statut REGEXP ".sql_quote("($statut)");
- //critere sur le sanstitre
- if($sanstitre)
- $where[] = "titre=''";
- //on isole les orphelins
- $select = sql_get_select("DISTINCT id_document","spip_documents_liens as oooo");
- $cond = "spip_documents.id_document NOT IN ($select)";
- $where[] = $cond;
- $ids_doc_orphelins = sql_select( "id_document", "spip_documents", $where );
- $supprimer_document = charger_fonction('supprimer_document','action');
- while ($row = sql_fetch($ids_doc_orphelins)) {
- $supprimer_document($row['id_document']); // pour les orphelins du contexte, on traite avec la fonction existante
- }
- }
- ?>
|