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

📄 groups.inc.php

📁 创建虚拟磁盘。用户可以创建磁盘
💻 PHP
字号:
<?php 
##
#	Project: PHPDisk
#	This is NOT a freeware, use is subject to license terms.
#
#	Site: http://www.phpdisk.com
#
#	$Id: groups.inc.php 232 2009-03-08 04:54:57Z along $
#
#	Copyright (C) 2008-2009 PHPDisk Team. All Rights Reserved.
#
##

if(!defined('IN_PHPDISK') || !defined('IN_ADMINCP')) {
	exit('[PHPDisk] Access Denied');
}
phpdisk_admin();
define('SCRIPT_NAME',$item);

require_once lang('adm_'.SCRIPT_NAME);

$lang = array_merge($pub_lang,$lang);

switch($action){
	case 'group_create':
		if($task =='group_create'){
			if($p_formhash != formhash()){
				exit($lang['system_error']);
			}
			$group_name = trim(gpc('group_name','P',''));
			
			if(checklength($group_name,2,100)){
				$error = true;
				$sysmsg[] = $lang['group_name_error'];
			}
			$rs = $db->fetch_one_array("select count(*) as total from pd_groups where group_name='".$db->escape($group_name)."'");
			if($rs['total'] >0){
				$error = true;
				$sysmsg[] = $lang['group_name_exists'];
			}
			unset($rs);
			if(!$error){
				$rs = $db->fetch_one_array("select gid from pd_groups order by gid desc limit 1");
				$next_gid = $rs['gid'] ? (int)$rs['gid']+1 : 5;
				$ins = array(
					'gid' => $next_gid,
					'group_type' => 0,
					'group_name' => $db->escape($group_name),
				);
				$db->query("insert into pd_groups set ".$db->sql_array($ins).";");
				redirect(urr("admincp","item=groups&action=index"),'',0);
				
			}else{
				redirect("javascript:history.back();",$sysmsg);
			}
		}else{
			require_once template(SCRIPT_NAME,ADMIN_TPL_NAME);
		}
	break;
	
	case 'group_setting':
		$gid = (int)gpc('gid','GP',0);
		if($task =='group_setting'){
			if($p_formhash != formhash()){
				exit($lang['system_error']);
			}
			$max_flow_down = trim(gpc('max_flow_down','P',''));
			$max_flow_view = trim(gpc('max_flow_view','P',''));
			$max_storage = trim(gpc('max_storage','P',''));
			$max_filesize = trim(gpc('max_filesize','P',''));
			$max_disks = (int)gpc('max_disks','P',0);
			$max_folders = (int)gpc('max_folders','P',0);
			$max_files = (int)gpc('max_files','P',0);
			$down_trans_rate = trim(gpc('down_trans_rate','P',''));
			$view_trans_rate = trim(gpc('view_trans_rate','P',''));
			
			$ins = array(
				'max_flow_down' => $max_flow_down,
				'max_flow_view' => $max_flow_view,
				'max_storage' => $max_storage,
				'max_filesize' => $max_filesize,
				'max_disks' => $max_disks,
				'max_folders' => $max_folders,
				'max_files' => $max_files,
				'down_trans_rate' => $down_trans_rate,
				'view_trans_rate' => $view_trans_rate,
			);
			$db->query("update pd_groups set ".$db->sql_array($ins)." where gid='$gid';");
						write_cache('groups');
			
			$sysmsg[] = $lang['group_setting_success'];
			redirect(urr("admincp","item=groups&action=group_setting&gid=$gid"),$sysmsg);
		}else{
			$group_set = $db->fetch_one_array("select * from pd_groups where gid='$gid'");
			
			require_once template(SCRIPT_NAME,ADMIN_TPL_NAME);
		}
	break;
	
	case 'group_modify':
		$gid = (int)gpc('gid','GP',0);
		if($task =='group_modify'){
			if($p_formhash != formhash()){
				exit($lang['system_error']);
			}
			$group_name = trim(gpc('group_name','P',''));

			if(checklength($group_name,2,100)){
				$error = true;
				$sysmsg[] = $lang['group_name_error'];
			}
			$rs = $db->fetch_one_array("select count(*) as total from pd_groups where group_name='".$db->escape($group_name)."'");
			if($rs['total'] >0){
				$error = true;
				$sysmsg[] = $lang['group_name_exists'];
			}
			unset($rs);
			
			if(!$error){
				$db->query("update pd_groups set group_name='".$db->escape($group_name)."' where gid='$gid'");
				redirect(urr("admincp","item=groups&action=index"),'',0);
			}else{
				redirect("javascript:history.back();",$sysmsg);
			}

		}else{
			$rs = $db->fetch_one_array("select gid,group_name from pd_groups where gid='$gid' and group_type<>1");
			if($rs){
				$group_name = $rs['group_name'];
			}
			unset($rs);
			require_once template(SCRIPT_NAME,ADMIN_TPL_NAME);
		}
	break;
	
	case 'group_delete':
		$gid = (int)gpc('gid','G',0);
		$rs = $db->fetch_one_array("select count(*) as total from pd_groups where gid='$gid' and group_type<>1");

		if($rs['total'] >0){
						$db->query("update pd_users set gid=4 where gid='$gid'");
			$db->query("delete from pd_groups where gid='$gid' and group_type<>1");
			$sysmsg[] = $lang['group_delete_success'];
		}
		unset($rs);
				write_cache('groups');

		redirect(urr("admincp","item=groups&action=index"),$sysmsg);
	break;
	
	case 'index':
		$q = $db->query("select gid,group_name,group_type from pd_groups order by gid asc");
		$groups = array();
		while($rs = $db->fetch_array($q)){
			$rs2 = $db->fetch_one_array("select count(*) as user_count from pd_users where gid='".$rs['gid']."'");
			$rs['user_count'] = $rs2['user_count'];
			$rs['group_type_txt'] = $rs['group_type'] ? $lang['group_type_inner'] : $lang['group_type_custom'];
			$rs['is_admin'] = ($rs['gid']==1) ? 1 : 0;
			$groups[] = $rs;
		}
		$db->free($q);
		unset($rs);
		require_once template(SCRIPT_NAME,ADMIN_TPL_NAME);
	break;
		
	default:
		redirect(urr("admincp","item=groups&action=index"),'',0);	
}

?>

⌨️ 快捷键说明

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