+ } else {
+ // Creating config file
+ $this->out("Creating config file...\n");
+
+ $save_db = $this->getOption(['s', 'savedb'], false);
+
+ //$db_host = $this->getOption(['H', 'dbhost'], ($save_db) ? (getenv('MYSQL_HOST') ? getenv('MYSQL_HOST') : Installer::DEFAULT_HOST) : '');
+ $db_host = $this->getOption(['H', 'dbhost'], ($save_db) ? (getenv('MYSQL_HOST')) : Installer::DEFAULT_HOST);
+ $db_port = $this->getOption(['p', 'dbport'], ($save_db) ? getenv('MYSQL_PORT') : null);
+ $configCache->set('database', 'hostname', $db_host . (!empty($db_port) ? ':' . $db_port : ''));
+ $configCache->set('database', 'database',
+ $this->getOption(['d', 'dbdata'],
+ ($save_db) ? getenv('MYSQL_DATABASE') : ''));
+ $configCache->set('database', 'username',
+ $this->getOption(['U', 'dbuser'],
+ ($save_db) ? getenv('MYSQL_USER') . getenv('MYSQL_USERNAME') : ''));
+ $configCache->set('database', 'password',
+ $this->getOption(['P', 'dbpass'],
+ ($save_db) ? getenv('MYSQL_PASSWORD') : ''));
+ $php_path = $this->getOption(['b', 'phppath'], !empty('FRIENDICA_PHP_PATH') ? getenv('FRIENDICA_PHP_PATH') : null);
+ if (!empty($php_path)) {
+ $configCache->set('config', 'php_path', $php_path);
+ } else {
+ $configCache->set('config', 'php_path', $installer->getPHPPath());
+ }
+
+ $configCache->set('config', 'admin_email',
+ $this->getOption(['A', 'admin'],
+ !empty(getenv('FRIENDICA_ADMIN_MAIL')) ? getenv('FRIENDICA_ADMIN_MAIL') : ''));
+ $configCache->set('system', 'default_timezone',
+ $this->getOption(['T', 'tz'],
+ !empty(getenv('FRIENDICA_TZ')) ? getenv('FRIENDICA_TZ') : Installer::DEFAULT_TZ));
+ $configCache->set('system', 'language',
+ $this->getOption(['L', 'lang'],
+ !empty(getenv('FRIENDICA_LANG')) ? getenv('FRIENDICA_LANG') : Installer::DEFAULT_LANG));
+
+ $configCache->set('system', 'urlpath', $this->getOption(['u', 'urlpath'], !empty(getenv('FRIENDICA_URL_PATH')) ? getenv('FRIENDICA_URL_PATH') : ''));
+ $basepath = $this->getOption(['b', 'basepath'], !empty(getenv('FRIENDICA_BASE_PATH')) ? getenv('FRIENDICA_BASE_PATH') : null);
+ if (!empty($basepath)) {
+ $configCache->set('system', 'basepath', $basepath);
+ }
+ $php_path = $this->getOption(['B', 'phppath'], !empty(getenv('FRIENDICA_PHP_PATH')) ? getenv('FRIENDICA_PHP_PATH') : null);
+ if (!empty($php_path)) {
+ $configCache->set('config', 'php_path', $php_path);
+ }
+ $ssl_policy = $this->getOption(['S', 'sslpolicy'], !empty(getenv('FRIENDICA_SSL_POLICY')) ? getenv('FRIENDICA_SSL_POLICY') : null);
+ if (!empty($ssl_policy)) {
+ $configCache->set('system', 'ssl_policy', $ssl_policy);
+ }
+ $configCache->set('config', 'hostname', $this->getOption(['n', 'hostname'], !empty(getenv('FRIENDICA_HOSTNAME')) ? getenv('FRIENDICA_HOSTNAME') : ''));
+
+ $configCache->set('system', 'url', $installer->determineBaseUrl($configCache));
+
+ if (empty($configCache->get('config', 'hostname'))) {
+ $this->out('The Friendica hostname has to be set during CLI installation.');
+ return 1;
+ }