コード例 #1
0
/**
 * Latest member block, shows name and join date for X latest members
 *
 * @param mixed[] $parameters
 *		'limit' => number of members to show
 * @param int $id - not used in this block
 * @param boolean $return_parameters if true returns the configuration options for the block
 */
function sp_latestMember($parameters, $id, $return_parameters = false)
{
    global $scripturl, $txt, $color_profile;
    $block_parameters = array('limit' => 'int');
    if ($return_parameters) {
        return $block_parameters;
    }
    // Load in the latest members
    require_once SUBSDIR . '/Members.subs.php';
    $limit = !empty($parameters['limit']) ? (int) $parameters['limit'] : 5;
    $rows = recentMembers($limit);
    // Get them ready for color ids and the template
    $members = array();
    $colorids = array();
    foreach ($rows as $row) {
        if (!empty($row['id_member'])) {
            $colorids[$row['id_member']] = $row['id_member'];
        }
        $members[] = array('id' => $row['id_member'], 'name' => $row['real_name'], 'href' => $scripturl . '?action=profile;u=' . $row['id_member'], 'link' => '<a href="' . $scripturl . '?action=profile;u=' . $row['id_member'] . '">' . $row['real_name'] . '</a>', 'date' => standardTime($row['date_registered'], '%d %b'));
    }
    // No recent members, suppose it could happen
    if (empty($members)) {
        echo '
								', $txt['error_sp_no_members_found'];
        return;
    }
    // Using member profile colors
    if (!empty($colorids) && sp_loadColors($colorids) !== false) {
        foreach ($members as $k => $p) {
            if (!empty($color_profile[$p['id']]['link'])) {
                $members[$k]['link'] = $color_profile[$p['id']]['link'];
            }
        }
    }
    echo '
								<ul class="sp_list">';
    foreach ($members as $member) {
        echo '
									<li ', sp_embed_class('dot'), '>', $member['link'], ' - <span class="smalltext">', $member['date'], '</span></li>';
    }
    echo '
								</ul>';
}
コード例 #2
0
ファイル: News.controller.php プロジェクト: KeiroD/Elkarte
 /**
  * Retrieve the list of members from database.
  * The array will be generated to match the format.
  *
  * @param string $xml_format
  * @return mixed[]
  */
 public function action_xmlmembers($xml_format)
 {
     global $scripturl;
     if (!allowedTo('view_mlist')) {
         return array();
     }
     // Find the most recent members.
     require_once SUBSDIR . '/Members.subs.php';
     $members = recentMembers((int) $this->_limit);
     // No data yet
     $data = array();
     foreach ($members as $member) {
         // Make the data look rss-ish.
         if ($xml_format == 'rss' || $xml_format == 'rss2') {
             $data[] = array('title' => cdata_parse($member['real_name']), 'link' => $scripturl . '?action=profile;u=' . $member['id_member'], 'comments' => $scripturl . '?action=pm;sa=send;u=' . $member['id_member'], 'pubDate' => gmdate('D, d M Y H:i:s \\G\\M\\T', $member['date_registered']), 'guid' => $scripturl . '?action=profile;u=' . $member['id_member']);
         } elseif ($xml_format == 'rdf') {
             $data[] = array('title' => cdata_parse($member['real_name']), 'link' => $scripturl . '?action=profile;u=' . $member['id_member']);
         } elseif ($xml_format == 'atom') {
             $data[] = array('title' => cdata_parse($member['real_name']), 'link' => $scripturl . '?action=profile;u=' . $member['id_member'], 'published' => gmstrftime('%Y-%m-%dT%H:%M:%SZ', $member['date_registered']), 'updated' => gmstrftime('%Y-%m-%dT%H:%M:%SZ', $member['last_login']), 'id' => $scripturl . '?action=profile;u=' . $member['id_member']);
         } else {
             $data[] = array('name' => cdata_parse($member['real_name']), 'time' => htmlspecialchars(strip_tags(standardTime($member['date_registered'])), ENT_COMPAT, 'UTF-8'), 'id' => $member['id_member'], 'link' => $scripturl . '?action=profile;u=' . $member['id_member']);
         }
     }
     return $data;
 }