define("CAP_PATH", sys_get_temp_dir() . DIRECTORY_SEPARATOR . "chive_" . md5(__FILE__)); @mkdir(CAP_PATH, 0777); @mkdir(CAP_PATH . DIRECTORY_SEPARATOR . "assets", 0777); @mkdir(CAP_PATH . DIRECTORY_SEPARATOR . "sessions", 0777); @mkdir(CAP_PATH . DIRECTORY_SEPARATOR . "user-config", 0777); copy(__DIR__ . DIRECTORY_SEPARATOR . "protected/runtime/user-config/default.xml", CAP_PATH . DIRECTORY_SEPARATOR . "user-config" . DIRECTORY_SEPARATOR . "default.xml"); } // Load Yii require 'yii/yii.php'; if (!ini_get('date.timezone')) { // Set a fallback timezone if the current php.ini does not contain a default timezone setting. // If the environment is setup correctly, we won't override the timezone. date_default_timezone_set("UTC"); } // Create web application $app = YiiBase::createWebApplication(__DIR__ . DIRECTORY_SEPARATOR . 'protected/config/' . (CAP_ENABLED ? 'phar' : 'main') . '.php'); $app->getSession()->setCookieParams(array('path' => $app->getBaseUrl(false))); // Define constants define('BASEURL', Yii::app()->baseUrl); define('ICONPATH', BASEURL . '/images/icons/' . Yii::app()->params->iconPack); $validPaths = array('site', 'index.php', 'asset'); if (!$app->user->isGuest) { $app->db->connectionString = 'mysql:host=' . $app->user->host . ';port=' . $app->user->port . ';dbname=information_schema'; $app->db->username = $app->user->name; $app->db->password = $app->user->password; $app->db->autoConnect = true; $app->db->setActive(true); } elseif (!preg_match('/^(' . implode('|', $validPaths) . ')/i', Yii::app()->urlManager->parseUrl($app->request))) { if ($app->request->isAjaxRequest) { $response = new AjaxResponse(); $response->redirectUrl = Yii::app()->createUrl('site/login');