forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
3.1 KiB
83 lines
3.1 KiB
<?php |
|
/** |
|
* @package JAMA |
|
* |
|
* Error handling |
|
* @author Michael Bommarito |
|
* @version 01292005 |
|
*/ |
|
|
|
//Language constant |
|
define('JAMALANG', 'EN'); |
|
|
|
|
|
//All errors may be defined by the following format: |
|
//define('ExceptionName', N); |
|
//$error['lang'][ExceptionName] = 'Error message'; |
|
$error = array(); |
|
|
|
/* |
|
I've used Babelfish and a little poor knowledge of Romance/Germanic languages for the translations here. |
|
Feel free to correct anything that looks amiss to you. |
|
*/ |
|
|
|
define('POLYMORPHIC_ARGUMENT_EXCEPTION', -1); |
|
$error['EN'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Invalid argument pattern for polymorphic function."; |
|
$error['FR'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Modèle inadmissible d'argument pour la fonction polymorphe.". |
|
$error['DE'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Unzulässiges Argumentmuster für polymorphe Funktion."; |
|
|
|
define('ARGUMENT_TYPE_EXCEPTION', -2); |
|
$error['EN'][ARGUMENT_TYPE_EXCEPTION] = "Invalid argument type."; |
|
$error['FR'][ARGUMENT_TYPE_EXCEPTION] = "Type inadmissible d'argument."; |
|
$error['DE'][ARGUMENT_TYPE_EXCEPTION] = "Unzulässige Argumentart."; |
|
|
|
define('ARGUMENT_BOUNDS_EXCEPTION', -3); |
|
$error['EN'][ARGUMENT_BOUNDS_EXCEPTION] = "Invalid argument range."; |
|
$error['FR'][ARGUMENT_BOUNDS_EXCEPTION] = "Gamme inadmissible d'argument."; |
|
$error['DE'][ARGUMENT_BOUNDS_EXCEPTION] = "Unzulässige Argumentstrecke."; |
|
|
|
define('MATRIX_DIMENSION_EXCEPTION', -4); |
|
$error['EN'][MATRIX_DIMENSION_EXCEPTION] = "Matrix dimensions are not equal."; |
|
$error['FR'][MATRIX_DIMENSION_EXCEPTION] = "Les dimensions de Matrix ne sont pas égales."; |
|
$error['DE'][MATRIX_DIMENSION_EXCEPTION] = "Matrixmaße sind nicht gleich."; |
|
|
|
define('PRECISION_LOSS_EXCEPTION', -5); |
|
$error['EN'][PRECISION_LOSS_EXCEPTION] = "Significant precision loss detected."; |
|
$error['FR'][PRECISION_LOSS_EXCEPTION] = "Perte significative de précision détectée."; |
|
$error['DE'][PRECISION_LOSS_EXCEPTION] = "Bedeutender Präzision Verlust ermittelte."; |
|
|
|
define('MATRIX_SPD_EXCEPTION', -6); |
|
$error['EN'][MATRIX_SPD_EXCEPTION] = "Can only perform operation on symmetric positive definite matrix."; |
|
$error['FR'][MATRIX_SPD_EXCEPTION] = "Perte significative de précision détectée."; |
|
$error['DE'][MATRIX_SPD_EXCEPTION] = "Bedeutender Präzision Verlust ermittelte."; |
|
|
|
define('MATRIX_SINGULAR_EXCEPTION', -7); |
|
$error['EN'][MATRIX_SINGULAR_EXCEPTION] = "Can only perform operation on singular matrix."; |
|
|
|
define('MATRIX_RANK_EXCEPTION', -8); |
|
$error['EN'][MATRIX_RANK_EXCEPTION] = "Can only perform operation on full-rank matrix."; |
|
|
|
define('ARRAY_LENGTH_EXCEPTION', -9); |
|
$error['EN'][ARRAY_LENGTH_EXCEPTION] = "Array length must be a multiple of m."; |
|
|
|
define('ROW_LENGTH_EXCEPTION', -10); |
|
$error['EN'][ROW_LENGTH_EXCEPTION] = "All rows must have the same length."; |
|
|
|
/** |
|
* Custom error handler |
|
* @param int $num Error number |
|
*/ |
|
function JAMAError($errorNumber = null) |
|
{ |
|
global $error; |
|
|
|
if (isset($errorNumber)) { |
|
if (isset($error[JAMALANG][$errorNumber])) { |
|
return $error[JAMALANG][$errorNumber]; |
|
} else { |
|
return $error['EN'][$errorNumber]; |
|
} |
|
} else { |
|
return ("Invalid argument to JAMAError()"); |
|
} |
|
}
|
|
|