From ff0c76fac3a394bd28f77aa17e301d50d7fabf91 Mon Sep 17 00:00:00 2001 From: Timothy Warren Date: Mon, 21 May 2012 16:18:24 -0400 Subject: [PATCH] Set up autoloader --- OpenSQLManager.php | 29 ++++++++++++++++++++++++----- sys/db | 2 +- 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/OpenSQLManager.php b/OpenSQLManager.php index eb23a5a..ff04374 100644 --- a/OpenSQLManager.php +++ b/OpenSQLManager.php @@ -114,16 +114,35 @@ if ( ! function_exists('do_include')) // -------------------------------------------------------------------------- -// Load everything so that we don't have to do requires later +/** + * Autoloader for OpenSQLManager + * + * @param string $class + */ +function osm_autoload($class) { - array_map('do_include', glob(BASE_DIR . "/common/*.php")); - array_map('do_include', glob(BASE_DIR . "/db/*.php")); - array_map('do_include', glob(BASE_DIR . "/widgets/*.php")); - array_map('do_include', glob(BASE_DIR . "/windows/*.php")); + $class = strtolower($class); + $widget_path = BASE_DIR . "/widgets/{$class}.php"; + $window_path = BASE_DIR . "/windows/{$class}.php"; + + if (is_file($widget_path)) + { + require_once($widget_path); + } + elseif (is_file($window_path)) + { + require_once($window_path); + } } // -------------------------------------------------------------------------- +// Load everything so that we don't have to do requires later +require_once(BASE_DIR . '/common/functions.php'); +spl_autoload_register('osm_autoload'); + +// -------------------------------------------------------------------------- + // Auto-load db drivers require_once(BASE_DIR . "/db/autoload.php"); diff --git a/sys/db b/sys/db index bf3b072..2c67dd0 160000 --- a/sys/db +++ b/sys/db @@ -1 +1 @@ -Subproject commit bf3b0721243c81674333361fff4edbbcdcfe0a61 +Subproject commit 2c67dd03cc917bd0f83cfc53923f4e009edc39c5