It looks like the problem is here: (index.php)
// If guest access is off, a guest can only do one of the very few following actions.
elseif (empty($modSettings['allow_guestAccess'])
&& !(!empty($_REQUEST['action']) && $_REQUEST['action'] == 'dlattach' && !empty($_REQUEST['type']) && $_REQUEST['type'] == 'avatar')
&& !(empty($_REQUEST['action']) && empty($board) && empty($topic) && $modSettings['sp_portal_mode'] == 1)
&& $user_info['is_guest']
&& (!isset($_REQUEST['action']) || !in_array($_REQUEST['action'], array('coppa', 'login', 'login2', 'register', 'register2', 'reminder', 'activate', 'help', 'smstats', 'mailq', 'verificationcode', 'openidreturn',))))
{
require_once($sourcedir . '/Subs-Auth.php');
return 'KickGuest';
}
elseif (empty($_REQUEST['action']))
{
// Go catch it boy! Catch it!
$sp_action = sportal_catch_action();
if ($sp_action)
return $sp_action;
The first should happen, the 'KickGuest' action, but it doesn't :
!(empty($_REQUEST['action']) && empty($board) && empty($topic) && $modSettings['sp_portal_mode'] == 1)
is false.