Rev 26 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php// Encodage : UTF-8// +-------------------------------------------------------------------------------------------------------------------+/*** script** Description : initialise le chargement et l'exécution des scripts* Fichier d'origine jelix-scripts par Jouanneau Laurent* copyright 2005-2007 Jouanneau laurent* link http://www.jelix.org*//Auteur original :* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>* @copyright Tela-Botanica 1999-2008* @licence GPL v3 & CeCILL v2* @version $Id$*/// +-------------------------------------------------------------------------------------------------------------------+// Récupération de la config généralerequire dirname(__FILE__).DIRECTORY_SEPARATOR.'scripts.conf.php';// Gestion de l'auto chargement des classesfunction __autoload($classe){// Gestion des fichiers pésent dans le path$fichier = $classe.'.php';if (file_exists($fichier)) {require_once $fichier;}// Gestion des classes PEAR$fichier = ES_CHEMIN_PEAR;if (!substr_count($classe, '_') > 0) {$fichier .= $classe;} else {$tab_chemin = explode('_', $classe);foreach ($tab_chemin as $c => $v) {$fichier .= ($c == 0) ? $v.DS : $v;}}$fichier .= '.php';if (file_exists($fichier)) {require_once $fichier;}// Gestion des classes principales des modules$module = strtolower(str_replace(' ', '_', preg_replace('/([a-z])([A-Z])/', '$1 $2',$classe)));$fichier = ES_CHEMIN_MODULE.$module.DS.$classe.'.class.php';if (file_exists($fichier)) {require_once $fichier;}// Gestion des bibliothèques des scriptsforeach ($GLOBALS['chemins_autoload'] as $chemin) {$fichiers = array( $chemin.$classe.'.class.php',$chemin.$classe.'.php');foreach ($fichiers as $fichier) {if (file_exists($fichier)) {require_once $fichier;break;}}}}/*** récupération du nom de la commande et éventuellement du nom de l'application*/if ($_SERVER['argc'] < 2){die("Erreur: pas de commande. Voir '".$_SERVER['argv'][0]." help'.\n");}$argv = $_SERVER['argv'];$script_nom = array_shift($argv); // shift le nom du script$commande_nom = array_shift($argv); // prend le nom de la commande// Chargement de la commande$Script = Script::charger($commande_nom);$parametres = Script::getParametres($argv);// Lancement de la commande$Script->initialiser($parametres);$Script->executer();?>