*/
class Renderer extends BaseObject
{
- /**
+ /**
* @brief An array of registered template engines ('name'=>'class name')
*/
- public static $template_engines = [];
+ public static $template_engines = [];
- /**
+ /**
* @brief An array of instanced template engines ('name'=>'instance')
*/
public static $template_engine_instance = [];
- /**
+ /**
* @brief An array for all theme-controllable parameters
*
* Mostly unimplemented yet. Only options 'template_engine' and
'stylesheet' => '',
'template_engine' => 'smarty3',
];
-
- private static $ldelim = [
+
+ private static $ldelim = [
'internal' => '',
'smarty3' => '{{'
];
private static $rdelim = [
'internal' => '',
'smarty3' => '}}'
- ];
+ ];
/**
* @brief This is our template processor
* @return string substituted string
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
- public static function replaceMacros($s, $vars, $overwriteURL = true)
- {
- $stamp1 = microtime(true);
- $a = self::getApp();
+ public static function replaceMacros($s, $vars, $overwriteURL = true)
+ {
+ $stamp1 = microtime(true);
+ $a = self::getApp();
- // pass $baseurl to all templates
+ // pass $baseurl to all templates
if ($overwriteURL) {
$vars['$baseurl'] = System::baseUrl();
}
- $t = self::getTemplateEngine();
+ $t = self::getTemplateEngine();
- try {
- $output = $t->replaceMacros($s, $vars);
- } catch (Exception $e) {
- echo "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
- exit();
- }
+ try {
+ $output = $t->replaceMacros($s, $vars);
+ } catch (Exception $e) {
+ echo "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
+ exit();
+ }
$a->getProfiler()->saveTimestamp($stamp1, "rendering", System::callstack());
- return $output;
- }
+ return $output;
+ }
/**
* @brief Load a given template $s
* @return string template.
* @throws Exception
*/
- public static function getMarkupTemplate($s, $root = '')
- {
- $stamp1 = microtime(true);
- $a = self::getApp();
- $t = self::getTemplateEngine();
-
- try {
- $template = $t->getTemplateFile($s, $root);
- } catch (Exception $e) {
- echo "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
- exit();
- }
+ public static function getMarkupTemplate($s, $root = '')
+ {
+ $stamp1 = microtime(true);
+ $a = self::getApp();
+ $t = self::getTemplateEngine();
+
+ try {
+ $template = $t->getTemplateFile($s, $root);
+ } catch (Exception $e) {
+ echo "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
+ exit();
+ }
- $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
+ $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
- return $template;
- }
+ return $template;
+ }
- /**
+ /**
* @brief Register template engine class
*
* @param string $class
*/
public static function registerTemplateEngine($class)
{
- $v = get_class_vars($class);
-
- if (!empty($v['name']))
- {
+ $v = get_class_vars($class);
+
+ if (!empty($v['name']))
+ {
$name = $v['name'];
self::$template_engines[$name] = $class;
} else {
echo "template engine <tt>$template_engine</tt> is not registered!\n";
exit();
- }
-
- /**
+ }
+
+ /**
* @brief Returns the active template engine.
*
* @return string the active template engine
self::$theme['template_engine'] = $engine;
}
- /**
+ /**
* Gets the right delimiter for a template engine
*
* Currently:
*/
const DATABASE_CONFIG = 3;
/**
- * Step four - Adapat site settings
+ * Step four - Adapt site settings
*/
const SITE_SETTINGS = 4;
/**
{
$a = self::getApp();
+ if (!$a->getMode()->isInstall()) {
+ Core\System::httpExit(403);
+ }
+
// route: install/testrwrite
// $baseurl/install/testrwrite to test if rewrite in .htaccess is working
if ($a->getArgumentValue(1, '') == 'testrewrite') {
$tpl = Renderer::getMarkupTemplate('install_checks.tpl');
$output .= Renderer::replaceMacros($tpl, [
- '$title' => $install_title,
- '$pass' => L10n::t('System check'),
- '$checks' => self::$installer->getChecks(),
- '$passed' => $status,
- '$see_install' => L10n::t('Please see the file "INSTALL.txt".'),
- '$next' => L10n::t('Next'),
- '$reload' => L10n::t('Check again'),
- '$php_path' => $php_path,
- '$baseurl' => $a->getBaseURL()
+ '$title' => $install_title,
+ '$pass' => L10n::t('System check'),
+ '$checks' => self::$installer->getChecks(),
+ '$passed' => $status,
+ '$see_install' => L10n::t('Please see the file "INSTALL.txt".'),
+ '$next' => L10n::t('Next'),
+ '$reload' => L10n::t('Check again'),
+ '$php_path' => $php_path,
+ '$baseurl' => $a->getBaseURL()
]);
break;
'$title' => $install_title,
'$pass' => L10n::t('Base settings'),
'$ssl_policy' => ['system-ssl_policy',
- L10n::t("SSL link policy"),
- $configCache->get('system', 'ssl_policy'),
- L10n::t("Determines whether generated links should be forced to use SSL"),
- $ssl_choices],
+ L10n::t("SSL link policy"),
+ $configCache->get('system', 'ssl_policy'),
+ L10n::t("Determines whether generated links should be forced to use SSL"),
+ $ssl_choices],
'$hostname' => ['config-hostname',
- L10n::t('Host name'),
- $configCache->get('config', 'hostname'),
- L10n::t('Overwrite this field in case the determinated hostname isn\'t right, otherweise leave it as is.'),
- 'required'],
+ L10n::t('Host name'),
+ $configCache->get('config', 'hostname'),
+ L10n::t('Overwrite this field in case the determinated hostname isn\'t right, otherweise leave it as is.'),
+ 'required'],
'$basepath' => ['system-basepath',
- L10n::t("Base path to installation"),
- $configCache->get('system', 'basepath'),
- L10n::t("If the system cannot detect the correct path to your installation, enter the correct path here. This setting should only be set if you are using a restricted system and symbolic links to your webroot."),
- 'required'],
+ L10n::t("Base path to installation"),
+ $configCache->get('system', 'basepath'),
+ L10n::t("If the system cannot detect the correct path to your installation, enter the correct path here. This setting should only be set if you are using a restricted system and symbolic links to your webroot."),
+ 'required'],
'$urlpath' => ['system-urlpath',
- L10n::t('Sub path of the URL'),
- $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.'),
- ''],
+ L10n::t('Sub path of the URL'),
+ $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'),
case self::DATABASE_CONFIG:
$tpl = Renderer::getMarkupTemplate('install_db.tpl');
$output .= Renderer::replaceMacros($tpl, [
- '$title' => $install_title,
- '$pass' => L10n::t('Database connection'),
- '$info_01' => L10n::t('In order to install Friendica we need to know how to connect to your database.'),
- '$info_02' => L10n::t('Please contact your hosting provider or site administrator if you have questions about these settings.'),
- '$info_03' => L10n::t('The database you specify below should already exist. If it does not, please create it before continuing.'),
- 'checks' => self::$installer->getChecks(),
+ '$title' => $install_title,
+ '$pass' => L10n::t('Database connection'),
+ '$info_01' => L10n::t('In order to install Friendica we need to know how to connect to your database.'),
+ '$info_02' => L10n::t('Please contact your hosting provider or site administrator if you have questions about these settings.'),
+ '$info_03' => L10n::t('The database you specify below should already exist. If it does not, please create it before continuing.'),
+ 'checks' => self::$installer->getChecks(),
'$hostname' => $configCache->get('config', 'hostname'),
'$ssl_policy' => $configCache->get('system', 'ssl_policy'),
'$basepath' => $configCache->get('system', 'basepath'),
'$urlpath' => $configCache->get('system', 'urlpath'),
- '$dbhost' => ['database-hostname',
- L10n::t('Database Server Name'),
- $configCache->get('database', 'hostname'),
- '',
- 'required'],
- '$dbuser' => ['database-username',
- L10n::t('Database Login Name'),
- $configCache->get('database', 'username'),
- '',
- 'required',
- 'autofocus'],
- '$dbpass' => ['database-password',
- L10n::t('Database Login Password'),
- $configCache->get('database', 'password'),
- L10n::t("For security reasons the password must not be empty"),
- 'required'],
- '$dbdata' => ['database-database',
- L10n::t('Database Name'),
- $configCache->get('database', 'database'),
- '',
- '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')
+ '$dbhost' => ['database-hostname',
+ L10n::t('Database Server Name'),
+ $configCache->get('database', 'hostname'),
+ '',
+ 'required'],
+ '$dbuser ' => ['database-username',
+ L10n::t('Database Login Name'),
+ $configCache->get('database', 'username'),
+ '',
+ 'required',
+ 'autofocus'],
+ '$dbpass' => ['database-password',
+ L10n::t('Database Login Password'),
+ $configCache->get('database', 'password'),
+ L10n::t("For security reasons the password must not be empty"),
+ 'required'],
+ '$dbdata' => ['database-database',
+ L10n::t('Database Name'),
+ $configCache->get('database', 'database'),
+ '',
+ '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')
]);
break;
$tpl = Renderer::getMarkupTemplate('install_settings.tpl');
$output .= Renderer::replaceMacros($tpl, [
- '$title' => $install_title,
- '$checks' => self::$installer->getChecks(),
- '$pass' => L10n::t('Site settings'),
- '$hostname' => $configCache->get('config', 'hostname'),
- '$ssl_policy' => $configCache->get('system', 'ssl_policy'),
- '$basepath' => $configCache->get('system', 'basepath'),
- '$urlpath' => $configCache->get('system', 'urlpath'),
- '$dbhost' => $configCache->get('database', 'hostname'),
- '$dbuser' => $configCache->get('database', 'username'),
- '$dbpass' => $configCache->get('database', 'password'),
- '$dbdata' => $configCache->get('database', 'database'),
- '$adminmail' => ['config-admin_email',
- L10n::t('Site administrator email address'),
- $configCache->get('config', 'admin_email'),
- L10n::t('Your account email address must match this in order to use the web admin panel.'),
- 'required', 'autofocus', 'email'],
- '$timezone' => Temporal::getTimezoneField('system-default_timezone',
- L10n::t('Please select a default timezone for your website'),
- $configCache->get('system', 'default_timezone'),
- ''),
- '$language' => ['system-language',
- L10n::t('System Language:'),
- $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')
+ '$title' => $install_title,
+ '$checks' => self::$installer->getChecks(),
+ '$pass' => L10n::t('Site settings'),
+ '$hostname' => $configCache->get('config', 'hostname'),
+ '$ssl_policy' => $configCache->get('system', 'ssl_policy'),
+ '$basepath' => $configCache->get('system', 'basepath'),
+ '$urlpath' => $configCache->get('system', 'urlpath'),
+ '$dbhost' => $configCache->get('database', 'hostname'),
+ '$dbuser' => $configCache->get('database', 'username'),
+ '$dbpass' => $configCache->get('database', 'password'),
+ '$dbdata' => $configCache->get('database', 'database'),
+ '$adminmail' => ['config-admin_email',
+ L10n::t('Site administrator email address'),
+ $configCache->get('config', 'admin_email'),
+ L10n::t('Your account email address must match this in order to use the web admin panel.'),
+ 'required', 'autofocus', 'email'],
+ '$timezone' => Temporal::getTimezoneField('system-default_timezone',
+ L10n::t('Please select a default timezone for your website'),
+ $configCache->get('system', 'default_timezone'),
+ ''),
+ '$language' => ['system-language',
+ L10n::t('System Language:'),
+ $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')
]);
break;