* @copyright Tela-Botanica 1999-2008 * @licence GPL v3 & CeCILL v2 * @version $Id$ */ // +-------------------------------------------------------------------------------------------------------------------+ class Script { /** Niveau de message de type LOG */ const LOG = 0; /** Niveau de message de type ERREUR */ const ERREUR = 1; /** Niveau de message de type AVERTISSEMENT */ const AVERTISSEMENT = 2; /** Niveau de message de type INFORMATION */ const INFO = 3; public static function getCode($niveau) { $txt_niveaux = array('LOG', 'ERREUR','AVERTISSEMENT', 'INFO'); return $txt_niveaux[$niveau]; } public static function charger($commande_nom) { $classe_nom = implode('', array_map('ucfirst', explode('_', strtolower($commande_nom)))); $fichier_script = ES_CHEMIN_MODULE.$commande_nom.DS.$classe_nom.'.php'; if (!file_exists($fichier_script)){ trigger_error("Erreur : script '$fichier_script' inconnu!\n", E_USER_ERROR); } require_once $fichier_script; if (!class_exists( $classe_nom)) { trigger_error("Erreur: impossible de trouver la classe de la commande : $classe_nom\n", E_USER_ERROR); } $Script = new $classe_nom($commande_nom); return $Script; } public static function getParametres($argv) { $parametres = array(); // Récupération des options while(count($argv)) { if (isset($argv[1]) && $argv[1]{0} != '-') { $param = array_shift($argv); $parametres[$param] = array_shift($argv); } elseif (!isset($argv[1]) || $argv[1]{0} == '-') { $parametres[array_shift($argv)] = null; } else { trigger_error("Erreur: valeur manquante pour le paramêtre '".$argv[0]."' \n", E_USER_ERROR); } } return $parametres; } public static function setAutoloadChemin($chemin) { if (is_array($chemin)) { $GLOBALS['chemins_autoload'] = array_unique(array_merge($GLOBALS['chemins_autoload'], $chemin)); } else { $GLOBALS['chemins_autoload'][] = $chemin; } } } ?>