dump($config, 5); file_put_contents(PHPCI_DIR . 'PHPCI/config.yml', $yaml); /** * Create database: */ $dbhost = $config['b8']['database']['servers']['write'][0]; $dbname = $config['b8']['database']['name']; $dbuser = $config['b8']['database']['username']; $dbpass = $config['b8']['database']['password']; $pdo = new PDO('mysql:host=' . $dbhost, $dbuser, $dbpass); $pdo->query('CREATE DATABASE IF NOT EXISTS `' . $dbname . '`'); /** * Bootstrap PHPCI and populate database: */ require(PHPCI_DIR . 'bootstrap.php'); ob_start(); $gen = new \b8\Database\Generator(\b8\Database::getConnection(), 'PHPCI', PHPCI_DIR . 'PHPCI/Model/Base/'); $gen->generate(); ob_end_clean(); /** * Create our admin user: */ $store = \b8\Store\Factory::getStore('User'); try { $user = $store->getByEmail($adminUser); } catch (Exception $ex) { } if (empty($user)) { $user = new \PHPCI\Model\User(); $user->setEmail($adminUser); $user->setName($adminUser); $user->setIsAdmin(1); $user->setHash(password_hash($adminPass, PASSWORD_DEFAULT)); $store->save($user); } $formAction = '/session/login'; } } switch ($installStage) { case 'start': $nextStage = 'database'; break; case 'database': $nextStage = 'github'; break; case 'github': $nextStage = 'email'; break; case 'email': $nextStage = 'complete'; break; } ?>