]> git.mxchange.org Git - friendica.git/blobdiff - mod/home.php
Fixes:
[friendica.git] / mod / home.php
index 8bee1aef00abe2413e601d35547a431a6259c694..d28bf3cb43a9fc62b694fae2c2af0d59806b6c97 100644 (file)
@@ -1,26 +1,32 @@
 <?php
+/**
+ * @file mod/home.php
+ */
+use Friendica\App;
+use Friendica\Core\Addon;
+use Friendica\Core\Config;
+use Friendica\Core\L10n;
+use Friendica\Core\System;
+use Friendica\Module\Login;
 
 if(! function_exists('home_init')) {
-function home_init(App &$a) {
+function home_init(App $a) {
 
-       $ret = array();
-       call_hooks('home_init',$ret);
+       $ret = [];
+       Addon::callHooks('home_init',$ret);
 
        if (local_user() && ($a->user['nickname'])) {
-               goaway(App::get_baseurl()."/network");
+               goaway(System::baseUrl()."/network");
        }
 
-       if (strlen(get_config('system','singleuser'))) {
-               goaway(App::get_baseurl()."/profile/" . get_config('system','singleuser'));
+       if (strlen(Config::get('system','singleuser'))) {
+               goaway(System::baseUrl()."/profile/" . Config::get('system','singleuser'));
        }
 
 }}
 
-
 if(! function_exists('home_content')) {
-function home_content(App &$a) {
-
-       $o = '';
+function home_content(App $a) {
 
        if (x($_SESSION,'theme')) {
                unset($_SESSION['theme']);
@@ -29,24 +35,32 @@ function home_content(App &$a) {
                unset($_SESSION['mobile-theme']);
        }
 
-       /// @TODO No absolute path used, maybe risky (security)
-       if (file_exists('home.html')) {
-               if (file_exists('home.css')) {
-                       $a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="'.App::get_baseurl().'/home.css'.'" media="all" />';
-               }
-
-               $o .= file_get_contents('home.html');}
+       $customhome = false;
+       $defaultheader = '<h1>' . (Config::get('config', 'sitename') ? L10n::t('Welcome to %s', Config::get('config', 'sitename')) : '') . '</h1>';
 
-       else {
-               $o .= '<h1>'.((x($a->config,'sitename')) ? sprintf(t("Welcome to %s"), $a->config['sitename']) : "").'</h1>';
+       $homefilepath = $a->basepath . "/home.html";
+       $cssfilepath = $a->basepath . "/home.css";
+       if (file_exists($homefilepath)) {
+               $customhome = $homefilepath;
+               if (file_exists($cssfilepath)) {
+                       $a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="'.System::baseUrl().'/home.css'.'" media="all" />';
+               }
        }
 
+       $login = Login::form($a->query_string, intval(Config::get('config', 'register_policy')) === REGISTER_CLOSED ? 0 : 1);
 
-       $o .= login(($a->config['register_policy'] == REGISTER_CLOSED) ? 0 : 1);
+       $content = '';
+       Addon::callHooks("home_content",$content);
 
-       call_hooks("home_content",$o);
 
-       return $o;
+       $tpl = get_markup_template('home.tpl');
+       return replace_macros($tpl, [
+               '$defaultheader' => $defaultheader,
+               '$customhome' => $customhome,
+               '$login' => $login,
+               '$content' => $content
+       ]);
 
+       return $o;
 
 }}