Пример #1
0
 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);
     }
 }
Пример #2
0
 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;
 }
Пример #3
0
 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'));
     }
 }
Пример #4
0
 public function __unset($name)
 {
     unset($_SESSION[Config::Core_get('session_content_varname')][$name]);
 }
Пример #5
0
 public function getReferer($num = 0)
 {
     return $_SESSION[Config::Core_get('session_history_varname')][$num];
 }
Пример #6
0
 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;
 }
Пример #7
0
 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;
 }