} $_G['mnid'] = 'mn_group'; if (!$_G['uid']) { showmessage('to_login', null, array(), array('showmsg' => true, 'login' => 1)); } require_once libfile('function/group'); $view = $_GET['view'] && in_array($_GET['view'], array('manager', 'join', 'groupthread', 'mythread')) ? $_GET['view'] : 'groupthread'; $actives = array('manager' => '', 'join' => '', 'groupthread' => '', 'mythread' => ''); $actives[$view] = ' class="a"'; $perpage = 20; $page = intval($_GET['page']) ? intval($_GET['page']) : 1; $start = ($page - 1) * $perpage; if ($view == 'groupthread' || $view == 'mythread') { $typeid = intval($_GET['typeid']); $attentiongroups = $usergroups = array(); $usergroups = update_usergroups($_G['uid']); if ($view == 'groupthread' && empty($typeid) && !empty($usergroups['grouptype'])) { $attentiongroup = $_G['member']['attentiongroup']; if (empty($attentiongroup)) { $attentiongroups = array_slice(array_keys($usergroups['groups']), 0, 1); } else { $attentiongroups = explode(',', $attentiongroup); } $attentionthread = $attentiongroup_icon = array(); $attentiongroupfid = ''; $query = C::t('forum_forum')->fetch_all_info_by_fids($attentiongroups); foreach ($query as $row) { $attentiongroup_icon[$row[fid]] = get_groupimg($row['icon'], 'icon'); } foreach ($attentiongroups as $groupid) { $attentiongroupfid .= $attentiongroupfid ? ',' . $groupid : $groupid;
} else { $muser = getgpc('muid'); $targetlevel = $_G['gp_targetlevel']; if ($muser && is_array($muser)) { foreach ($muser as $muid => $mlevel) { if ($_G['adminid'] != 1 && $_G['forum']['founderuid'] != $_G['uid'] && $groupmanagers[$muid] && $groupmanagers[$muid]['level'] <= $groupuser['level']) { showmessage('group_member_level_admin_noallowed.', $url); } if ($_G['adminid'] == 1 || $muid != $_G['uid'] && ($_G['forum']['founderuid'] == $_G['uid'] || !$groupmanagers[$muid] || $groupmanagers[$muid]['level'] > $groupuser['level'])) { if ($targetlevel != 5) { DB::query("UPDATE " . DB::table('forum_groupuser') . " SET level='{$targetlevel}' WHERE uid='{$muid}' AND fid='{$_G['fid']}'"); } else { if (!$groupmanagers[$muid] || count($groupmanagers) > 1) { DB::query("DELETE FROM " . DB::table('forum_groupuser') . " WHERE uid='{$muid}' AND fid='{$_G['fid']}'"); DB::query("UPDATE " . DB::table('forum_forumfield') . " SET membernum=membernum+'-1' WHERE fid='{$_G['fid']}'"); update_usergroups($muid); } else { showmessage('group_only_one_moderator', $url); } } } } update_groupmoderators($_G['fid']); showmessage('group_setup_succeed', $url . '&page=' . $page); } else { showmessage('group_choose_member', $url); } } } elseif ($_G['gp_op'] == 'threadtype') { if (empty($specialswitch['allowthreadtype'])) { showmessage('group_level_cannot_do');