public function step4(InstallApplication $app, Request $request)
{
$form = $app['form.factory']->createBuilder('install_step4')->getForm();
$sessionData = $this->getSessionData($request);
if (empty($sessionData['database'])) {
$config_file = $this->config_path . '/database.yml';
$fs = new Filesystem();
if ($fs->exists($config_file)) {
// すでに登録されていた場合、登録データを表示
// データベース設定
$config = Yaml::parse(file_get_contents($config_file));
$database = $config['database'];
$sessionData['database'] = $database['driver'];
if ($database['driver'] != 'pdo_sqlite') {
$sessionData['database_host'] = $database['host'];
$sessionData['database_port'] = $database['port'];
$sessionData['database_name'] = $database['dbname'];
$sessionData['database_user'] = $database['user'];
$sessionData['database_password'] = $database['password'];
}
}
}
$form->setData($sessionData);
if ($this->isValid($request, $form)) {
return $app->redirect($app->url('install_step5'));
}
return $app['twig']->render('step4.twig', array('form' => $form->createView(), 'publicPath' => '..' . RELATIVE_PUBLIC_DIR_PATH . '/'));
}