Zeile 17 | Zeile 17 |
---|
// Load global language phrases $lang->load('showteam');
|
// Load global language phrases $lang->load('showteam');
|
add_breadcrumb($lang->nav_showteam);
| if($mybb->settings['enableshowteam'] == 0) { error($lang->showteam_disabled); }
|
|
|
$plugins->run_hooks('showteam_start');
| add_breadcrumb($lang->nav_showteam);
|
|
|
$timecut = TIME_NOW - $mybb->settings['wolcutoff'];
| $plugins->run_hooks('showteam_start');
|
|
|
$usergroups = array(); $moderators = array(); $users = array();
| $timecut = TIME_NOW - $mybb->settings['wolcutoff'];
$usergroups = $moderators = $users = array();
|
// Fetch the list of groups which are to be shown on the page $query = $db->simple_select("usergroups", "gid, title, usertitle", "showforumteam=1", array('order_by' => 'disporder'));
| // Fetch the list of groups which are to be shown on the page $query = $db->simple_select("usergroups", "gid, title, usertitle", "showforumteam=1", array('order_by' => 'disporder'));
|
Zeile 35 | Zeile 38 |
---|
}
if(empty($usergroups))
|
}
if(empty($usergroups))
|
{
| {
|
error($lang->error_noteamstoshow); }
| error($lang->error_noteamstoshow); }
|
Zeile 57 | Zeile 60 |
---|
}
// Now query the users of those specific groups
|
}
// Now query the users of those specific groups
|
$groups_in = implode(",", array_keys($usergroups));
| $visible_groups = array_keys($usergroups);
$groups_in = implode(",", $visible_groups);
|
$users_in = implode(",", array_keys($moderators));
|
$users_in = implode(",", array_keys($moderators));
|
|
|
if(!$groups_in)
|
if(!$groups_in)
|
{
| {
|
$groups_in = 0; }
|
$groups_in = 0; }
|
|
|
if(!$users_in) { $users_in = 0;
|
if(!$users_in) { $users_in = 0;
|
}
| }
|
$forum_permissions = forum_permissions();
|
$forum_permissions = forum_permissions();
|
| $query_part = '';
// Include additional groups if set to if($mybb->settings['showaddlgroups']) { foreach($visible_groups as $visible_group) { if($db->type == "pgsql") { $query_part .= "'$visible_group' = ANY (string_to_array(additionalgroups, ',')) OR "; } else if($db->type == "sqlite") { $query_part .= "'$visible_group' IN (additionalgroups) OR "; } else { $query_part .= "FIND_IN_SET('$visible_group', additionalgroups) OR "; } } }
// Include group leaders if set to if($mybb->settings['showgroupleaders']) { $leaders = $leadlist = $leaderlist = array();
$query = $db->simple_select("groupleaders", "gid, uid"); while($leader = $db->fetch_array($query)) { $leaders[$leader['uid']][] = $leader['gid']; }
if(!empty($leaders)) { foreach($leaders as $uid => $gid) { $leaderlist[$uid] = $gid; $leadlist[] = implode(",", $gid); } $leadlist = implode(",", $leadlist);
$query = $db->simple_select("usergroups", "gid, title, namestyle", "gid IN ($leadlist)"); unset($leadlist);
while($leaded_group = $db->fetch_array($query)) { $leaded_groups[$leaded_group['gid']] = str_replace("{username}",$leaded_group['title'], $leaded_group['namestyle']); }
// Create virtual usergroup container for leaders $usergroups[0] = array('gid' => 0, 'title' => $lang->group_leaders, 'usertitle' => $lang->group_leaders); foreach($leaderlist as $uid => $leaded) { foreach($leaded as $gid){ $leadlist[] = $leaded_groups[$gid]; } $usergroups[0]['user_list'][$uid]['leaded'] = implode(", ",$leadlist); unset($leadlist); }
$users_in = implode(",", array_keys(array_flip(explode(",", implode(",", array_keys($leaderlist)).",".$users_in)))); } }
$query = $db->simple_select("users", "uid, username, displaygroup, usergroup, additionalgroups, ignorelist, hideemail, receivepms, lastactive, lastvisit, invisible, away", $query_part."displaygroup IN ($groups_in) OR (displaygroup='0' AND usergroup IN ($groups_in)) OR uid IN ($users_in)", array('order_by' => 'username'));
|
|
|
$query = $db->simple_select("users", "uid, username, displaygroup, usergroup, ignorelist, hideemail, receivepms, lastactive, lastvisit, invisible", "displaygroup IN ($groups_in) OR (displaygroup='0' AND usergroup IN ($groups_in)) OR uid IN ($users_in)", array('order_by' => 'username'));
| |
while($user = $db->fetch_array($query)) { // If this user is a moderator
| while($user = $db->fetch_array($query)) { // If this user is a moderator
|
Zeile 81 | Zeile 154 |
---|
{ $forum_url = get_forum_link($forum['fid']); eval("\$forumlist .= \"".$templates->get("showteam_moderators_forum")."\";");
|
{ $forum_url = get_forum_link($forum['fid']); eval("\$forumlist .= \"".$templates->get("showteam_moderators_forum")."\";");
|
} }
| } }
|
$user['forumlist'] = $forumlist; $forumlist = '';
|
$user['forumlist'] = $forumlist; $forumlist = '';
|
$usergroups[6]['user_list'][$user['uid']] = $user; }
| $usergroups[6]['user_list'][$user['uid']] = $user; }
if($mybb->settings['showgroupleaders'] && isset($usergroups[0]['user_list'])) { foreach($usergroups[0]['user_list'] as $uid => $userdetails) { if($user['uid'] == $uid) { $user['leaded'] = $usergroups[0]['user_list'][$uid]['leaded']; $usergroups[0]['user_list'][$uid] = $user; } } }
|
if($user['displaygroup'] == '6' || $user['usergroup'] == '6') {
| if($user['displaygroup'] == '6' || $user['usergroup'] == '6') {
|
Zeile 97 | Zeile 182 |
---|
if($user['displaygroup'] != 0) { $group = $user['displaygroup'];
|
if($user['displaygroup'] != 0) { $group = $user['displaygroup'];
|
}
| }
|
else
|
else
|
{
| {
|
$group = $user['usergroup']; }
|
$group = $user['usergroup']; }
|
if($usergroups[$group] && $group != 6)
| if($usergroups[$group] && $group != 6) { $usergroups[$group]['user_list'][$user['uid']] = $user; }
if($mybb->settings['showaddlgroups'] && $user['additionalgroups'] != '')
|
{
|
{
|
$usergroups[$group]['user_list'][$user['uid']] = $user;
| $adgroups = explode(',', $user['additionalgroups']); foreach($adgroups as $adgroup) { if(in_array($adgroup, $visible_groups)) { $usergroups[$adgroup]['user_list'][$user['uid']] = $user; } }
|
} }
| } }
|
Zeile 124 | Zeile 221 |
---|
$bgcolor = ''; foreach($usergroup['user_list'] as $user) {
|
$bgcolor = ''; foreach($usergroup['user_list'] as $user) {
|
$user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);
| $user['username'] = format_name(htmlspecialchars_uni($user['username']), $user['usergroup'], $user['displaygroup']);
|
$user['profilelink'] = get_profile_link($user['uid']);
// For the postbit templates
| $user['profilelink'] = get_profile_link($user['uid']);
// For the postbit templates
|
Zeile 144 | Zeile 241 |
---|
if($user['lastactive'] > $timecut && ($user['invisible'] == 0 || $mybb->usergroup['canviewwolinvis'] == 1) && $user['lastvisit'] != $user['lastactive']) { $status = "online";
|
if($user['lastactive'] > $timecut && ($user['invisible'] == 0 || $mybb->usergroup['canviewwolinvis'] == 1) && $user['lastvisit'] != $user['lastactive']) { $status = "online";
|
| } elseif($user['away'] == 1 && $mybb->settings['allowaway'] != 0) { $status = "away";
|
} else {
| } else {
|
Zeile 171 | Zeile 272 |
---|
$plugins->run_hooks('showteam_user');
// If the current group is a moderator group
|
$plugins->run_hooks('showteam_user');
// If the current group is a moderator group
|
if($usergroup['gid'] == 6 && !empty($user['forumlist']))
| if(($usergroup['gid'] == 0 && !empty($user['leaded'])) || ($usergroup['gid'] == 6 && !empty($user['forumlist'])))
|
{
|
{
|
$forumslist = $user['forumlist'];
| $scopelist = $usergroup['gid'] == 0 ? $user['leaded'] : $user['forumlist'];
|
eval("\$modrows .= \"".$templates->get("showteam_moderators_mod")."\";"); } else
| eval("\$modrows .= \"".$templates->get("showteam_moderators_mod")."\";"); } else
|
Zeile 182 | Zeile 283 |
---|
} }
|
} }
|
if($modrows && $usergroup['gid'] == 6)
| if($modrows && in_array($usergroup['gid'], array(0,6)))
|
{
|
{
|
| $modscope = $usergroup['gid'] == 6 ? $lang->mod_forums : $lang->mod_groups;
|
eval("\$grouplist .= \"".$templates->get("showteam_moderators")."\";"); }
| eval("\$grouplist .= \"".$templates->get("showteam_moderators")."\";"); }
|