Skip to content
Extraits de code Groupes Projets
Valider d8e057d5 rédigé par cedric@yterium.com's avatar cedric@yterium.com
Parcourir les fichiers

Un lien et une action pour verifier l'utilisation des documents et nettoyer les liens morts

parent ab0a1171
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -9,6 +9,7 @@ action/supprimer_document.php -text ...@@ -9,6 +9,7 @@ action/supprimer_document.php -text
action/supprimer_tous_orphelins.php -text action/supprimer_tous_orphelins.php -text
action/tourner.php -text action/tourner.php -text
action/verifier_documents_brises.php -text action/verifier_documents_brises.php -text
action/verifier_documents_liens.php -text
base/medias.php -text base/medias.php -text
base/typedoc.php -text base/typedoc.php -text
formulaires/changer_fichier_document.html -text formulaires/changer_fichier_document.html -text
......
...@@ -17,11 +17,18 @@ if (!defined("_ECRIRE_INC_VERSION")) return; ...@@ -17,11 +17,18 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
* *
*/ */
function action_verifier_documents_brises_dist() { function action_verifier_documents_brises_dist() {
include_spip('inc/documents');
$res = sql_select('fichier,brise,id_document','spip_documents',"distant='non'"); $securiser_action = charger_fonction('securiser_action', 'inc');
while ($row = sql_fetch($res)){ $arg = $securiser_action();
if (($brise = !@file_exists(get_spip_doc($row['fichier'])))!=$row['brise'])
sql_updateq('spip_documents',array('brise'=>$brise),'id_document='.intval($row['id_document'])); include_spip('inc/autoriser');
if (autoriser('administrer','mediatheque')) {
include_spip('inc/documents');
$res = sql_select('fichier,brise,id_document','spip_documents',"distant='non'");
while ($row = sql_fetch($res)){
if (($brise = !@file_exists(get_spip_doc($row['fichier'])))!=$row['brise'])
sql_updateq('spip_documents',array('brise'=>$brise),'id_document='.intval($row['id_document']));
}
} }
} }
......
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2011 *
* 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;
/**
* Verifier tous les fichiers brises
*
*/
function action_verifier_documents_liens_dist($id_document=null) {
if (is_null($id_document)){
$securiser_action = charger_fonction('securiser_action', 'inc');
$id_document = $securiser_action();
}
$id_document = ($id_document=='*')?'*':intval($id_document);
include_spip('action/editer_liens');
objet_optimiser_liens(array('document'=>$id_document),'*');
}
?>
\ No newline at end of file
...@@ -139,6 +139,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array( ...@@ -139,6 +139,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
// //
'verifier_documents_brises' => 'V&eacute;rifier les fichiers manquants', 'verifier_documents_brises' => 'V&eacute;rifier les fichiers manquants',
'verifier_documents_inutilises' => 'V&eacute;rifier les liens des documents',
'vignette_supprimee' => 'La vignette a &eacute;t&eacute; supprim&eacute;e', 'vignette_supprimee' => 'La vignette a &eacute;t&eacute; supprim&eacute;e',
......
...@@ -62,7 +62,10 @@ ...@@ -62,7 +62,10 @@
[(#GET{editable}) [(#GET{editable})
<div class='actions'> <div class='actions'>
[(#ENV{brise,0}|oui) [(#ENV{brise,0}|oui)
[(#URL_ACTION_AUTEUR{verifier_documents_brises,'1',#GET{self}}|lien_ou_expose{<:medias:verifier_documents_brises:>,0,ajax})] [(#URL_ACTION_AUTEUR{verifier_documents_brises,'1',#GET{self}}|lien_ou_expose{<:medias:verifier_documents_brises:>,0,ajax})]
]
[(#ENV{orphelins,0}|oui)
[(#URL_ACTION_AUTEUR{verifier_documents_liens,'*',#GET{self}}|lien_ou_expose{<:medias:verifier_documents_inutilises:>,0,ajax})]
] ]
[ [
(#INCLURE{fond=prive/squelettes/inclure/ajouter-documents}{env}{ajax}) (#INCLURE{fond=prive/squelettes/inclure/ajouter-documents}{env}{ajax})
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter