From: Marc G. K. <st...@us...> - 2006-02-08 07:59:27
|
Update of /cvsroot/squirrelmail/squirrelmail/class In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14641/class Modified Files: error.class.php Log Message: made the code work for triggering imap related errors. Index: error.class.php =================================================================== RCS file: /cvsroot/squirrelmail/squirrelmail/class/error.class.php,v retrieving revision 1.7 retrieving revision 1.8 diff -u -w -r1.7 -r1.8 --- error.class.php 23 Jan 2006 18:39:32 -0000 1.7 +++ error.class.php 8 Feb 2006 07:59:19 -0000 1.8 @@ -205,7 +205,7 @@ /** * Triggers an imap error. Utility function for sqm_trigger_error() - * @param integer $iErrNo error number defined in errors.php + * @param string $sErrNo error string defined in errors.php * @param string $sRequest imap request string * @param string $sResponse tagged imap response * @param string $sMessage tagged imap response message @@ -214,37 +214,42 @@ * @author Marc Groot Koerkamp * @since 1.5.1 */ -function sqm_trigger_imap_error($iErrNo,$sRequest,$sResponse, $sMessage, $aExtra=array()) { +function sqm_trigger_imap_error($sErrNo,$sRequest,$sResponse, $sMessage, $aExtra=array()) { $aError = array( 'REQUEST' => $sRequest, 'RESPONSE' => $sResponse, 'MESSAGE' => $sMessage); $aError = array_merge($aExtra,$aError); - sqm_trigger_error($iErrNo,$aError); + sqm_trigger_error($sErrNo,$aError); } /** * Trigger an error. - * @param integer $iErrNo error number defined in errors.php + * @param string $sErrNo error string defined in errors.php * @param array $aExtra optional associative array with extra error info * @return void * @author Marc Groot Koerkamp * @since 1.5.1 */ -function sqm_trigger_error($iErrNo,$aExtra=array()) { +function sqm_trigger_error($sErrNo,$aExtra=array()) { + static $aErrors; + if (!isset($aErrors)) { // Include the error definition file. include_once(SM_PATH.'include/errors.php'); + } + $iPhpErr = E_USER_NOTICE; - if (is_array($aErrors) && isset($aErrors[$iErrNo]['level'])) { + if (is_array($aErrors) && isset($aErrors[$sErrNo]['level'])) { if (is_array($aExtra) && count($aExtra)) { - $aErrors[$iErrNo]['extra'] = $aExtra; + $aErrors[$sErrNo]['extra'] = $aExtra; } // because trigger_error can only handle a string argument for the error description // we serialize the result. - $sErrString = serialize($aErrors[$iErrNo]); - $iPhpErr = $aErrors[$iErrNo]['level']; + $sErrString = serialize($aErrors[$sErrNo]); + $iPhpErr = $aErrors[$sErrNo]['level']; } else { - $sErrString = "Error number <$iErrNo> does not exist, fix the code or update the errors.php file"; + sm_print_r($aErrors); + $sErrString = "Error <$sErrNo> does not exist, fix the code or update the errors.php file"; $iPhpErr = E_USER_ERROR; } trigger_error($sErrString, $iPhpErr); |