/** * Autoload function for file classes * @param string $class_name Class name as requested by PHP */ function noumenia_aetolos_autoload($class_name) { // Avoid Smarty classes, which have their own autoloader if (stripos($class_name, "Smarty") !== false) { return; } // Convert and sanitize class name $class_name = strtolower(preg_replace('/(DBRecord|Record|List|Stats|Soap).*$/', '', $class_name)) . ".inc.php"; // Load file if (is_file(dirname(__DIR__) . "/library/" . $class_name)) { require_once dirname(__DIR__) . "/library/" . $class_name; } } spl_autoload_register("noumenia_aetolos_autoload", true); // Handle potential PHP errors if (isset($cmdParameters['v']) || isset($cmdParameters['verbose'])) { // Eanable error reporting to stderr ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); } else { // Disable error reporting error_reporting(0); } // Set global configuration array with default values Config::SetDefaults();