Example #1
0
function actionRSS()
{
    $sType = process_db_input($_REQUEST['action'], BX_TAGS_STRIP);
    $iLength = (int) $_REQUEST['length'];
    if (strncmp($sType, 'sys_', 4) === 0) {
        $aRssTitle = '';
        $aRssData = array();
        switch ($sType) {
            case 'sys_stats':
                $aRssTitle = getParam('site_title');
                $oCache = $GLOBALS['MySQL']->getDbCacheObject();
                $aStats = $oCache->getData($GLOBALS['MySQL']->genDbCacheKey('sys_stat_site'));
                if (null === $aStats) {
                    genSiteStatCache();
                    $aStats = $oCache->getData($GLOBALS['MySQL']->genDbCacheKey('sys_stat_site'));
                }
                if ($aStats && is_array($aStats)) {
                    foreach ($aStats as $sKey => $aStat) {
                        $iNum = strlen($aStat['query']) > 0 ? db_value($aStat['query']) : 0;
                        $aRssData[] = array('UnitID' => $sKey, 'OwnerID' => '', 'UnitTitle' => $iNum . ' ' . _t('_' . $aStat['capt']), 'UnitLink' => strlen($aStat['link']) > 0 ? BX_DOL_URL_ROOT . $aStat['link'] : '', 'UnitDesc' => '', 'UnitDateTimeUTS' => 0, 'UnitIcon' => '');
                    }
                }
                break;
            case 'sys_members':
                $aRssTitle = getParam('site_title');
                $iLength = $iLength != 0 ? $iLength : 33;
                $aMembers = $GLOBALS['MySQL']->getAll("SELECT *, UNIX_TIMESTAMP(`DateReg`) AS `DateRegUTS` FROM `Profiles` WHERE 1 AND (`Couple`='0' OR `Couple`>`ID`) AND `Status`='Active' ORDER BY `DateReg` DESC LIMIT " . $iLength);
                foreach ($aMembers as $aMember) {
                    $aRssData[] = array('UnitID' => '', 'OwnerID' => '', 'UnitTitle' => $aMember['NickName'], 'UnitLink' => getProfileLink($aMember['ID']), 'UnitDesc' => $GLOBALS['oFunctions']->getMemberAvatar($aMember['ID']), 'UnitDateTimeUTS' => $aMember['DateRegUTS'], 'UnitIcon' => '');
                }
                break;
            case 'sys_news':
                echo BxDolService::call('news', 'news_rss', array($iLength));
                return;
        }
        $oRss = new BxDolRssFactory();
        echo $oRss->GenRssByData($aRssData, $aRssTitle, '');
    } else {
        BxDolService::call($sType, $sType . '_rss', array());
    }
}
Example #2
0
function getSiteStatArray()
{
    $oCache = $GLOBALS['MySQL']->getDbCacheObject();
    $aStats = $oCache->getData($GLOBALS['MySQL']->genDbCacheKey('sys_stat_site'));
    if ($aStats === null) {
        genSiteStatCache();
        $aStats = $oCache->getData($GLOBALS['MySQL']->genDbCacheKey('sys_stat_site'));
    }
    if (!$aStats) {
        $aStats = array();
    }
    return $aStats;
}
Example #3
0
function getSiteStatUser()
{
    global $aStat;
    $oCache = $GLOBALS['MySQL']->getDbCacheObject();
    $aStat = $oCache->getData($GLOBALS['MySQL']->genDbCacheKey('sys_stat_site'));
    if (null === $aStat) {
        genSiteStatCache();
        $aStat = $oCache->getData($GLOBALS['MySQL']->genDbCacheKey('sys_stat_site'));
    }
    if (!$aStat) {
        $aStat = array();
    }
    $sCode = '<div class="siteStatMain">';
    foreach ($aStat as $aVal) {
        $sCode .= getSiteStatBody($aVal);
    }
    $sCode .= '<div class="clear_both"></div></div>';
    return $sCode;
}