/** * Setup method -- make sure static adapter is available for testing. * * @return void */ public static function prepareAdapter() { try { DbGlobalAdapter::getStaticAdapter(); } catch (\Zend\Db\TableGateway\Exception\RuntimeException $e) { DbGlobalAdapter::setStaticAdapter(DbAdapterFactory::getAdapter()); } }
/** * Set up the default database adapter. Do this early since the session handler * may depend on database access. * * @return void */ protected function initDatabase() { DbGlobalAdapter::setStaticAdapter(DbAdapterFactory::getAdapter()); }
/** * Prompt the user for database credentials. * * @return mixed */ public function getdbcredentialsAction() { $print = $this->params()->fromPost('printsql', 'nope'); if ($print == 'Skip') { $this->logsql = true; return $this->forwardTo('Upgrade', 'FixDatabase'); } else { $dbrootuser = $this->params()->fromPost('dbrootuser', 'root'); // Process form submission: if (strlen($this->params()->fromPost('submit', '')) > 0) { $pass = $this->params()->fromPost('dbrootpass'); // Test the connection: try { // Query a table known to exist $db = AdapterFactory::getAdapter($dbrootuser, $pass); $db->query("SELECT * FROM user;"); $this->session->dbRootUser = $dbrootuser; $this->session->dbRootPass = $pass; return $this->forwardTo('Upgrade', 'FixDatabase'); } catch (\Exception $e) { $this->flashMessenger()->setNamespace('error')->addMessage('Could not connect; please try again.'); } } } return $this->createViewModel(array('dbrootuser' => $dbrootuser)); }