<?php 
/** 
 * XOOPS global entry 
 * 
 * You may not change or alter any portion of this comment or credits 
 * of supporting developers from this source code or any supporting source code 
 * which is considered copyrighted (c) material of the original comment or credit authors. 
 * This program is distributed in the hope that it will be useful, 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
 * 
 * @copyright       (c) 2000-2016 XOOPS Project (www.xoops.org) 
 * @license             GNU GPL 2 (http://www.gnu.org/licenses/gpl-2.0.html) 
 * @package             core 
 * @since               2.0.0 
 * @author              Kazumi Ono <[email protected]> 
 * @author              Skalpa Keo <[email protected]> 
 * @author              Taiwen Jiang <[email protected]> 
 */ 
/* @var  XoopsUser $xoopsUser */ 
 
if (file_exists(__DIR__ . '/mainfile.php')) { 
    include __DIR__ . '/mainfile.php'; 
} 
if (!defined('XOOPS_MAINFILE_INCLUDED')) { 
    if (file_exists(__DIR__ . '/install/index.php')) { 
        header('Location: install/index.php'); 
        exit; 
    } 
} 
 
$xoopsPreload = XoopsPreload::getInstance(); 
$xoopsPreload->triggerEvent('core.index.start'); 
 
//check if start page is defined 
if (isset($xoopsConfig['startpage']) && $xoopsConfig['startpage'] != '' && $xoopsConfig['startpage'] != '--' && xoops_isActiveModule($xoopsConfig['startpage'])) { 
    // Temporary solution for start page redirection 
    define('XOOPS_STARTPAGE_REDIRECTED', 1); 
 
    global $xoopsModuleConfig; 
    /* @var XoopsModuleHandler $module_handler */ 
    $module_handler = xoops_getHandler('module'); 
    $xoopsModule    = $module_handler->getByDirname($xoopsConfig['startpage']); 
    if (!$xoopsModule || !$xoopsModule->getVar('isactive')) { 
        include_once $GLOBALS['xoops']->path('header.php'); 
        echo '<h4>' . _MODULENOEXIST . '</h4>'; 
        include_once $GLOBALS['xoops']->path('footer.php'); 
        exit(); 
    } 
    /* @var  XoopsGroupPermHandler $moduleperm_handler */ 
    $moduleperm_handler = xoops_getHandler('groupperm'); 
    if ($xoopsUser) { 
        if (!$moduleperm_handler->checkRight('module_read', $xoopsModule->getVar('mid'), $xoopsUser->getGroups())) { 
            redirect_header(XOOPS_URL . '/user.php', 1, _NOPERM, false); 
        } 
        $xoopsUserIsAdmin = $xoopsUser->isAdmin($xoopsModule->getVar('mid')); 
    } else { 
        if (!$moduleperm_handler->checkRight('module_read', $xoopsModule->getVar('mid'), XOOPS_GROUP_ANONYMOUS)) { 
            redirect_header(XOOPS_URL . '/user.php', 1, _NOPERM); 
        } 
    } 
    if ($xoopsModule->getVar('hasconfig') == 1 || $xoopsModule->getVar('hascomments') == 1 || $xoopsModule->getVar('hasnotification') == 1) { 
        $xoopsModuleConfig = $config_handler->getConfigsByCat(0, $xoopsModule->getVar('mid')); 
    } 
 
    chdir('modules/' . $xoopsConfig['startpage'] . '/'); 
    xoops_loadLanguage('main', $xoopsModule->getVar('dirname', 'n')); 
    $parsed = parse_url(XOOPS_URL); 
    $url    = isset($parsed['scheme']) ? $parsed['scheme'] . '://' : 'http://'; 
    if (isset($parsed['host'])) { 
        $url .= $parsed['host']; 
        if (isset($parsed['port'])) { 
            $url .= ':' . $parsed['port']; 
        } 
    } else { 
        $url .= $_SERVER['HTTP_HOST']; 
    } 
 
    $_SERVER['REQUEST_URI'] = substr(XOOPS_URL, strlen($url)) . '/modules/' . $xoopsConfig['startpage'] . '/index.php'; 
    include $GLOBALS['xoops']->path('modules/' . $xoopsConfig['startpage'] . '/index.php'); 
    exit(); 
} else { 
    $xoopsOption['show_cblock']   = 1; 
    $GLOBALS['xoopsOption']['template_main'] = 'db:system_homepage.tpl'; 
    include $GLOBALS['xoops']->path('header.php'); 
    include $GLOBALS['xoops']->path('footer.php'); 
} 
 
 |