• [织梦吧]唯一域名:www.dedecms8.com,织梦DedeCMS学习平台.

当前位置: > CMS教程 > discuz教程 >

Discuz! X2用户组到期后不自动切换解决方案

来源: www.dedecms8.com 编辑:织梦吧 时间:2012-04-26点击:

 Discuz! X2用户组到期后不自动切换解决方案。

方法一:可以直接下载附件替换文件:
source/include/spacecp/spacecp_usergroup.php,附件下载:
spacecp_usergroup.rar

 方法二:修改文件:source/include/spacecp/spacecp_usergroup.php

找到代码"$groupexpirynew = $groupterms['ext'][$groupid];",替换为:

 $groupexpirynew = $groupterms['ext'][$extgroupidsnew]; 

然后找到代码

                         $expirylist[$group['groupid']]['grouptitle'] = in_array($group['groupid'], $expgrouparray) ? '<s>'.$group['grouptitle'].'</s>' : $group['grouptitle'];

                }

        }

在它的下面加上如下代码:

        if($expgrouparray) {


                $extgroupidarray = array();

                foreach(explode("\t", $_G['forum_extgroupids']) as $extgroupid) {

                        if(($extgroupid = intval($extgroupid)) && !in_array($extgroupid, $expgrouparray)) {

                                $extgroupidarray[] = $extgroupid;

                        }

                }


                $groupidnew = $_G['groupid'];

                $adminidnew = $_G['adminid'];

                foreach($expgrouparray as $expgroupid) {

                        if($expgroupid == $_G['groupid']) {

                                if(!empty($groupterms['main']['groupid'])) {

                                        $groupidnew = $groupterms['main']['groupid'];

                                        $adminidnew = $groupterms['main']['adminid'];

                                } else {

                                        $groupidnew = DB::result_first("SELECT groupid FROM ".DB::table('common_usergroup')." WHERE type='member' AND '".$_G['member']['credits']."'>=creditshigher AND '$credits'<creditslower LIMIT 1");

                                        if(in_array($_G['adminid'], array(1, 2, 3))) {

                                                $query = DB::query("SELECT groupid FROM ".DB::table('common_usergroup')." WHERE groupid IN (".dimplode($extgroupidarray).") AND radminid='$_G[adminid]' LIMIT 1");

                                                $adminidnew = (DB::num_rows($query)) ? $_G['adminid'] : 0;

                                        } else {

                                                $adminidnew = 0;

                                        }

                                }

                                unset($groupterms['main']);

                        }

                        unset($groupterms['ext'][$expgroupid]);

                }


                require_once libfile('function/forum');

                $groupexpirynew = groupexpiry($groupterms);

                $extgroupidsnew = implode("\t", $extgroupidarray);

                $grouptermsnew = addslashes(serialize($groupterms));


                DB::query("UPDATE ".DB::table('common_member')." SET adminid='$adminidnew', groupid='$groupidnew', extgroupids='$extgroupidsnew', groupexpiry='$groupexpirynew' WHERE uid='$_G[uid]'");

                DB::query("UPDATE ".DB::table('common_member_field_forum')." SET groupterms='$grouptermsnew' WHERE uid='$_G[uid]'");


        }

About D8

  • ©2014 织梦吧(d8) DedeCMS学习交流平台
  • 唯一网址 www.DedeCMS8.com 网站地图
  • 联系我们 1170734538@qq.com ,  QQ