public static function initialize($onstart = null, $onfly = null) { Config::init(); if (Config::get('active') === 0) { return Bella::shutdown(); } $q = Config::get('settings'); if (is_dir($q->requires_dir)) { foreach (glob($q->requires_dir . '*.php') as $file) { include_once $file; } } if (is_dir($q->utils_dir)) { foreach (glob($q->utils_dir . '*.php') as $file) { include_once $file; } } Session::init(); Path::init(); Request::init(); if (isset($onstart) && is_callable($onstart)) { $onstart(); } $user = Session::get('user'); if (!$user) { $user = Session::get('manager'); } if (!!$user) { Context::set('user', $user); } $c = Path::get(0); if (!$c) { Bella::loadCoordinator('index'); } else { $dir = Config::get('settings')->controllers_dir; $f = $dir . $c . '.php'; if (file_exists($f)) { Bella::loadCoordinator($c); } else { if (isset($onfly) && is_callable($onfly)) { return $onfly($c); } } } }