/** * set database * @param string $database * @return SQL */ public function setDB($database = 'PF') { $f3 = \Base::instance(); // "Hive" Key for DB storage $dbHiveKey = $this->getDbHiveKey($database); // check if DB connection already exists if (!$f3->exists($dbHiveKey)) { if ($database === 'CCP') { // CCP DB $dns = Controller\Controller::getEnvironmentData('DB_CCP_DNS'); $name = Controller\Controller::getEnvironmentData('DB_CCP_NAME'); $user = Controller\Controller::getEnvironmentData('DB_CCP_USER'); $password = Controller\Controller::getEnvironmentData('DB_CCP_PASS'); } else { // Pathfinder(PF) DB $dns = Controller\Controller::getEnvironmentData('DB_DNS'); $name = Controller\Controller::getEnvironmentData('DB_NAME'); $user = Controller\Controller::getEnvironmentData('DB_USER'); $password = Controller\Controller::getEnvironmentData('DB_PASS'); } $db = $this->connect($dns, $name, $user, $password); if (!is_null($db)) { // set DB timezone to UTC +00:00 (eve server time) $db->exec('SET @@session.time_zone = "+00:00";'); // set default storage engine $db->exec('SET @@session.default_storage_engine = "' . Controller\Controller::getRequiredMySqlVariables('DEFAULT_STORAGE_ENGINE') . '"'); // store DB object $f3->set($dbHiveKey, $db); } return $db; } else { return $f3->get($dbHiveKey); } }