コード例 #1
0
ファイル: TopUsersTag.php プロジェクト: Reasno/SocialProfile
/**
 * Get the given amount of top users for the given timeframe.
 *
 * @return String: HTML
 */
function getTopUsersForTag($input, $args, $parser)
{
    global $wgLang;
    // Don't allow showing OVER 9000...I mean, over 50 users, duh.
    // Performance and all that stuff.
    if (!empty($args['limit']) && is_numeric($args['limit']) && $args['limit'] < 50) {
        $limit = intval($args['limit']);
    } else {
        $limit = 5;
    }
    if (!empty($args['period']) && strtolower($args['period']) == 'monthly') {
        $period = 'monthly';
    } else {
        // "period" argument not supplied/it's not "monthly", so assume weekly
        $period = 'weekly';
    }
    $fans = UserStats::getTopFansListPeriod($limit, $period);
    $x = 1;
    $topfans = '';
    foreach ($fans as $fan) {
        $avatar = new wAvatar($fan['user_id'], 'm');
        $user = Title::makeTitle(NS_USER, $fan['user_name']);
        $topfans .= "<div class=\"top-fan\">\n\t\t\t\t<span class=\"top-fan-number\">{$x}.</span>\n\t\t\t\t<a href=\"{$user->getFullURL()}\">{$avatar->getAvatarURL()}</a>\n\t\t\t\t<span class=\"top-fans-user\"><a href=\"{$user->getFullURL()}\">{$fan['user_name']}</a></span>\n\t\t\t\t<span class=\"top-fans-points\"><b>+" . $wgLang->formatNum($fan['points']) . '</b> ' . wfMessage('top-fans-points')->plain() . '</span>
			</div>';
        $x++;
    }
    return $topfans;
}