⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usergroups.inc.php

📁 Discuz功能源码(开源)
💻 PHP
📖 第 1 页 / 共 3 页
字号:
					'creditslower' => isset($lowerlimit[$i + 1]) ? $lowerlimit[$i + 1] : 999999999
					);
			}

			foreach($groupnew as $id => $group) {
				$creditshighernew = $rangearray[$id]['creditshigher'];
				$creditslowernew = $rangearray[$id]['creditslower'];
				if($creditshighernew == $creditslowernew) {
					cpmsg('usergroups_update_credits_duplicate', '', 'error');
				}
				if(in_array($id, $groupnewkeys)) {
					$db->query("UPDATE {$tablepre}usergroups SET grouptitle='$group[grouptitle]', creditshigher='$creditshighernew', creditslower='$creditslowernew', stars='$group[stars]', color='$group[color]', groupavatar='$group[groupavatar]' WHERE groupid='$id' AND type='member'");
				} elseif($group['grouptitle'] && $group['creditshigher'] != '') {
					$sqladd = !empty($group['projectid']) && !empty($extadd[$group['projectid']]) ? $extadd[$group['projectid']] : '';
					$db->query("INSERT INTO {$tablepre}usergroups SET grouptitle='$group[grouptitle]', creditshigher='$creditshighernew', creditslower='$creditslowernew', stars='$group[stars]' $sqladd");
				}
			}

			if($ids = implodeids($delete)) {
				$db->query("DELETE FROM {$tablepre}usergroups WHERE groupid IN ($ids) AND type='member'");
				deletegroupcache($delete);
			}

		} elseif($type == 'special') {
			if(is_array($grouptitlenewadd)) {
				foreach($grouptitlenewadd as $k => $v) {
					if($v) {
						$sqladd = !empty($groupnewaddproject[$k]) && !empty($extadd[$groupnewaddproject[$k]]) ? $extadd[$groupnewaddproject[$k]] : '';
						$db->query("INSERT INTO {$tablepre}usergroups SET type='special', grouptitle='$grouptitlenewadd[$k]', color='$colornewadd[$k]', stars='$starsnewadd[$k]' $sqladd");
					}
				}
			}

			if(is_array($group_title)) {
				foreach($group_title as $id => $title) {
					if(!$delete[$id]) {
						$db->query("UPDATE {$tablepre}usergroups SET grouptitle='$group_title[$id]', stars='$group_stars[$id]', color='$group_color[$id]', groupavatar='$group_avatar[$id]' WHERE groupid='$id'");
					}
				}
			}

			if($ids = implodeids($delete)) {
				$db->query("DELETE FROM {$tablepre}usergroups WHERE groupid IN ($ids) AND type='special'");
				$db->query("DELETE FROM {$tablepre}admingroups WHERE admingid IN ($ids)");
				$db->query("DELETE FROM {$tablepre}adminactions WHERE admingid IN ($ids)");
				$newgroupid = $db->result_first("SELECT groupid FROM {$tablepre}usergroups WHERE type='member' AND creditslower>'0' ORDER BY creditslower LIMIT 1");
				$db->query("UPDATE {$tablepre}members SET groupid='$newgroupid', adminid='0' WHERE groupid IN ($ids)", 'UNBUFFERED');
				deletegroupcache($delete);
			}

		} elseif($type == 'system') {
			if(is_array($group_title)) {
				foreach($group_title as $id => $title) {
					$db->query("UPDATE {$tablepre}usergroups SET grouptitle='$group_title[$id]', stars='$group_stars[$id]', color='$group_color[$id]', groupavatar='$group_avatar[$id]' WHERE groupid='$id'");
				}
			}
		}

		updatecache('usergroups');
		cpmsg('usergroups_update_succeed', $BASESCRIPT.'?action=usergroups&type='.$type, 'succeed');
	}

} elseif($operation == 'viewsgroup') {

	$num = $db->result_first("SELECT COUNT(*) FROM {$tablepre}members WHERE groupid='$sgroupid'");
	$query = $db->query("SELECT uid, username FROM {$tablepre}members WHERE groupid='$sgroupid' LIMIT 80");
	$sgroups = '';
	while($member = $db->fetch_array($query)) {
		$sgroups .= '<li><a href="space.php?uid='.$member['uid'].'" target="_blank">'.$member['username'].'</a></li>';
	}
	ajaxshowheader();
	echo '<ul class="userlist"><li class="unum">'.$lang['usernum'].$num.($num > 80 ? '&nbsp;<a href="'.$BASESCRIPT.'?action=members&submit=yes&usergroupid[]='.$sgroupid.'">'.$lang['more'].'&raquo;</a>' : '').'</li>'.$sgroups.'</ul>';
	ajaxshowfooter();
	exit;

} elseif($operation == 'edit') {

	$return = isset($return) && $return ? 'admin' : '';

	if(empty($id)) {
		$grouplist = "<select name=\"id\" style=\"width: 150px\">\n";
		$conditions = !empty($anchor) && $anchor == 'system' ? "WHERE type='special'" : '';
		$query = $db->query("SELECT groupid, grouptitle FROM {$tablepre}usergroups $conditions");
		while($group = $db->fetch_array($query)) {
			$grouplist .= "<option value=\"$group[groupid]\">$group[grouptitle]</option>\n";
		}
		$grouplist .= '</select>';
		cpmsg('usergroups_edit_nonexistence', $BASESCRIPT.'?action=usergroups&operation=edit'.(!empty($highlight) ? "&highlight=$highlight" : '').(!empty($highlight) ? "&anchor=$anchor" : ''), 'form', $grouplist);
	}

	$group = $db->fetch_first("SELECT * FROM {$tablepre}usergroups WHERE groupid='$id'");

	if($group['radminid'] > 0 && !isfounder()) {
		if(!checkacpaction('admingroups', '', false)) {
			cpmsg('usergroups_edit_fail', '', 'error');
		}
	}

	if(!submitcheck('detailsubmit') && !submitcheck('saveconfigsubmit')) {

		$projectselect = "<select name=\"projectid\" onchange=\"window.location='$BASESCRIPT?action=usergroups&operation=edit&id=$id&projectid='+this.options[this.options.selectedIndex].value\"><option value=\"0\" selected=\"selected\">".$lang['none']."</option>";
		$query = $db->query("SELECT id, name FROM {$tablepre}projects WHERE type='group'");
		while($project = $db->fetch_array($query)) {
			$projectselect .= "<option value=\"$project[id]\" ".($project['id'] == $projectid ? 'selected="selected"' : NULL).">$project[name]</option>";
		}
		$projectselect .= '</select>';

		if(!empty($projectid)) {
			$group = @array_merge($group, unserialize($db->result_first("SELECT value FROM {$tablepre}projects WHERE id='$projectid'")));
		}

		$group['exempt'] = strrev(sprintf('%0'.strlen($group['exempt']).'b', $group['exempt']));

		$anchor = in_array($anchor, array('basic', 'system', 'special', 'post', 'attach', 'magic', 'invite', 'credit')) ? $anchor : 'basic';
		showsubmenuanchors(lang('usergroups_edit').' - '.$group['grouptitle'], array(
			array('usergroups_edit_basic', 'basic', $anchor == 'basic'),
			$group['type'] == 'special' && $group['radminid'] < 1 ? array('usergroups_edit_system', 'system', $anchor == 'system') : array(),
			array('usergroups_edit_special', 'special', $anchor == 'special'),
			array('usergroups_edit_post', 'post', $anchor == 'post'),
			array('usergroups_edit_attach', 'attach', $anchor == 'attach'),
			array('usergroups_edit_magic', 'magic', $anchor == 'magic'),
			array('usergroups_edit_invite', 'invite', $anchor == 'invite'),
			array('usergroups_edit_credit', 'credit', $anchor == 'credit')
		));

		if($group['type'] == 'special' && $group['radminid'] < 1) {
			showtips('usergroups_edit_system_tips', 'system_tips', $anchor == 'system');
		}

		showtips('usergroups_edit_magic_tips', 'magic_tips', $anchor == 'magic');
		showtips('usergroups_edit_invite_tips', 'invite_tips', $anchor == 'invite');
		showformheader("usergroups&operation=edit&id=$id&return=$return");
		showtableheader();

		if($group['type'] == 'special' && $group['radminid'] < 1) {
			showtagheader('tbody', 'system', $anchor == 'system');
			if($group['system'] == 'private') {
				$system = array('public' => 0, 'dailyprice' => 0, 'minspan' => 0);
			} else {
				$system = array('public' => 1, 'dailyprice' => 0, 'minspan' => 0);
				list($system['dailyprice'], $system['minspan']) = explode("\t", $group['system']);
			}
			showsetting('usergroups_edit_system_public', 'system_publicnew', $system['public'], 'radio');
			showsetting('usergroups_edit_system_dailyprice', 'system_dailypricenew', $system['dailyprice'], 'text');
			showsetting('usergroups_edit_system_minspan', 'system_minspannew', $system['minspan'], 'text');
			showtagfooter('tbody');
		}

		showtagheader('tbody', 'basic', $anchor == 'basic');
		showsetting('usergroups_edit_basic_title', 'grouptitlenew', $group['grouptitle'], 'text');
		showsetting('usergroups_edit_basic_scheme', '', '', $projectselect);

		if(in_array($group['groupid'], array(1, 7))) {
			echo '<input type="hidden" name="allowvisitnew" value="1">';
		} else {
			showsetting('usergroups_edit_basic_visit', 'allowvisitnew', $group['allowvisit'], 'radio');
		}

		showsetting('usergroups_edit_basic_read_access', 'readaccessnew', $group['readaccess'], 'text');
		showsetting('usergroups_edit_basic_view_profile', 'allowviewpronew', $group['allowviewpro'], 'radio');
		showsetting('usergroups_edit_basic_view_stats', 'allowviewstatsnew', $group['allowviewstats'], 'radio');
		showsetting('usergroups_edit_basic_invisible', 'allowinvisiblenew', $group['allowinvisible'], 'radio');
		showsetting('usergroups_edit_basic_multigroups', 'allowmultigroupsnew', $group['allowmultigroups'], 'radio');
		showsetting('usergroups_edit_basic_allowtransfer', 'allowtransfernew', $group['allowtransfer'], 'radio');
		showsetting('usergroups_edit_basic_allowsendpm', 'allowsendpmnew', $group['allowsendpm'], 'radio');
		showsetting('usergroups_edit_basic_search', array('allowsearchnew', array(
			array(0, $lang['usergroups_edit_basic_search_disable']),
			array(1, $lang['usergroups_edit_basic_search_thread']),
			array(2, $lang['usergroups_edit_basic_search_post'])
		)), $group['allowsearch'], 'mradio');
		showsetting('usergroups_edit_basic_reasonpm', array('reasonpmnew', array(
			array(0, $lang['usergroups_edit_basic_reasonpm_none']),
			array(1, $lang['usergroups_edit_basic_reasonpm_reason']),
			array(2, $lang['usergroups_edit_basic_reasonpm_pm']),
			array(3, $lang['usergroups_edit_basic_reasonpm_both'])
		)), $group['reasonpm'], 'mradio');
		showsetting('usergroups_edit_basic_nickname', 'allownicknamenew', $group['allownickname'], 'radio');
		showsetting('usergroups_edit_basic_cstatus', 'allowcstatusnew', $group['allowcstatus'], 'radio');
		showsetting('usergroups_edit_basic_disable_periodctrl', 'disableperiodctrlnew', $group['disableperiodctrl'], 'radio');
		showsetting('usergroups_edit_basic_hour_posts', 'maxpostsperhournew', $group['maxpostsperhour'], 'text');
		showtagfooter('tbody');

		showtagheader('tbody', 'special', $anchor == 'special');
		showsetting('usergroups_edit_special_activity', 'allowpostactivitynew', $group['allowpostactivity'], 'radio');
		showsetting('usergroups_edit_special_poll', 'allowpostpollnew', $group['allowpostpoll'], 'radio');
		showsetting('usergroups_edit_special_vote', 'allowvotenew', $group['allowvote'], 'radio');
		showsetting('usergroups_edit_special_reward', 'allowpostrewardnew', $group['allowpostreward'], 'radio');
		showsetting('usergroups_edit_special_reward_min', 'minrewardpricenew', $group['minrewardprice'], "text");
		showsetting('usergroups_edit_special_reward_max', 'maxrewardpricenew', $group['maxrewardprice'], "text");
		showsetting('usergroups_edit_special_trade', 'allowposttradenew', $group['allowposttrade'], 'radio');
		showsetting('usergroups_edit_special_trade_min', 'mintradepricenew', $group['mintradeprice'], "text");
		showsetting('usergroups_edit_special_trade_max', 'maxtradepricenew', $group['maxtradeprice'], "text");
		showsetting('usergroups_edit_special_trade_stick', 'tradesticknew', $group['tradestick'], "text");
		showsetting('usergroups_edit_special_debate', 'allowpostdebatenew', $group['allowpostdebate'], "radio");
		$videoopen && showsetting('usergroups_edit_special_video', 'allowpostvideonew', $group['allowpostvideo'], "radio");
		showtagfooter('tbody');

		showtagheader('tbody', 'post', $anchor == 'post');
		showsetting('usergroups_edit_post_new', 'allowpostnew', $group['allowpost'], 'radio');
		showsetting('usergroups_edit_post_reply', 'allowreplynew', $group['allowreply'], 'radio');
		showsetting('usergroups_edit_post_direct', array('allowdirectpostnew', array(
			array(0, $lang['usergroups_edit_post_direct_none']),
			array(1, $lang['usergroups_edit_post_direct_reply']),
			array(2, $lang['usergroups_edit_post_direct_thread']),
			array(3, $lang['usergroups_edit_post_direct_all'])
		)), $group['allowdirectpost'], 'mradio');
		showsetting('usergroups_edit_post_anonymous', 'allowanonymousnew', $group['allowanonymous'], 'radio');
		showsetting('usergroups_edit_post_set_read_perm', 'allowsetreadpermnew', $group['allowsetreadperm'], 'radio');
		showsetting('usergroups_edit_post_maxprice', 'maxpricenew', $group['maxprice'], 'text');
		showsetting('usergroups_edit_post_hide_code', 'allowhidecodenew', $group['allowhidecode'], 'radio');
		showsetting('usergroups_edit_post_html', 'allowhtmlnew', $group['allowhtml'], 'radio');
		showsetting('usergroups_edit_post_custom_bbcode', 'allowcusbbcodenew', $group['allowcusbbcode'], 'radio');
		showsetting('usergroups_edit_post_bio_bbcode', 'allowbiobbcodenew', $group['allowbiobbcode'], 'radio');
		showsetting('usergroups_edit_post_bio_img_code', 'allowbioimgcodenew', $group['allowbioimgcode'], 'radio');
		showsetting('usergroups_edit_post_max_bio_size', 'maxbiosizenew', $group['maxbiosize'], 'text');
		showsetting('usergroups_edit_post_sig_bbcode', 'allowsigbbcodenew', $group['allowsigbbcode'], 'radio');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -