2008-02-29, 05:23 AM
Can this be moved to the top of the memberlist versus the bottom? I'm using Lex's memberlist mod, so I'll post my memberlist.php and the memberlist theme edit...not sure which of the 2 you guys need.
<?php
/**
* MyBB 1.2
* Copyright © 2006 MyBB Group, All Rights Reserved
*
* Website: http://www.mybboard.net
* License: http://www.mybboard.net/eula.html
*
* $Id: memberlist.php 3478 2007-11-15 04:11:36Z Tikitiki $
*/
define("IN_MYBB", 1);
$templatelist = "memberlist,memberlist_row";
$templatelist .= ",postbit_www,postbit_email,multipage_nextpage,multipage_page_current,multipage_page,multipage_start,multipage_end,multipage";
require_once "./global.php";
// Load global language phrases
$lang->load("memberlist");
if($mybb->settings['enablememberlist'] == "no")
{
error($lang->memberlist_disabled);
}
$plugins->run_hooks("memberlist_start");
add_breadcrumb($lang->nav_memberlist);
if($mybb->usergroup['canviewmemberlist'] == "no")
{
error_no_permission();
}
if($mybb->input['by'] != "regdate" && $mybb->input['by'] != "postnum" && $mybb->input['by'] != "username")
{
if($mybb->input['usersearch'])
{
$mybb->input['by'] = "username";
}
else
{
$mybb->input['by'] = $mybb->settings['default_memberlist_sortby'];
if(!$mybb->input['by'])
{
$mybb->input['by'] = "regdate";
}
}
}
if($mybb->input['order'] != "DESC" && $mybb->input['order'] != "ASC")
{
// top posters first
if($mybb->input['by'] == "postnum")
{
$mybb->input['order'] = "DESC";
}
else
{
$mybb->input['order']= $mybb->settings['default_memberlist_order'];
}
}
if($mybb->input['usersearch'])
{
$query = $db->simple_select(TABLE_PREFIX."users", "COUNT(*) AS users", "username LIKE '%".$db->escape_string($mybb->input['usersearch'])."%'");
$linkaddon = "&usersearch=".$mybb->input['usersearch'];
}
else
{
$query = $db->simple_select(TABLE_PREFIX."users", "COUNT(*) AS users");
$linkaddon = '';
}
if($mybb->input['action'] == "short")
{
if($mybb->input['how'] == "#")
{
$condition = "u.username NOT REGEXP(\"^[a-zA-Z]\")";
}
else if($mybb->input['how'] == "all")
{
$condition = "";
}
else
{
$condition = "u.username LIKE '".$db->escape_string($mybb->input['how'])."%'";
}
$query = $db->simple_select(TABLE_PREFIX."users u", "COUNT(*) AS users", $condition);
$linkaddon = "&action=short&how=".$mybb->input['how'];
}
if($mybb->input['action'] == "groupsort")
{
$gid = intval($mybb->input['gid']);
$query = $db->query("
SELECT COUNT(*) as users
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."userfields f ON (f.ufid=u.uid)
WHERE u.additionalgroups != '' OR u.usergroup = {$gid}
");
$linkaddon = "&action=groupsort&gid=".$gid;
}
$num = $db->fetch_field($query, "users");
$page = intval($mybb->input['page']);
if($page)
{
$start = ($page - 1) * $mybb->settings['membersperpage'];
}
else
{
$start = 0;
$page = 1;
}
$multipage = multipage($num, $mybb->settings['membersperpage'], $page, "memberlist.php?by=".$mybb->input['by']."&order=".$mybb->input['order'].$linkaddon);
if($mybb->input['by'] == "postnum")
{
$postnumsel = " selected=\"selected\"";
}
elseif($mybb->input['by'] == "username")
{
$usernamesel = " selected=\"selected\"";
}
else
{
$regdatesel = " selected=\"selected\"";
}
if($mybb->input['order'] == "DESC")
{
$descsel = " selected=\"selected\"";
}
else
{
$ascsel = " selected=\"selected\"";
}
if($mybb->input['usersearch'])
{
$query = $db->query("
SELECT u.*, f.*
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."userfields f ON (f.ufid=u.uid)
WHERE u.username LIKE '%".$db->escape_string($mybb->input['usersearch'])."%'
ORDER BY u.".$mybb->input['by']." ".$mybb->input['order']."
LIMIT $start, ".$mybb->settings['membersperpage']
);
}
else
{
$query = $db->query("
SELECT u.*, f.*
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."userfields f ON (f.ufid=u.uid)
ORDER BY u.".$mybb->input['by']." ".$mybb->input['order']."
LIMIT $start, ".$mybb->settings['membersperpage']
);
}
if($mybb->input['action'] == "groupsort")
{
$gid = intval($mybb->input['gid']);
$query = $db->query("
SELECT u.*, f.*
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."userfields f ON (f.ufid=u.uid)
WHERE u.usergroup = {$gid} OR u.additionalgroups != ''
LIMIT $start, ".$mybb->settings['membersperpage']
);
}
if($mybb->input['action'] == "short")
{
if($mybb->input['how'] == "#")
{
$condition = " WHERE u.username NOT REGEXP(\"^[a-zA-Z]\")";
}
else
{
if($mybb->input['how'] == "all")
{
$condition = "ORDER BY u.uid ASC";
}
else
{
$condition = "WHERE u.username LIKE '".$db->escape_string($mybb->input['how'])."%' ORDER BY u.username ASC";
}
}
$query = $db->query("
SELECT u.*, f.*
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."userfields f ON (f.ufid=u.uid)
".$condition."
LIMIT $start, ".$mybb->settings['membersperpage']
);
}
$member = '';
while($users = $db->fetch_array($query))
{
$plugins->run_hooks("memberlist_user");
if($mybb->input['action'] == "groupsort")
{
if($users['usergroup'] != $gid)
{
$groups = $users['additionalgroups'];
if($groups != "")
{
$groups = explode(",", $groups);
if(!in_array($gid, $groups))
{
continue;
}
}
}
}
// Make variables for postbit templates
$post = &$users;
if($users['website'] == '' || $users['website'] == "http://")
{
$usersite = "<img src=\"./images/unknown.gif\" /> ";
}
else
{
eval("\$usersite = \"".$templates->get("postbit_www")."\";");
}
$users['location'] = $users['fid1'];
if($users['location'] == "")
{
$users['location'] = "<img src=\"./images/unknown.gif\" /> ";
}
else
{
$users['location'] = htmlspecialchars_uni(stripslashes($users['location']));
}
if($users['xfire'] == "")
{
$xfire = "<img src=\"./images/unknown.gif\" /> ";
}
else
{
$xfire = $users['xfire'];
}
if($users['hideemail'] == "yes")
{
$useremail = "<img src=\"./images/unknown.gif\" />";
}
else
{
eval("\$useremail = \"".$templates->get("postbit_email")."\";");
}
$users['regdate'] = my_date($mybb->settings['dateformat'], $users['regdate']);
$users['username'] = format_name($users['username'], $users['usergroup'], $users['displaygroup']);
if($users['away'] == "yes")
{
$online = "<img src=\"./images/away.gif\" />";
}
else if($users['lastactive'] > time() - $mybb->settings['wolcutoff'])
{
$online = "<img src=\"./images/online.gif\" />";
}
else
{
$online = "<img src=\"./images/offline.gif\" />";
}
eval("\$member .= \"".$templates->get("memberlist_row")."\";");
}
// GET GROUPS
$groupcache = $cache->read("usergroups");
$ex = array('1','3','5','6','7');
foreach($groupcache as $group)
{
if(in_array($group['gid'], $ex))
{
continue;
}
$format = $group['namestyle'];
$userin = substr_count($format, "{username}");
if($userin == 0)
{
$format = "{username}";
}
$format = stripslashes($format);
$usergroup = str_replace("{username}", $group['title'], $format);
$groupsort .= $sep."<strong><a href=\"./memberlist.php?action=groupsort&gid={$group['gid']}\">{$usergroup}</a></strong>";
$sep = ", ";
}
// just in case there's no matching search results, or no registered members
if(!$member)
{
$member = "<tr>\n<td colspan=\"8\" align=\"center\" class=\"trow1\">$lang->error_no_members</td>\n</tr>";
}
$usersearch = htmlspecialchars_uni($mybb->input['usersearch']);
if($mybb->input['action'] == "short" && $db->escape_string($mybb->input['how']) != "all")
{
$how = strtoupper($mybb->input['how']);
$sorted = "<span style=\"font-size:9px;\">=> [ Sorted On {$how} ]</span>";
}
else
{
$sorted = "";
}
$plugins->run_hooks("memberlist_end");
eval("\$memberlist = \"".$templates->get("memberlist")."\";");
output_page($memberlist);
?>
<html>
<head>
<title>{$mybb->settings['bbname']} - {$lang->member_list}</title>
{$headerinclude}
</head>
<body>
{$header}
{$multipage}
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" align="center">
<tr>
<td class="thead" colspan="8"><strong>{$lang->member_list} {$sorted}</strong></td>
</tr>
<tr ><td colspan="8"><span class="smalltext">Sort On : [ <a href="memberlist.php?action=short&how=%23"> # </a> ] [ <a href="memberlist.php?action=short&how=a">A </a> ] [ <a href="memberlist.php?action=short&how=b">B </a> ] [ <a href="memberlist.php?action=short&how=c"> C </a> ] [ <a href="memberlist.php?action=short&how=d"> D</a> ] [ <a href="memberlist.php?action=short&how=e"> E </a> ] [ <a href="memberlist.php?action=short&how=f"> F </a> ] [ <a href="memberlist.php?action=short&how=g"> G </a> ] [ <a href="memberlist.php?action=short&how=h"> H </a> ] [ <a href="memberlist.php?action=short&how=i"> I </a> ] [ <a href="memberlist.php?action=short&how=j"> J </a> ] [ <a href="memberlist.php?action=short&how=k"> K </a> ] [ <a href="memberlist.php?action=short&how=l"> L </a> ] [ <a href="memberlist.php?action=short&how=m">M </a> ] [ <a href="memberlist.php?action=short&how=n">N </a> ] [ <a href="memberlist.php?action=short&how=o">O </a> ] [ <a href="memberlist.php?action=short&how=p">P</a> ] [ <a href="memberlist.php?action=short&how=q">Q </a> ] [ <a href="memberlist.php?action=short&how=r">R </a> ] [ <a href="memberlist.php?action=short&how=s">S </a> ] [ <a href="memberlist.php?action=short&how=t">T </a> ] [ <a href="memberlist.php?action=short&how=u">U </a> ] [ <a href="memberlist.php?action=short&how=v">V </a> ] [ <a href="memberlist.php?action=short&how=w">W </a> ] [ <a href="memberlist.php?action=short&how=x">X </a> ] [ <a href="memberlist.php?action=short&how=y">Y </a> ] [ <a href="memberlist.php?action=short&how=z">Z </a> ] [ <a href="memberlist.php?action=short&how=all">All </a> ] </span>
</td></tr>
<tr><td align="left" colspan="8" ><span class="smalltext">Sort On UserGroup: {$groupsort}</span></td></tr>
<tr>
<td class="tcat" align="center"><span class="smalltext"><strong>{$lang->username}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>Status</strong></span></td>
<td class="tcat" align="center"><span class="smalltext" align="center"><strong>Xfire:</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{$lang->email}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{$lang->website}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{$lang->location}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{$lang->joined}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{$lang->posts}</strong></span></td>
</tr>
{$member}
<tr>
<td align="center" colspan="8" class="tfoot">
<form action="memberlist.php" method="post">
<input type="hidden" name="page" value="{$page}" />
{$lang->sort_by} <select name="by">
<option value="regdate"{$regdatesel}>{$lang->sort_regdate}</option>
<option value="username"{$usernamesel}>{$lang->sort_username}</option>
<option value="postnum"{$postnumsel}>{$lang->sort_posts}</option>
</select> {$lang->sort_in} <select name="order">
<option value="ASC"{$ascsel}>{$lang->sort_asc}</option>
<option value="DESC"{$descsel}>{$lang->sort_desc}</option>
</select> {$lang->order} {$lang->search_for} <input type="text" class="textbox" name="usersearch" value="{$usersearch}" size="20" /> {$gobutton}
</form>
</td>
</tr>
</table>
<div style="float:left"><span class="smalltext">[<a href="showteam.php">{$lang->forumteam}</a>]</span></div><div style="float:right">{$multipage}</div>
<br />
{$footer}
</body>
</html>