Delphiprogrammi
03-11-2006, 10:52 AM
hi people,
i have a custom usergroup called "permmaned_banned" with id 9.Now when i add a user to it (just a test username) and i goto "view banned users" vbulletin tells me "no users are banned on $vbulletin->options['bbtitle']"
i know vbulletin stores custom usergroups in a filed called "membergroupids" in the user table and i think no i know for sure i can get this with the MySQL function FIND_IN_SET().But since this function is not used verry much and not verry well documented i ask here
$querygroups = array();
foreach ($vbulletin->usergroupcache AS $usergroupid => $usergroup)
{
if ($usergroup['genericoptions'] & $vbulletin->bf_ugp_genericoptions['isbannedgroup'])
{
$querygroups["$usergroupid"] = $usergroup['title'];
}
}
if (empty($querygroups))
{
print_stop_message('no_groups_defined_as_banned');
}
//################################################## #
// now query users from the specified groups
//################################################## #
$getusers = $db->query_read("
SELECT user.userid, user.username, user.usergroupid AS busergroupid,
userban.usergroupid AS ousergroupid, userban.reason AS reason,
IF(userban.displaygroupid = 0, userban.usergroupid, userban.displaygroupid) AS odisplaygroupid,
bandate, liftdate,
adminuser.userid AS adminid, adminuser.username AS adminname
FROM " . TABLE_PREFIX . "user AS user
LEFT JOIN " . TABLE_PREFIX . "userban AS userban ON(userban.userid = user.userid)
LEFT JOIN " . TABLE_PREFIX . "user AS adminuser ON(adminuser.userid = userban.adminid)
WHERE user.usergroupid IN(" . implode(',', array_keys($querygroups)) . ")
ORDER BY userban.bandate DESC, user.username
");
what would be the SQL to run to include the customgroups ? i have no idea howto use FIND_IN_SET() and that function could solve the issue
i have a custom usergroup called "permmaned_banned" with id 9.Now when i add a user to it (just a test username) and i goto "view banned users" vbulletin tells me "no users are banned on $vbulletin->options['bbtitle']"
i know vbulletin stores custom usergroups in a filed called "membergroupids" in the user table and i think no i know for sure i can get this with the MySQL function FIND_IN_SET().But since this function is not used verry much and not verry well documented i ask here
$querygroups = array();
foreach ($vbulletin->usergroupcache AS $usergroupid => $usergroup)
{
if ($usergroup['genericoptions'] & $vbulletin->bf_ugp_genericoptions['isbannedgroup'])
{
$querygroups["$usergroupid"] = $usergroup['title'];
}
}
if (empty($querygroups))
{
print_stop_message('no_groups_defined_as_banned');
}
//################################################## #
// now query users from the specified groups
//################################################## #
$getusers = $db->query_read("
SELECT user.userid, user.username, user.usergroupid AS busergroupid,
userban.usergroupid AS ousergroupid, userban.reason AS reason,
IF(userban.displaygroupid = 0, userban.usergroupid, userban.displaygroupid) AS odisplaygroupid,
bandate, liftdate,
adminuser.userid AS adminid, adminuser.username AS adminname
FROM " . TABLE_PREFIX . "user AS user
LEFT JOIN " . TABLE_PREFIX . "userban AS userban ON(userban.userid = user.userid)
LEFT JOIN " . TABLE_PREFIX . "user AS adminuser ON(adminuser.userid = userban.adminid)
WHERE user.usergroupid IN(" . implode(',', array_keys($querygroups)) . ")
ORDER BY userban.bandate DESC, user.username
");
what would be the SQL to run to include the customgroups ? i have no idea howto use FIND_IN_SET() and that function could solve the issue