<?php /** * TorrentPier – Bull-powered BitTorrent tracker engine * * @copyright Copyright (c) 2005-2024 TorrentPier (https://torrentpier.com) * @link https://github.com/torrentpier/torrentpier for the canonical source repository * @license https://github.com/torrentpier/torrentpier/blob/master/LICENSE MIT License */ if (!defined('BB_ROOT')) { die(basename(__FILE__)); } $data = [ 'name_users' => [], // only by personal permissions 'name_groups' => [], // only visible to all users 'mod_users' => [], // only by personal permissions 'mod_groups' => [], // only visible to all users 'moderators' => [], // all moderators 'admins' => [] // all admins ]; // name_users // mod_users $sql = " SELECT aa.forum_id, u.user_id, u.username FROM " . BB_AUTH_ACCESS . " aa, " . BB_USER_GROUP . " ug, " . BB_GROUPS . " g, " . BB_USERS . " u WHERE aa.forum_perm & " . BF_AUTH_MOD . " AND ug.group_id = aa.group_id AND ug.user_pending = 0 AND g.group_id = ug.group_id AND g.group_single_user = 1 AND u.user_id = ug.user_id GROUP BY aa.forum_id, u.user_id ORDER BY u.username "; foreach (DB()->fetch_rowset($sql) as $row) { $data['name_users'][$row['user_id']] = $row['username']; $data['mod_users'][$row['forum_id']][] = $row['user_id']; } // name_groups // mod_groups $sql = " SELECT aa.forum_id, g.group_id, g.group_name FROM " . BB_AUTH_ACCESS . " aa, " . BB_GROUPS . " g WHERE aa.forum_perm & " . BF_AUTH_MOD . " AND g.group_id = aa.group_id AND g.group_single_user = 0 AND g.group_type != " . GROUP_HIDDEN . " GROUP BY aa.forum_id, g.group_id ORDER BY g.group_name "; foreach (DB()->fetch_rowset($sql) as $row) { $data['name_groups'][$row['group_id']] = $row['group_name']; $data['mod_groups'][$row['forum_id']][] = $row['group_id']; } // moderators $sql = " SELECT u.user_id, u.username FROM " . BB_AUTH_ACCESS . " aa, " . BB_USER_GROUP . " ug, " . BB_GROUPS . " g, " . BB_USERS . " u WHERE aa.forum_perm & " . BF_AUTH_MOD . " AND ug.group_id = aa.group_id AND ug.user_pending = 0 AND g.group_id = ug.group_id AND u.user_id = ug.user_id GROUP BY u.user_id ORDER BY u.username "; foreach (DB()->fetch_rowset($sql) as $row) { $data['moderators'][$row['user_id']] = $row['username']; } // admins $sql = " SELECT user_id, username FROM " . BB_USERS . " WHERE user_level = " . ADMIN . " ORDER BY username "; foreach (DB()->fetch_rowset($sql) as $row) { $data['admins'][$row['user_id']] = $row['username']; } $this->store('moderators', $data);