Try this:
PHP Code:
// ###################### Start is member of #######################
// returns true/false if a $userinfo belongs to $usergroupid
// $userinfo must contain (userid, usergroupid, membergroupids)
function is_member_of($userinfo, $usergroupid)
{
static $user_memberships;
if (!is_array($user_memberships["$userinfo[userid]"])) {
$user_memberships["$userinfo[userid]"] = fetch_membergroupids_array($userinfo);
}
if (is_array($usergroupid)) {
for ($i = 0; $i < sizeof($usergroupid); $i++) {
if ($userinfo['usergroupid'] == $usergroupid[$i]) {
return true;
} else if (in_array($usergroupid[$i], $user_memberships["$userinfo[userid]"])) {
return true;
}
}
} else {
if ($userinfo['usergroupid'] == $usergroupid) {
return true;
} else {
return in_array($usergroupid, $user_memberships["$userinfo[userid]"]);
}
}
}