X-Git-Url: http://git.cyclocoop.org/?a=blobdiff_plain;f=www%2Fecrire%2Finc%2Fplugin.php;h=c5b09d12282b36f0cc62372cf12ac014a39d4231;hb=5be150361b3c836d9206941ba43f862df11466db;hp=532c34e8a388d80358e4d27b1b19c8cd0cee66c3;hpb=52cf8ed924d5dcd0c28dde4b6c3196be6ec2d4f7;p=ptitvelo%2Fweb%2Fwww.git diff --git a/www/ecrire/inc/plugin.php b/www/ecrire/inc/plugin.php index 532c34e..c5b09d1 100644 --- a/www/ecrire/inc/plugin.php +++ b/www/ecrire/inc/plugin.php @@ -3,7 +3,7 @@ /***************************************************************************\ * SPIP, Systeme de publication pour l'internet * * * - * Copyright (c) 2001-2012 * + * Copyright (c) 2001-2014 * * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * * * * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * @@ -71,7 +71,7 @@ function fast_find_plugin_dirs($dir, $max_prof=100) { } foreach($subdirs as $d){ - $fichiers = array_merge($fichiers,fast_find_plugin_dirs("$d/",--$max_prof)); + $fichiers = array_merge($fichiers,fast_find_plugin_dirs("$d/",$max_prof-1)); } return $fichiers; } @@ -463,6 +463,12 @@ function ecrire_plugin_actifs($plugin,$pipe_recherche=false,$operation='raz') { else $plugin = $plugin_valides; } $actifs_avant = $GLOBALS['meta']['plugin']; + + // si une fonction de gestion de dependances existe, l'appeler ici + if ($ajouter_dependances = charger_fonction("ajouter_dependances","plugins",true)){ + $plugin = $ajouter_dependances($plugin); + } + // recharger le xml des plugins a activer // on forcer le reload ici, meme si le fichier xml n'a pas change // pour ne pas rater l'ajout ou la suppression d'un fichier fonctions/options/administrations @@ -494,7 +500,12 @@ function ecrire_plugin_actifs($plugin,$pipe_recherche=false,$operation='raz') { ecrire_meta('plugin',serialize($plugin_valides)); $liste = array_diff_key($liste,$plugin_valides); ecrire_meta('plugin_attente',serialize($liste)); - ecrire_meta('plugin_header',substr(strtolower(implode(",",$header)),0,900)); + $header = strtolower(implode(",",$header)); + ecrire_meta('plugin_header',substr($header,0,900)); + if (!isset($GLOBALS['spip_header_silencieux']) OR !$GLOBALS['spip_header_silencieux']) + ecrire_fichier(_DIR_VAR."config.txt", defined('_HEADER_COMPOSED_BY') ? _HEADER_COMPOSED_BY:"Composed-By: SPIP" . ' '. $GLOBALS['spip_version_affichee'] . " @ www.spip.net + " . $header); + else + @unlink(_DIR_VAR."config.txt"); // generer charger_plugins_chemin.php plugins_precompile_chemin($plugin_valides, $ordre); // generer les fichiers @@ -759,7 +770,7 @@ function plugin_installes_meta() .boite_ouvrir(_T('plugin_titre_installation', array('plugin' => typo($infos['nom']))), ($ok ? 'success' : 'error')) .$trace ."
" - .($ok ? _T("plugin_info_install_ok") : _T("avis_operation_echec")) + .($ok ? ((isset($infos['upgrade']) && $infos['upgrade']) ? _T("plugin_info_upgrade_ok") : _T("plugin_info_install_ok")) : _T("avis_operation_echec")) ."
" .boite_fermer() ."";