diff options
author | friendica <info@friendica.com> | 2013-12-15 15:37:51 -0800 |
---|---|---|
committer | friendica <info@friendica.com> | 2013-12-15 15:37:51 -0800 |
commit | 731ab80ac2ea78f595730ecb8f4d62d7b468d084 (patch) | |
tree | 052ec99a0905cede221b6155f568e4bcfaf25636 /mod | |
parent | 0272ab4cd9a6428396489d88c7a1a89be76e5810 (diff) | |
download | volse-hubzilla-731ab80ac2ea78f595730ecb8f4d62d7b468d084.tar.gz volse-hubzilla-731ab80ac2ea78f595730ecb8f4d62d7b468d084.tar.bz2 volse-hubzilla-731ab80ac2ea78f595730ecb8f4d62d7b468d084.zip |
set system.projecthome to 1 if you want the project page for a home page. There was a bit of re-org of mod/home, which might alter the behaviour for some existing sites. Basically we're not showing a login box at all if you've got home.html - there should be a login link in th nav bar. If you haven't defined anything at all we'll fall back to the old behaviour but still allow the home contents to be set via plugin.
Diffstat (limited to 'mod')
-rw-r--r-- | mod/home.php | 92 |
1 files changed, 49 insertions, 43 deletions
diff --git a/mod/home.php b/mod/home.php index 2b8e83c30..05626dcb5 100644 --- a/mod/home.php +++ b/mod/home.php @@ -1,6 +1,9 @@ <?php -if(! function_exists('home_init')) { +require_once('include/items.php'); +require_once('include/conversation.php'); + + function home_init(&$a) { $ret = array(); @@ -20,10 +23,9 @@ function home_init(&$a) { goaway(z_root() . '/new_channel'); } -}} +} -if(! function_exists('home_content')) { function home_content(&$a) { $o = ''; @@ -33,58 +35,62 @@ function home_content(&$a) { if(x($_SESSION,'mobile_theme')) unset($_SESSION['mobile_theme']); -$channel_address = get_config("system", "site_channel" ); + $channel_address = get_config("system", "site_channel" ); if ($channel_address){ -require_once('include/items.php'); -require_once('include/conversation.php'); + // We can do better, but until we figure out auto-linkification, let's keep things simple + + $page_id = 'home'; + $u = q("select channel_id from channel where channel_address = '%s' limit 1", + dbesc($channel_address) + ); -//We can do better, but until we figure out auto-linkification, let's keep things simple - $page_id = 'home'; + if(! $u) { + notice( t('Channel not found.') . EOL); + return; + } - $u = q("select channel_id from channel where channel_address = '%s' limit 1", - dbesc($channel_address) - ); + $r = q("select item.* from item left join item_id on item.id = item_id.iid + where item.uid = %d and sid = '%s' and service = 'WEBPAGE' and + item_restrict = %d limit 1", + intval($u[0]['channel_id']), + dbesc($page_id), + intval(ITEM_WEBPAGE) + ); + + if(! $r) { + notice( t('Item not found.') . EOL); + return; + } - if(! $u) { - notice( t('Channel not found.') . EOL); - return; + xchan_query($r); + $r = fetch_post_tags($r,true); + $a->profile = array('profile_uid' => $u[0]['channel_id']); + $o .= prepare_page($r[0]); + return $o; } - $r = q("select item.* from item left join item_id on item.id = item_id.iid - where item.uid = %d and sid = '%s' and service = 'WEBPAGE' and - item_restrict = %d limit 1", - intval($u[0]['channel_id']), - dbesc($page_id), - intval(ITEM_WEBPAGE) - ); - - if(! $r) { - notice( t('Item not found.') . EOL); - return; + if(get_config('system','projecthome')) { + $o .= file_get_contents('assets/home.html'); + $a->page['template'] = 'full'; + return $o; } - xchan_query($r); - $r = fetch_post_tags($r,true); - $a->profile = array('profile_uid' => $u[0]['channel_id']); - $o .= prepare_page($r[0]); + if(file_exists('home.html')) { + $o .= file_get_contents('home.html'); + } + else { -} + // If there's no site channel or home contents configured, fallback to the old behaviour -// If there's no site channel specified, fallback to the old behaviour - else { $o .= '<h1>' . ((x($a->config,'sitename')) ? sprintf( t("Welcome to %s") ,$a->config['sitename']) : "" ) . '</h1>'; - if(file_exists('home.html')) { - $o .= file_get_contents('home.html'); - $a->page['template'] = 'full'; - } + $sitename = get_config('system','sitename'); + if($sitename) + $o .= '<h1>' . sprintf( t("Welcome to %s") ,$sitename) . '</h1>'; + if (! $a->config['system']['no_login_on_homepage']) + $o .= login(($a->config['system']['register_policy'] == REGISTER_CLOSED) ? 0 : 1); } - - if (!$a->config['system']['no_login_on_homepage']) - $o .= login(($a->config['system']['register_policy'] == REGISTER_CLOSED) ? 0 : 1); - - call_hooks("home_content",$o); - return $o; -} + call_hooks('home_content',$o); + return $o; } |