*/ class LSerror { /** * Ajoute une erreur * * @author Benjamin Renard * * @param[in] $code numeric Le code de l'erreur * @param[in] $msg mixed Un tableau ou une chaine pour la construction du message d'erreur * Tableau : '[clef]' => 'valeur' * La clef sera utilisé dans le format de message d'erreur * dans le fichier 'error_code.php'. * * @retval void */ function addErrorCode($code=-1,$msg='') { $_SESSION['LSerror'][] = array($code,$msg); } /** * Affiche les erreurs * * @author Benjamin Renard * * @param[in] $return boolean True pour que le texte d'erreurs soit retourné * * @retval void */ function display($return=False) { $errors = $this -> getErrors(); if ($errors) { if ($return) { return $errors; } $GLOBALS['Smarty'] -> assign('LSerrors',$errors); } } /** * Print errors and stop LdapSaisie * * @author Benjamin Renard * * @param[in] $code Error code (Goto : addErrorCode()) * @param[in] $msg Error msg (Goto : addErrorCode()) * * @retval void */ function stop($code=-1,$msg='') { if(!empty($_SESSION['LSerror'])) { print "

"._('Errors')."

\n"; print $this -> display(true); } print "

"._('Stop')."

\n"; exit ($this -> getError(array($code,$msg))); } /** * Retourne le texte des erreurs * * @author Benjamin Renard * * @retvat string Le texte des erreurs */ function getErrors() { if(!empty($_SESSION['LSerror'])) { foreach ($_SESSION['LSerror'] as $error) { $txt.=$this -> getError($error); } $this -> resetError(); return $txt; } return; } /** * Retourne le texte d'une erreur * * @author Benjamin Renard * * @retvat string Le texte des erreurs */ function getError($error) { return "(Code ".$error[0].") ".getFData($GLOBALS['LSerror_code'][$error[0]]['msg'],$error[1])."
\n"; } /** * Définir si il y a des erreurs * * @author Benjamin Renard * * @retvat boolean */ function errorsDefined() { return !empty($_SESSION['LSerror']); } /** * Efface les erreurs sotckés * * @author Benjamin Renard * * @retvat void */ function resetError() { LSlog('reset'); unset ($_SESSION['LSerror']); } } /* * Error Codes */ $GLOBALS['LSerror_code']['-1'] = array ( 'msg' => _("Unknow error!") ); $GLOBALS['LSerror_code'][0] = array ( 'msg' => "%{msg}" ); ?>