// 根据积分来调整用户组
function user_update_group($uid)
{
global $conf, $grouplist;
if (empty($uid)) return FALSE;
$user = user_read_cache($uid);
if ($user['gid'] < 100) return FALSE;
// hook model_user_update_group_start.php
// 遍历 credits 范围,调整用户组
foreach ($grouplist as $group) {
if ($group['gid'] < 100) continue;
// 根据发文章和评论 需要时 hook
//$n = $user['articles'] + $user['comments'];
// hook model_user_update_group_policy_start.php
/*if ($n > $group['creditsfrom'] && $n < $group['creditsto']) {
if ($user['gid'] != $group['gid']) {
user_update($uid, array('gid' => $group['gid']));
return TRUE;
}
}*/
}
// hook model_user_update_group_end.php
return FALSE;
}
传入用户uid,引入全局配置变量$conf和用户组列表变量$grouplist,如果uid为空则返回false,否则读取用户缓存信息,如果该用户组<100则返回false