public static function __melody_static_method_exists($method) { if (!Config::$loaded) { Config::loadFor(array('www')); } $class = get_called_class(); $intance = new $class(); if (!method_exists(get_called_class(), '__melody_method_exists')) { return false; } else { return $intance->__melody_method_exists($method); } }
static function getInstance($infos = array()) { if (!isset(self::$instance)) { if (empty($infos)) { $settings = array('host' => Config::get('database_host'), 'port' => Config::get('database_port'), 'unix_socket' => Config::get('database_unix_socket'), 'dbname' => Config::get('database_dbname'), 'charset' => Config::get('database_charset'), 'user' => Config::get('database_user'), 'pass' => Config::get('database_passwd')); self::$instance = self::connection($settings); } else { $settings = array('host' => $infos['host'], 'port' => Config::get('database_port'), 'unix_socket' => Config::get('database_unix_socket'), 'dbname' => $infos['dbnale'], 'charset' => Config::get('database_charset'), 'user' => $infos['user'], 'pass' => $infos['pass']); self::$instance = self::connection($settings); } } return self::$instance; }
static function init($rootDir, $dev = false) { session_start(); self::$root = $rootDir; define('ROOT', self::$root); define('DEV_ENV', $dev); define('PROD_ENV', !$dev); $autoloader = new Autoloader(); $autoloader->registerAutoload(); if ($dev) { @Tools::rrmdir(ROOT . DIRECTORY_SEPARATOR . 'private' . DIRECTORY_SEPARATOR . 'cache'); } //include(__DIR__.DIRECTORY_SEPARATOR.'alias.php'); Config::Init(); if (!empty(Config::Core_get('session_user_lifetime'))) { ini_set('session.cookie_lifetime', Config::Core_get('session_client_lifetime')); ini_set('session.gc_maxlifetime', Config::Core_get('session_server_lifetime')); } }
public function __unset($name) { unset($_SESSION[Config::Core_get('session_content_varname')][$name]); }
public function getReferer($num = 0) { return $_SESSION[Config::Core_get('session_history_varname')][$num]; }
static function urlfor2($apps = array(), $controller = '', $method = '', $args = array(), $absolute = true) { $apps = is_array($apps) ? $apps : array($apps); $domain = Config::Host_getConfigFromPath($apps); $appsdomain = Config::Host_getConfigFromDomain($domain['domain']); $apps = array_slice(array_reverse($apps), 0, 0 - count($appsdomain)); $controller = $controller == 'home' ? '' : $controller; $method = $method == 'index' ? '' : $method; $domain = !is_null(Config::get('app_base_url')) ? Config::get('app_base_url') : strtolower(explode('/', $_SERVER['SERVER_PROTOCOL'])[0]) . '://' . $_SERVER['HTTP_HOST'] . '/'; // traitement apps if (!empty($apps)) { if (is_array($apps)) { $apps = join('/', $apps) . '/'; } else { $apps .= '/'; } } else { $apps = ''; } // traitement controller if (empty($controller)) { if (!empty($args)) { $controller = 'home'; } } // traitement method if (empty($method)) { if (!empty($args)) { $method = 'index'; } } // traitement separateur if (!empty($controller) && !empty($method)) { $separator = '-'; } else { $separator = ''; } // traitement arg if (!empty($args)) { if (is_array($args)) { $args = '/' . join('/', $args); } else { $args = '/' . $args; } } else { $args = ''; } return $domain . $apps . $controller . $separator . $method . $args; }
static function redirectURL($url, $absolute = false, $external = false) { if (!$external) { $absolute ? header('Location: /' . $url) : header('Location: ' . Config::get('app_base_url') . $url); } else { header('Location: ' . $url); } exit; }