use Friendica\App;
use Friendica\BaseModule;
use Friendica\Core;
-use Friendica\Core\Config\Cache\IConfigCache;
+use Friendica\Core\Config\Cache\ConfigCache;
use Friendica\Core\L10n;
use Friendica\Core\Renderer;
+use Friendica\Network\HTTPException;
use Friendica\Util\BasePath;
use Friendica\Util\BaseURL;
use Friendica\Util\Strings;
$a = self::getApp();
if (!$a->getMode()->isInstall()) {
- Core\System::httpExit(403);
+ throw new HTTPException\ForbiddenException();
}
// route: install/testrwrite
// @TODO: Replace with parameter from router
if ($a->getArgumentValue(1, '') == 'testrewrite') {
// Status Code 204 means that it worked without content
- Core\System::httpExit(204);
+ throw new HTTPException\NoContentException();
}
self::$installer = new Core\Installer();
// get basic installation information and save them to the config cache
$configCache = $a->getConfigCache();
- self::$installer->setUpCache($configCache, BasePath::create($a->getBasePath(), $_SERVER));
+ $basePath = new BasePath($a->getBasePath());
+ self::$installer->setUpCache($configCache, $basePath->getPath());
// We overwrite current theme css, because during install we may not have a working mod_rewrite
// so we may not have a css at all. Here we set a static css file for the install procedure pages
public static function post()
{
- $a = self::getApp();
+ $a = self::getApp();
$configCache = $a->getConfigCache();
switch (self::$currentWizardStep) {
public static function content()
{
- $a = self::getApp();
+ $a = self::getApp();
$configCache = $a->getConfigCache();
$output = '';
$status = self::$installer->checkEnvironment($a->getBaseURL(), $php_path);
- $tpl = Renderer::getMarkupTemplate('install_checks.tpl');
+ $tpl = Renderer::getMarkupTemplate('install_checks.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
'$pass' => L10n::t('System check'),
'$next' => L10n::t('Next'),
'$reload' => L10n::t('Check again'),
'$php_path' => $php_path,
- '$baseurl' => $a->getBaseURL()
]);
break;
case self::BASE_CONFIG:
$ssl_choices = [
- BaseUrl::SSL_POLICY_NONE => L10n::t("No SSL policy, links will track page SSL state"),
- BaseUrl::SSL_POLICY_FULL => L10n::t("Force all links to use SSL"),
- BaseUrl::SSL_POLICY_SELFSIGN => L10n::t("Self-signed certificate, use SSL for local links only \x28discouraged\x29")
+ BaseURL::SSL_POLICY_NONE => L10n::t("No SSL policy, links will track page SSL state"),
+ BaseURL::SSL_POLICY_FULL => L10n::t("Force all links to use SSL"),
+ BaseURL::SSL_POLICY_SELFSIGN => L10n::t("Self-signed certificate, use SSL for local links only \x28discouraged\x29")
];
- $tpl = Renderer::getMarkupTemplate('install_base.tpl');
+ $tpl = Renderer::getMarkupTemplate('install_base.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
'$pass' => L10n::t('Base settings'),
$configCache->get('system', 'urlpath'),
L10n::t('Overwrite this field in case the sub path determination isn\'t right, otherwise leave it as is. Leaving this field blank means the installation is at the base URL without sub path.'),
''],
- '$baseurl' => $a->getBaseURL(),
'$php_path' => $configCache->get('config', 'php_path'),
'$submit' => L10n::t('Submit'),
]);
break;
case self::DATABASE_CONFIG:
- $tpl = Renderer::getMarkupTemplate('install_db.tpl');
+ $tpl = Renderer::getMarkupTemplate('install_db.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
'$pass' => L10n::t('Database connection'),
'',
'required'],
'$lbl_10' => L10n::t('Please select a default timezone for your website'),
- '$baseurl' => $a->getBaseURL(),
'$php_path' => $configCache->get('config', 'php_path'),
'$submit' => L10n::t('Submit')
]);
/* Installed langs */
$lang_choices = L10n::getAvailableLanguages();
- $tpl = Renderer::getMarkupTemplate('install_settings.tpl');
+ $tpl = Renderer::getMarkupTemplate('install_settings.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
'$checks' => self::$installer->getChecks(),
$configCache->get('system', 'language'),
L10n::t('Set the default language for your Friendica installation interface and to send emails.'),
$lang_choices],
- '$baseurl' => $a->getBaseURL(),
'$php_path' => $configCache->get('config', 'php_path'),
'$submit' => L10n::t('Submit')
]);
$db_return_text = "";
if (count(self::$installer->getChecks()) == 0) {
- $txt = '<p style="font-size: 130%;">';
- $txt .= L10n::t('Your Friendica site database has been installed.') . EOL;
+ $txt = '<p style="font-size: 130%;">';
+ $txt .= L10n::t('Your Friendica site database has been installed.') . EOL;
$db_return_text .= $txt;
}
- $tpl = Renderer::getMarkupTemplate('install_finished.tpl');
+ $tpl = Renderer::getMarkupTemplate('install_finished.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
'$checks' => self::$installer->getChecks(),
$baseurl = $a->getBaseUrl();
return
L10n::t('<h1>What next</h1>')
- . "<p>".L10n::t('IMPORTANT: You will need to [manually] setup a scheduled task for the worker.')
+ . "<p>" . L10n::t('IMPORTANT: You will need to [manually] setup a scheduled task for the worker.')
. L10n::t('Please see the file "INSTALL.txt".')
. "</p><p>"
. L10n::t('Go to your new Friendica node <a href="%s/register">registration page</a> and register as new user. Remember to use the same email you have entered as administrator email. This will allow you to enter the site admin panel.', $baseurl)
/**
* Checks the $_POST settings and updates the config Cache for it
*
- * @param IConfigCache $configCache The current config cache
- * @param array $post The $_POST data
- * @param string $cat The category of the setting
- * @param string $key The key of the setting
- * @param null|string $default The default value
+ * @param ConfigCache $configCache The current config cache
+ * @param array $post The $_POST data
+ * @param string $cat The category of the setting
+ * @param string $key The key of the setting
+ * @param null|string $default The default value
*/
- private static function checkSetting(IConfigCache $configCache, array $post, $cat, $key, $default = null)
+ private static function checkSetting(ConfigCache $configCache, array $post, $cat, $key, $default = null)
{
$configCache->set($cat, $key,
Strings::escapeTags(