Dépôt officiel du core SPIP * Copie possible par svn sur svn://trac.rezo.net/spip * Les svn:externals sont présent dans https://git.spip.net/SPIP/[nom du plugin dist]
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.4 KiB

<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2019 *
* 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. *
\***************************************************************************/
/**
* Gestion d'affichage ajax d'une rubrique sélectionnée dans le mini navigateur
*
* @package SPIP\Core\Exec
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
Pour eviter aux scripts Ajax de charger systématiquement les 130Ko totalisés par inc/minipres.php inc/texte.php inc/filtres.php et inc/charsets.php (et pour faciliter la lecture de ecrire/index.php aux nouveaux venus), cette suite d'inclusions ne sera bientot plus opérées par ecrire/index;php. Cette opération devait transparente pour le noyau, mais pourra etre perceptible pour les extensions de SPIP définissant ou complétant l'espace privé, notamment en créant des fichiers dans un répertoire exec/. Pour se préparer à ce changement, ces extensions ont deux possibilités: - la plus simple: rajouter dans leurs fichiers le {{{include_spip('inc/minipres/')}}} qui sera bientot retiré de ecrire/index.php - la plus pertinente: tester chacun de ces fichiers pour regarder s'ils ont besoin ou non de ces 130Ko. Pour ce faire on peut utiliser le shell-script suivant, où la variable {{{session}}} doit etre affectée à une session valide sur votre machine: #!/bin/sh session="require('../tmp/sessions/521_0a154a3fdb1dfa9443d8cec28e7c5743.php');" for i in ??*.php do z=../_$i.php sed "s,<\?php,<\?php require 'inc_version.php';spip_connect();include_spip('inc/sessions');$session," $i > $z f=$(basename $i .php) echo "<?php exec_${f}_dist(); ?>" >> $z echo ">>>>>>>>>>>>>$i" php -q $z |grep Fatal rm $z done Il faut aussi executer ce script avec {{{session=''}}} pour bien faire. Les messages de fonctions indéfinies qui pourraient arriver pendant ces exécutions signalent qu'une au moins des 4 inclusions éliminées est indispensable au script considéré, il faut alors l'ajouter à l'endroit approprié. Le présent dépot ajoute les inclusions repérées par ce shell-script. Elle sont donc superflues jusqu'au remplacement de inc/minipres par inc/lang dans index.php.
16 years ago
include_spip('inc/actions');
/**
9 years ago
* Affiche en ajax des informations d'une rubrique selectionnée dans le mini navigateur
*
* @uses inc_informer_dist()
9 years ago
* @uses ajax_retour()
**/
function exec_informer_dist() {
$id = intval(_request('id'));
$col = intval(_request('col'));
$exclus = intval(_request('exclus'));
$do = _request('do');
if (preg_match('/^\w*$/', $do)) {
if (!$do) {
$do = 'aff';
}
$informer = charger_fonction('informer', 'inc');
$res = $informer($id, $col, $exclus, _request('rac'), _request('type'), $do);
} else {
$res = '';
}
ajax_retour($res);
}