Skip to content
Extraits de code Groupes Projets
Valider dc984b7e rédigé par Fil's avatar Fil
Parcourir les fichiers

proposition d'API pour journaliser les evenements qui se produisent dans spip

parent b068032f
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -244,6 +244,7 @@ ecrire/inc/instituer_auteur.php -text ...@@ -244,6 +244,7 @@ ecrire/inc/instituer_auteur.php -text
ecrire/inc/instituer_breve.php -text ecrire/inc/instituer_breve.php -text
ecrire/inc/instituer_site.php -text ecrire/inc/instituer_site.php -text
ecrire/inc/joindre.php -text ecrire/inc/joindre.php -text
ecrire/inc/journal.php -text
ecrire/inc/json.php -text ecrire/inc/json.php -text
ecrire/inc/lang_liste.php -text ecrire/inc/lang_liste.php -text
ecrire/inc/legender.php -text ecrire/inc/legender.php -text
......
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2009 *
* 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;
/*
* Consigner une phrase dans le journal de bord du site
* Cette API travaille a minima, mais un plugin pourra stocker
* ces journaux en base et fournir des outils d'affichage, de selection etc
*
* @param string $journal
* @param array $opt
*/
function journal($phrase, $opt = array()) {
if (!strlen($phrase))
return;
if ($opt)
$phrase .= " :: ".str_replace("\n", ' ', join(', ',$opt));
spip_log($phrase, 'journal');
}
/* Lire le journal de bord en appliquant les criteres de choix
* et le renvoyer sous forme de tableau horodate ; attention a
* limiter a un nombre raisonnable d'items : l'API ne definit
* pas de limite
*
* @param array $criteres
*/
function lire_journal($criteres = null) {
$journal = array();
foreach (array(_DIR_TMP.'prive_journal.log', _DIR_TMP.'journal.log') as $f)
if (@is_readable($f))
foreach(file($f) as $l) {
if ($time = strtotime(join(' ', array_slice(explode(' ',$l),0,3))))
$journal[$time] = join(' ', array_slice(explode(' ',$l),6));
}
krsort($journal);
return $journal;
}
?>
...@@ -157,6 +157,17 @@ function modifier_contenu($type, $id, $options, $c=false, $serveur='') { ...@@ -157,6 +157,17 @@ function modifier_contenu($type, $id, $options, $c=false, $serveur='') {
exit; exit;
} }
// journaliser l'affaire
// message a affiner :-)
include_spip('inc/journal');
include_spip('inc/filtres_mini');
$qui = sinon($GLOBALS['visiteur_session']['nom'], $GLOBALS['ip']);
journal(_L($qui.' a &#233;dit&#233; l&#8217;'.$type.' '.$id.' ('.join('+',array_diff(array_keys($champs), array('date_modif'))).')'), array(
'faire' => 'modifier',
'quoi' => $type,
'id' => $id
));
return true; return true;
} }
......
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