等级提升通知
<BLOCKQUOTE>功能说明:<BR>等级提升时,会由系统自动发出升级通知<BR>并会说名拥有的权限,下一个等级所许欠的积分</BLOCKQUOTE>打开include/post.func.php<BR>查找代码:<DIV class=quote>
<H5>引用:</H5>
<BLOCKQUOTE><BR>?></BLOCKQUOTE></DIV>在上面加入:
<DIV class=quote>
<H5>引用:</H5>
<BLOCKQUOTE>function updatemember($operator, $uid, $credits) {<BR>global $db, $tablepre, $discuz_uid, $adminid, $groupid, $credit, $timestamp;<BR>$addcredit = $addpost = $newcredit = $newpost =0; <BR>if(!$uid ) return;<BR>if($uid == $discuz_uid) { <BR>$oldgroup=$db->result($db->query(\"SELECT groupid FROM {$tablepre}members WHERE uid=\'$uid\'\"),0 ); // <---- add for【等级提升通知】by BTaoto<BR>$groupidadd = NULL;<BR>$newcredit = $credit + intval(\"$operator$credits\");<BR>if($adminid == 0 && $credits <> 0 && !($newcredit % 1)) {<BR>$query = $db->query(\"SELECT groupid FROM {$tablepre}usergroups WHERE type=\'member\' AND \'$newcredit\'>=creditshigher AND \'$newcredit\'<CREDITSLOWER\");<BR>$groupidadd = \", groupid=\'\".$db->result($query, 0).\"\'\"; <BR>}<BR>$db->query(\"UPDATE {$tablepre}members SET postnum=postnum$operator(1), credit=$newcredit, lastpost=\'$timestamp\' $groupidadd WHERE uid=\'$uid\'\");<BR>$newgroup=substr($groupidadd,11,-1); // <---- add for【等级提升通知】by BTaoto<BR>if ($newgroup > $oldgroup) levelup($newgroup,$uid,$newcredit); // <---- add for【等级提升通知】by BTaoto<BR>} else {<BR>$member = array();<BR>foreach(explode(\',\', $uid) as $id) {<BR>$member++;<BR>}<BR>foreach($member as $uid => $posts) {<BR>if($credits) {<BR>$oldgroup=$db->result($db->query(\"SELECT groupid FROM {$tablepre}members WHERE uid=\'$uid\'\"),0 ); // <---- add for【等级提升通知】by BTaoto<BR>$query = $db->query(\"SELECT m.adminid, u.groupid FROM {$tablepre}members m<BR>LEFT JOIN {$tablepre}usergroups u ON (u.creditshigher<>\'0\' || u.creditslower<>\'0\') AND m.credit$operator$credits*$posts>=u.creditshigher AND m.credit$operator$credits*$posts<U.CREDITSLOWER<BR>WHERE uid=\'$uid\'\");<BR><BR>if($member2 = $db->fetch_array($query)) {<BR>$groupidadd = $member2[\'adminid\'] == 0 ? \", groupid=\'$member2\'\" : NULL;<BR>$db->query(\"UPDATE {$tablepre}members SET postnum=postnum$operator$posts, credit=credit$operator($credits*$posts) $groupidadd WHERE uid=\'$uid\'\", \'UNBUFFERED\');<BR>$newgroup=substr($groupidadd,11,-1); // <---- add for【等级提升通知】by BTaoto<BR>$newcredit=$db->result($db->query(\"SELECT credit FROM {$tablepre}members WHERE uid=\'$uid\'\"),0 ); // <---- add for【等级提升通知】by BTaoto<BR>if (($newgroup > $oldgroup)) levelup($newgroup,$uid,$newcredit); // <---- add for【等级提升通知】by BTaoto<BR>}<BR>} else {<BR>$db->query(\"UPDATE {$tablepre}members SET postnum=postnum$operator$posts WHERE uid=\'$uid\'\", \'UNBUFFERED\');<BR>}<BR>}<BR>}<BR>}<BR><BR>// 插件【等级提升通知】by BTaoto 开始<BR>function levelup($group,$uid,$credit) {<BR>global $db,$timestamp;<BR>include DISCUZ_ROOT.\'forumdata/cache/usergroup_\'.$group.\'.php\';<BR>include language(\'admincp\');<BR>$pm = \"恭喜您!你的等级已提升为【\".$grouptitle.\"】,\\n从现在开始,您将获得以下权限:\\n\";<BR>$pm .=\"================================================= \\n\";<BR>if ($allowview) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowviewstats) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowinvisible) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowsearch==1) $pm .= \" ◎ \".$lang.\' \'.$lang.\" \\n\";<BR>if ($allowsearch==2) $pm .= \" ◎ \".$lang.\' \'.$lang.\" \\n\";<BR>if ($allowavatar==1) $pm .= \" ◎ \".$lang.\' \'.$lang.\" \\n\";<BR>if ($allowavatar==2) $pm .= \" ◎ \".$lang.\' \'.$lang.\" \\n\";<BR>if ($allowavatar==3) $pm .= \" ◎ \".$lang.\' \'.$lang.\" \\n\";<BR>if ($allowcstatus) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowkarma) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($maxkarmarate) $pm .= \" ◎ \".$lang.\' \'.$maxkarmarate.\"\\n\";<BR>if ($maxrateperday) $pm .= \" ◎ \".$lang.\' \'.$maxrateperday.\"\\n\";<BR>if ($maxpmnum) $pm .= \" ◎ \".$lang.\' \'.$maxpmnum.\"\\n\";<BR>if ($allowpost) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowpostpoll) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowsetviewperm) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowhidecode) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowvote) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowsigbbcode) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowsigimgcode) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($maxsigsize) $pm .= \" ◎ \".$lang.\' \'.$maxsigsize.\"\\n\";<BR>if ($allowgetattach) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowpostattach) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($allowsetattachperm) $pm .= \" ◎ \".substr($lang,0,-1).\"\\n\";<BR>if ($maxattachsize) $pm .= \" ◎ \".$lang.\' \'.$maxattachsize.\"\\n\";<BR>if ($attachextensions) $pm .= \" ◎ \".$lang.\' \'.$attachextensions.\"\\n\";<BR>$pm .=\"================================================= \\n\";<BR>$nextlv=$db->result($db->query(\"SELECT creditslower FROM {$tablepre}usergroups WHERE groupid=\'$group\'\"),0)-$credit;<BR>$pm .=\"升级到再下一级需要\".$nextlv.\"积分,请再接再励!\";<BR><BR>$db->query(\"INSERT INTO {$tablepre}pms (msgtoid, msgfrom, msgfromid, folder, new, subject, dateline, message) VALUES(\'$uid\', \'System Message\', \'0\', \'inbox\', \'1\', \'★等级提升通知★\', \'$timestamp\',\'\".addslashes($pm).\"\')\");<BR>$db->query(\"UPDATE {$tablepre}members SET newpm=\'1\' WHERE uid=\'$uid\'\");<BR>}<BR>// 插件【等级提升通知】by BTaoto 完结</BLOCKQUOTE></DIV>后台更新缓存<BR>完成!
页:
[1]