Example #1
0
            require_once DISCUZ_ROOT . './include/forum.func.php';
            $forumselect = forumselect();
            if ($discuz_uid == $uid) {
                $layout[$side][] = 'postblog';
            }
        }
        $layout[$side][] = 'hotblog';
        $layout[$side][] = 'lastpostblog';
        $hotblog = spacecaches($uid, array('hotblog', 'lastpostblog'));
        $moduledata = array_merge($moduledata, $hotblog);
    } elseif ($mod == 'mytrades') {
        $layout[$side][] = 'mytradetypes';
        $layout[$side][] = 'tradeinfo';
        if (!isset($tradetypeid)) {
            $layout[1][] = 'mycounters';
            $moduledata['mycounters']['value'] = updatespacecache($uid, 'mycounters', TRUE);
        }
        $tmp = spacecaches($uid, 'mytradetypes');
        $moduledata['mytradetypes']['value'] = $tmp['mytradetypes']['value'];
        $moduledata['tradeinfo']['value'] = $member;
    }
} else {
    $moduledata = spacecaches($uid, $modulelist);
}
foreach ($modulelist as $module) {
    if (array_key_exists($module, $listmodule) && intval($spacedata['limit' . $module])) {
        $menulist[$listmodule[$module]] = $module;
    }
}
ksort($menulist);
$moduledata['userinfo']['value'] = $member;
Example #2
0
function spacecaches($uid, $modulelist = '')
{
    global $db, $tablepre, $timestamp;
    $moduledata = array();
    if (is_array($modulelist)) {
        $allmodules = array('mythreads', 'myreplies', 'myrewards', 'mytrades', 'myvideos', 'myfriends', 'myfavforums', 'myfavthreads', 'myblogs', 'hotblog', 'lastpostblog');
        $modulelist = empty($modulelist) ? $allmodules : array_intersect($modulelist, $allmodules);
        $query = $db->query("SELECT * FROM {$tablepre}spacecaches WHERE uid='{$uid}'");
    } else {
        $query = $db->query("SELECT * FROM {$tablepre}spacecaches WHERE uid='{$uid}' AND variable='{$modulelist}'");
        $modulelist = $allmodules = array($modulelist);
    }
    while ($module = $db->fetch_array($query)) {
        $moduledata[$module['variable']]['expiration'] = $module['expiration'];
        $moduledata[$module['variable']]['value'] = unserialize($module['value']);
    }
    foreach ($allmodules as $module) {
        if (in_array($module, $modulelist) && (empty($moduledata[$module]) || $timestamp > $moduledata[$module]['expiration'])) {
            $moduledata[$module]['value'] = updatespacecache($uid, $module);
        }
        if (!empty($modulelist) && !in_array($module, $modulelist)) {
            unset($moduledata[$module]);
        }
    }
    return $moduledata;
}