www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/admina/mconfigs.inc.php

    <?
(!defined('M_COM') || !defined('M_ADMIN')) && exit('No Permission');
aheader();
load_cache('mconfigs,currencys,commus,channels');
load_cache('mtpls',$sid);
cache_merge($channels,'channels',$sid);
include_once M_ROOT."./include/upload.cls.php";
include_once M_ROOT."./include/fields.fun.php";
if($sid) $subsite = $subsites[$sid];
if($action == 'cfsite'){
	!checkapermission($sid ? 123 : 29) && amessage(lang('no_apermission'));
	if(!submitcheck('bmconfigs')){
		a_guide('cfsite');
		tabheader(lang($sid ? 'subsite setting' : 'site setting'),'cfsite',"?entry=mconfigs&action=cfsite$param_suffix",2,1);
		if(!$sid){
			trbasic(lang('hostname'),'mconfigsnew[hostname]',$mconfigs['hostname']);
			trbasic(lang('hosturl'),'mconfigsnew[hosturl]',$mconfigs['hosturl'],'text',lang('aghosturl'));
			trbasic(lang('cmsname'),'mconfigsnew[cmsname]',$mconfigs['cmsname']);
			trbasic(lang('cmsurl'),'mconfigsnew[cmsurl]',$mconfigs['cmsurl'],'text',lang('agcmsurl'));
			trspecial(lang('cmslogo'),'cmslogo',$mconfigs['cmslogo'],'image');
			trbasic(lang('site title'),'mconfigsnew[cmstitle]',$mconfigs['cmstitle'],'btext');
			trbasic(lang('site keyword'),'mconfigsnew[cmskeyword]',$mconfigs['cmskeyword'],'btext');
			trbasic(lang('site description'),'mconfigsnew[cmsdescription]',$mconfigs['cmsdescription'],'textarea');
			trbasic(lang('site icpno'),'mconfigsnew[cms_icpno]',$mconfigs['cms_icpno'],'btext');
			trbasic(lang('bazscert'),'mconfigsnew[bazscert]',$mconfigs['bazscert'],'btext');
			trbasic(lang('copyright message'),'mconfigsnew[copyright]',$mconfigs['copyright'],'textarea');
		}else{
			trbasic(lang('subsite smallsite'),'subsitenew[smallsite]',$subsite['smallsite'],'text',lang('agcmsurl'));
			trspecial(lang('subsite cmslogo'),'cmslogo',$subsite['cmslogo'],'image');
			trbasic(lang('subsite title'),'subsitenew[cmstitle]',$subsite['cmstitle'],'btext');
			trbasic(lang('subsite keyword'),'subsitenew[cmskeyword]',$subsite['cmskeyword'],'btext');
			trbasic(lang('subsite description'),'subsitenew[cmsdescription]',$subsite['cmsdescription'],'textarea');
		}
		tabfooter('bmconfigs');
	}else{
		if(!$sid){
			if(empty($mconfigsnew['hosturl']) || !in_str('http://',$mconfigsnew['hosturl'])){
				amessage(lang('hosturl illegal'),M_REFERER);
			}
			$mconfigsnew['hosturl'] = strtolower($mconfigsnew['hosturl']);
			$mconfigsnew['cmsurl'] = empty($mconfigsnew['cmsurl']) ? '/' : trim(strtolower($mconfigsnew['cmsurl']));
			$mconfigsnew['cmsurl'] .= !ereg("/$",$mconfigsnew['cmsurl']) ? '/' : '';
			$c_upload = new cls_upload;	
			$imageurl = explode('#',upload_s('cmslogo',$mconfigs['cmslogo'],'image'));
			$mconfigsnew['cmslogo'] = $imageurl[0];
			$c_upload->saveuptotal(1);
			unset($c_upload);
			saveconfig('site');
		}else{
			$subsitenew['smallsite'] = strtolower(trim($subsitenew['smallsite']));
			$subsitenew['smallsite'] .= !ereg("/$",$subsitenew['smallsite']) ? '/' : '';
			$subsitenew['smallsite'] = (!eregi("http://",$subsitenew['smallsite']) || eregi($hosturl,$subsitenew['smallsite'])) ? '' : $subsitenew['smallsite'];
			$c_upload = new cls_upload;	
			$imageurl = explode('#',upload_s('cmslogo',$subsite['cmslogo'],'image'));
			$subsitenew['cmslogo'] = $imageurl[0];
			$c_upload->saveuptotal(1);
			unset($c_upload);
			$db->query("UPDATE {$tblprefix}subsites SET 
			smallsite='$subsitenew[smallsite]', 
			cmslogo='$subsitenew[cmslogo]',
			cmstitle='$subsitenew[cmstitle]',
			cmskeyword='$subsitenew[cmskeyword]',
			cmsdescription='$subsitenew[cmsdescription]' 
			WHERE sid='$sid'");
			updatecache('subsites');
		}
		adminlog(lang('website setting'),lang('site message admin'));
		amessage(lang('website setting finish'),M_REFERER);
	}
}
elseif($action == 'cfbasic'){
	!checkapermission(31) && amessage(lang('no_apermission'));
	if($sid && $sid_self) amessage(lang('msite admin item !'));
	if(!submitcheck('bmconfigs')){
		a_guide('cfbasic');
		tabheader(lang('time related'),'cfbasic','?entry=mconfigs&action=cfbasic');
		$tzarr=array(
			'+12'=>'(GMT-12) International Date Line (West)',
			'+11'=>'(GMT-11) Midway Island,Samoa',
			'+10'=>'(GMT-10) Hawaii,Honolulu',
			'+9'=>'(GMT-9) Alaska',
			'+8'=>'(GMT-8) Pacific Standard Time,US,Canada',
			'+7'=>'(GMT-7) British Columbia N.E.,Santa Fe,Mountain Time',
			'+6'=>'(GMT-6) Central America,Chicago,Guatamala,Mexico City',
			'+5'=>'(GMT-5) US,Canada,Bogota,Boston,New York',
			'+4'=>'(GMT-4) Canada,Santiago,Atlantic Standard Time',
			'+3'=>'(GMT-3) Brazilia,Buenos Aires,Georgetown,Greenland',
			'+2'=>'(GMT-2) Mid-Atlantic',
			'+1'=>'(GMT-1) Azores,Cape Verde Is.,Western Africa Time',
			'0'=>'(GMT) London,Iceland,Ireland,Morocco,Portugal',
			'-1'=>'(GMT+1) Amsterdam,Berlin,Bern,Madrid,Paris,Rome',
			'-2'=>'(GMT+2) Athens,Cairo,Cape Town,Finland,Greece,Israel',
			'-3'=>'(GMT+3) Ankara,Aden,Baghdad,Beruit,Kuwait,Moscow',
			'-4'=>'(GMT+4) Abu Dhabi,Baku,Kabul,Tehran,Tbilisi,Volgograd',
			'-5'=>'(GMT+5) Calcutta,Colombo,Islamabad,Madras,New Dehli',
			'-6'=>'(GMT+6) Almaty,Dhakar,Kathmandu,Colombo,Sri Lanka',
			'-7'=>'(GMT+7) Bangkok,Hanoi,Jakarta,Phnom Penh,Australia',
			'-8'=>'(GMT+8) Beijing,Hong Kong,Singapore,Taipei',
			'-9'=>'(GMT+9) Seoul,Tokyo,Central Australia',
			'-10'=>'(GMT+10) Brisbane,Canberra,Guam,Melbourne,Sydney',
			'-11'=>'(GMT+11) Magadan,New Caledonia,Solomon Is.',
			'-12'=>'(GMT+12) Auckland,Fiji,Kamchatka,Marshall,Wellington'
		);
		trbasic(lang('site timezone'),'mconfigsnew[timezone]',makeoption($tzarr,isset($timezone)?$timezone:-8),'select');
		tabfooter();

		tabheader(lang('content related'));
		trbasic(lang('issueupdatecheck'),'mconfigsnew[enableupdatecheck]',$mconfigs['enableupdatecheck'],'radio');
		trbasic(lang('issueupdatecopy'),'mconfigsnew[enableupdatecopy]',$mconfigs['enableupdatecopy'],'radio');
		trbasic(lang('archive auto create thumb'),'mconfigsnew[arcautothumb]',$mconfigs['arcautothumb'],'radio');
		trbasic(lang('archive auto create abstract'),'mconfigsnew[arcautoabstract]',$mconfigs['arcautoabstract'],'radio');
		trbasic(lang('archive auto abstract length'),'mconfigsnew[autoabstractlength]',$mconfigs['autoabstractlength']);
		trbasic(lang('stat hot keyword'),'mconfigsnew[hotkeywords]',$mconfigs['hotkeywords'],'radio');
		trbasic(lang('enable RSS'),'mconfigsnew[rss_enabled]',$mconfigs['rss_enabled'],'radio');
		trbasic(lang('rss_ttl'),'mconfigsnew[rss_ttl]',$mconfigs['rss_ttl']);
		trbasic(lang('nousersearch'),'mconfigsnew[nousersearch]',$mconfigs['nousersearch'],'radio');
		trbasic(lang('search max result amount ( member center1 )'),'mconfigsnew[search_max]',$mconfigs['search_max']);
		trbasic(lang('search time interval limited ( second )'),'mconfigsnew[search_repeat]',$mconfigs['search_repeat']);
		tabfooter();

		tabheader(lang('website stat'));
		trbasic(lang('enabelstat'),'mconfigsnew[enabelstat]',$mconfigs['enabelstat'],'radio');
		trbasic(lang('clickscachetime'),'mconfigsnew[clickscachetime]',$mconfigs['clickscachetime']);
		trbasic(lang('mclickscircle'),'mconfigsnew[mclickscircle]',$mconfigs['mclickscircle']);
		trbasic(lang('onlinetimecircle'),'mconfigsnew[onlinetimecircle]',$mconfigs['onlinetimecircle']);
		trbasic(lang('onlinehold'),'mconfigsnew[onlinehold]',$mconfigs['onlinehold']);
		trbasic(lang('cnodestat'),'mconfigsnew[cnodestat]',$mconfigs['cnodestat'],'radio');
		trbasic(lang('cnodestatcircle'),'mconfigsnew[cnodestatcircle]',$mconfigs['cnodestatcircle']);
		$statarr = array(
		'clicks' => lang('clicks'),
		'comments' => lang('comments'),
		'orders' => lang('purchase amount'),
		'ordersum' => lang('purchase allamount'),
		'favorites' => lang('favorite pics'),
		'praises' => lang('praise pics'),
		'debases' => lang('debase pics'),
		'downs' => lang('download pics'),
		'plays' => lang('play pics'),
		);
		trbasic(lang('want month stat of item'),'',makecheckbox('mconfigsnew[monthstats][]',$statarr,empty($mconfigs['monthstats']) ? array() : explode(',',$mconfigs['monthstats']),6),'');
		trbasic(lang('want week stat of item'),'',makecheckbox('mconfigsnew[weekstats][]',$statarr,empty($mconfigs['weekstats']) ? array() : explode(',',$mconfigs['weekstats']),6),'');
		trbasic(lang('inalbum sum stat of item'),'',makecheckbox('mconfigsnew[albumstats][]',$statarr,empty($mconfigs['albumstats']) ? array() : explode(',',$mconfigs['albumstats']),6),'');
		trbasic(lang('inalbum sum stat time interval ( hours )'),'mconfigsnew[albumstatcircle]',$mconfigs['albumstatcircle']);
		tabfooter('bmconfigs');
	}else{
		$mconfigsnew['autoabstractlength'] = max(10,intval($mconfigsnew['autoabstractlength']));
		!$mconfigsnew['autoabstractlength'] && $mconfigsnew['autoabstractlength'] = 100;
		$mconfigsnew['rss_ttl'] = empty($mconfigsnew['rss_ttl']) ? 30 : max(0,intval($mconfigsnew['rss_ttl']));
		$mconfigsnew['search_max'] = max(0,intval($mconfigsnew['search_max']));
		$mconfigsnew['search_repeat'] = max(0,intval($mconfigsnew['search_repeat']));

		$mconfigsnew['clickscachetime'] = max(0,intval($mconfigsnew['clickscachetime']));
		$mconfigsnew['mclickscircle'] = max(0,intval($mconfigsnew['mclickscircle']));
		$mconfigsnew['onlinetimecircle'] = max(0,intval($mconfigsnew['onlinetimecircle']));
		$mconfigsnew['onlinehold'] = max(0,intval($mconfigsnew['onlinehold']));
		$mconfigsnew['cnodestatcircle'] = max(0,intval($mconfigsnew['cnodestatcircle']));
		$mconfigsnew['monthstats'] = empty($mconfigsnew['monthstats']) ? '' : implode(',',$mconfigsnew['monthstats']);
		$mconfigsnew['weekstats'] = empty($mconfigsnew['weekstats']) ? '' : implode(',',$mconfigsnew['weekstats']);
		$mconfigsnew['albumstats'] = empty($mconfigsnew['albumstats']) ? '' : implode(',',$mconfigsnew['albumstats']);
		$mconfigsnew['albumstatcircle'] = max(1,intval($mconfigsnew['albumstatcircle']));
		saveconfig('basic');
		adminlog(lang('website setting'),lang('website based setting'));
		amessage(lang('website setting finish'),'?entry=mconfigs&action=cfbasic');
	}
}elseif($action == 'cfvisit'){
	!checkapermission(30) && amessage(lang('no_apermission'));
	if($sid && $sid_self) amessage(lang('msite admin item !'));
	if(!submitcheck('bmconfigs')){
		a_guide('cfvisit');
		tabheader(lang('website visit setting'),'cfvisit','?entry=mconfigs&action=cfvisit');
		trbasic(lang('site close'),'mconfigsnew[cmsclosed]',$mconfigs['cmsclosed'],'radio');
		trbasic(lang('site close reason'),'mconfigsnew[cmsclosedreason]',$mconfigs['cmsclosedreason'],'btext');
		trbasic(lang('adminipaccess'),'mconfigsnew[adminipaccess]',$mconfigs['adminipaccess'],'textarea',lang('agipaccess'));
		trbasic(lang('space close'),'mconfigsnew[mspacedisabled]',$mconfigs['mspacedisabled'],'radio');
		trbasic(lang('sid_self'),'mconfigsnew[sid_self]',$mconfigs['sid_self'],'radio');
		tabfooter();
		tabheader(lang('member reg setting'));
		trbasic(lang('site close reg'),'mconfigsnew[registerclosed]',$mconfigs['registerclosed'],'radio');
		trbasic(lang('reg close reason'),'mconfigsnew[regclosedreason]',$mconfigs['regclosedreason'],'btext');
		trbasic(lang('censoruser'),'mconfigsnew[censoruser]',$mconfigs['censoruser'],'textarea',lang('agcensor'));
		tabfooter();
		
		tabheader(lang('regcode setting'));
		trbasic(lang('regcode_width'),'mconfigsnew[regcode_width]',$mconfigs['regcode_width']);
		trbasic(lang('regcode_height'),'mconfigsnew[regcode_height]',$mconfigs['regcode_height']);
		$regcodearr = array(
		'register' => lang('member register'),
		'login' => lang('member login'),
		'admin' => lang('backarea login'),
		'archive' => lang('add archive'),
		'farchive' => lang('freeinfo'),
		'comment' => lang('issue comment'),
		'answer' => lang('add answer0'),
		'payonline' => lang('cash pay'),
		'pm' => lang('send pm'),
		);
		trbasic(lang('enable regcode'),'',makecheckbox('mconfigsnew[cms_regcode][]',$regcodearr,empty($mconfigs['cms_regcode']) ? array() : explode(',',$mconfigs['cms_regcode']),6),'');
		tabfooter('bmconfigs');
	}else{
		!checkapermission('cfvisit') && amessage(lang('no_apermission'));
		$mconfigsnew['regcode_width'] = max(60,intval($mconfigsnew['regcode_width']));
		$mconfigsnew['regcode_height'] = max(20,intval($mconfigsnew['regcode_height']));
		$mconfigsnew['cms_regcode'] = empty($mconfigsnew['cms_regcode']) ? '' : implode(',',$mconfigsnew['cms_regcode']);
		saveconfig('visit');
		adminlog(lang('website setting'),lang('visit and reg setting'));
		amessage(lang('website setting finish'),'?entry=mconfigs&action=cfvisit');
	}
}elseif($action == 'cfview'){
	!checkapermission($sid ? 124 : 32) && amessage(lang('no_apermission'));
	if(!submitcheck('bmconfigs')){
		a_guide('cfview');
		tabheader(lang(!$sid ? 'page based setting' : 'subsite setting'),'cfview',"?entry=mconfigs&action=cfview$param_suffix");
		if(!$sid){
			$htmlmodearr = array('month' => lang('year month').'('.lang('eg').'200701)','day' => lang('year month day0').'('.lang('eg').'20070101)',);
			$dateformatarr = array('Y-m-d' => lang('eg').'2008-01-01','Y-n-j' => lang('eg').'2008-1-1',);
			$timeformatarr = array('H:i' => lang('eg').'20:30','H:i:s' => lang('eg').'20:30:30',);
			$homedefaultarr = array('index.htm' => 'index.htm','index.html' => 'index.html','default.htm' => 'default.htm','default.html' => 'default.html',);
			trbasic(lang('gzipenable'),'mconfigsnew[gzipenable]',$mconfigs['gzipenable'],'radio');
			trbasic(lang('dateformat'),'mconfigsnew[dateformat]',makeoption($dateformatarr,$mconfigs['dateformat']),'select');
			trbasic(lang('timeformat'),'mconfigsnew[timeformat]',makeoption($timeformatarr,$mconfigs['timeformat']),'select');
			trbasic(lang('common msgforwordtime'),'mconfigsnew[msgforwordtime]',$mconfigs['msgforwordtime']);
			trbasic(lang('template tag parse view debug message'),'mconfigsnew[debugtag]',$mconfigs['debugtag'],'radio');
			trbasic(lang('jsrefsource'),'mconfigsnew[jsrefsource]',$mconfigs['jsrefsource'],'textarea',lang('agjsrefsource'));
			trbasic(lang('index template'),'mconfigsnew[hometpl]',makeoption(array('' => lang('nosetting')) + mtplsarr('index'),$mconfigs['hometpl']),'select');
			trbasic(lang('templatedir'),'mconfigsnew[templatedir]',$mconfigs['templatedir'],'text',lang('agtemplatedir'));
			tabfooter();
	
			tabheader(lang('static related setting'));
			trbasic(lang('weather enable static'),'mconfigsnew[enablestatic]',$mconfigs['enablestatic'],'radio');
			trbasic(lang('index static file cname'),'mconfigsnew[homedefault]',makeoption($homedefaultarr,$mconfigs['homedefault']),'select');
			trbasic(lang('cnhtmldir'),'mconfigsnew[cnhtmldir]',$mconfigs['cnhtmldir']);
			trbasic(lang('archtmlmode'),'mconfigsnew[archtmlmode]',makeoption($htmlmodearr,$mconfigs['archtmlmode']),'select');
			trbasic(lang('infohtmldir'),'mconfigsnew[infohtmldir]',$mconfigs['infohtmldir']);
			trbasic(lang('index staticcircle'),'mconfigsnew[indexcircle]',$mconfigs['indexcircle']);
			trbasic(lang('catas index staticcircle'),'mconfigsnew[cnindexcircle]',$mconfigs['cnindexcircle']);
			trbasic(lang('catas list page0 staticcircle'),'mconfigsnew[cnlistcircle]',$mconfigs['cnlistcircle']);
			trbasic(lang('content page0 staticcircle'),'mconfigsnew[archivecircle]',$mconfigs['archivecircle']);
			trbasic(lang('liststaticnum'),'mconfigsnew[liststaticnum]',$mconfigs['liststaticnum']);
			trbasic(lang('dynamic page').'url'.lang('virtual static'),'mconfigsnew[virtualurl]',$mconfigs['virtualurl'],'radio');
			trbasic(lang('rewritephp'),'mconfigsnew[rewritephp]',$mconfigs['rewritephp'],'text',lang('agrewritephp'));
			tabfooter();
			
			tabheader(lang('cache related setting'));
			trbasic(lang('cache1circle'),'mconfigsnew[cache1circle]',$mconfigs['cache1circle']);
			trbasic(lang('listcachenum'),'mconfigsnew[listcachenum]',$mconfigs['listcachenum']);
			trbasic(lang('cachemscircle'),'mconfigsnew[cachemscircle]',$mconfigs['cachemscircle']);
			trbasic(lang('mslistcachenum'),'mconfigsnew[mslistcachenum]',$mconfigs['mslistcachenum']);
			trbasic(lang('cachejscircle'),'mconfigsnew[cachejscircle]',$mconfigs['cachejscircle']);
			trbasic(lang('clearoldcache'),'mconfigsnew[clearoldcache]',$mconfigs['clearoldcache']);
			tabfooter();

			tabheader(lang('admin backarea related setting'));
			trbasic(lang('atpp'),'mconfigsnew[atpp]',$mconfigs['atpp']);
			trbasic(lang('admin backarea msgforwordtime'),'mconfigsnew[amsgforwordtime]',$mconfigs['amsgforwordtime']);
			trbasic(lang('cnprow'),'mconfigsnew[cnprow]',$mconfigs['cnprow']);
			trbasic(lang('catahidden'),'mconfigsnew[catahidden]',$mconfigs['catahidden'],'radio');
			tabfooter();

			tabheader(lang('member center1 related setting'));
			trbasic(lang('member center1 msgforwordtime'),'mconfigsnew[mmsgforwordtime]',$mconfigs['mmsgforwordtime']);
			trbasic(lang('mrowpp'),'mconfigsnew[mrowpp]',$mconfigs['mrowpp']);
			trbasic(lang('uclass byte length limited'),'mconfigsnew[uclasslength]',$mconfigs['uclasslength']);
			trspecial(lang('member center1 LOGO'),'mcenterlogo',$mconfigs['mcenterlogo'],'image',0,lang('agmclogo'));

		}else{
			trbasic(lang('subsite static dir'),'subsitenew[dirname]',$subsite['dirname'],'text');
			trbasic(lang('subsite templatedir'),'subsitenew[templatedir]',$subsite['templatedir'],'text',lang('agtemplatedir'));
			trbasic(lang('subsite index template'),'subsitenew[hometpl]',makeoption(array('' => lang('nosetting')) + mtplsarr('index'),$subsite['hometpl']),'select');
		}
		tabfooter('bmconfigs');

	}else{
		!checkapermission('cfview') && amessage(lang('no_apermission'));
		if(!$sid){
			$mconfigsnew['hometpl'] = empty($mconfigsnew['hometpl']) ? '' : trim($mconfigsnew['hometpl']);
			$mconfigsnew['templatedir'] = trim(strip_tags($mconfigsnew['templatedir']));//指定新的模板文件夹,所以可以有不同的模板样式
			if(empty($mconfigsnew['templatedir']) || preg_match("/[^a-zA-Z_0-9]+/",$mconfigsnew['templatedir'])){
				amessage(lang('templatedir illegal'), '?entry=mconfigs&action=cfview');
			}
			mmkdir(M_ROOT.'template/'.$mconfigsnew['templatedir']);
			foreach(array('cnhtmldir','infohtmldir') as $var){
				if($mconfigsnew[$var] == $mconfigs[$var]) continue;
				if(!$mconfigsnew[$var] || preg_match("/[^a-zA-Z_0-9]+/",$mconfigsnew[$var])){
					$mconfigsnew[$var] = $mconfigs[$var];
					continue;
				}
				$mconfigsnew[$var] = strtolower($mconfigsnew[$var]);
				if(!rename(M_ROOT.$mconfigs[$var],M_ROOT.$mconfigsnew[$var])){
					$mconfigsnew[$var] = $mconfigs[$var];
					continue;
				}
			}		
			$mconfigsnew['msgforwordtime'] = max(0,intval($mconfigsnew['msgforwordtime']));
			$mconfigsnew['amsgforwordtime'] = max(0,intval($mconfigsnew['amsgforwordtime']));
			$mconfigsnew['mmsgforwordtime'] = max(0,intval($mconfigsnew['mmsgforwordtime']));
			$mconfigsnew['atpp'] = max(5,intval($mconfigsnew['atpp']));
			$mconfigsnew['mrowpp'] = max(5,intval($mconfigsnew['mrowpp']));
			$mconfigsnew['cnprow'] = max(1,intval($mconfigsnew['cnprow']));
			$mconfigsnew['uclasslength'] = min(30,max(4,intval($mconfigsnew['uclasslength'])));
			$mconfigsnew['indexcircle'] = max(0,intval($mconfigsnew['indexcircle']));
			$mconfigsnew['cnindexcircle'] = max(0,intval($mconfigsnew['cnindexcircle']));
			$mconfigsnew['cnlistcircle'] = max(0,intval($mconfigsnew['cnlistcircle']));
			$mconfigsnew['archivecircle'] = max(0,intval($mconfigsnew['archivecircle']));
			$mconfigsnew['cache1circle'] = max(0,intval($mconfigsnew['cache1circle']));
			$mconfigsnew['liststaticnum'] = max(0,intval($mconfigsnew['liststaticnum']));
			$mconfigsnew['listcachenum'] = max(0,intval($mconfigsnew['listcachenum']));
			$mconfigsnew['cachemscircle'] = max(0,intval($mconfigsnew['cachemscircle']));
			$mconfigsnew['mslistcachenum'] = max(0,intval($mconfigsnew['mslistcachenum']));
			$mconfigsnew['cachejscircle'] = max(0,intval($mconfigsnew['cachejscircle']));
			$mconfigsnew['jsrefsource'] = trim(preg_replace("/(\s*(\r\n|\n\r|\n|\r)\s*)/","\r\n",$mconfigsnew['jsrefsource']));
			$mconfigsnew['autorelates'] = empty($mconfigsnew['autorelates']) ? '' : implode(',',$mconfigsnew['autorelates']);
			$c_upload = new cls_upload;	
			$imageurl = explode('#',upload_s('mcenterlogo',$mconfigs['mcenterlogo'],'image'));
			$mconfigsnew['mcenterlogo'] = $imageurl[0];
			$c_upload->saveuptotal(1);
			unset($c_upload);
			saveconfig('view');
		}else{
			$subsitenew['hometpl'] = empty($subsitenew['hometpl']) ? '' : trim($subsitenew['hometpl']);
			$subsitenew['templatedir'] = trim(strip_tags($subsitenew['templatedir']));//指定新的模板文件夹,所以可以有不同的模板样式
			if(empty($subsitenew['templatedir']) || preg_match("/[^a-zA-Z_0-9]+/",$subsitenew['templatedir'])){
				amessage(lang('templatedir illegal'),"?entry=mconfigs&action=cfview$param_suffix");
			}
			mmkdir(M_ROOT.'template/'.$subsitenew['templatedir'],0);

			$subsitenew['dirname'] = empty($subsitenew['dirname']) ? '' : strtolower(trim($subsitenew['dirname']));
			if(!$subsitenew['dirname'] || ($subsite['dirname'] == $subsitenew['dirname']) || preg_match("/[^a-zA-Z_0-9]+/",$subsitenew['dirname']) || !rename(M_ROOT.$subsite['dirname'],M_ROOT.$subsitenew['dirname'])){
				$subsitenew['dirname'] = $subsite['dirname'];
			}
			$db->query("UPDATE {$tblprefix}subsites SET 
			hometpl='$subsitenew[hometpl]',
			dirname='$subsitenew[dirname]',
			templatedir='$subsitenew[templatedir]'
			WHERE sid='$sid'");
			updatecache('subsites');
		}
		adminlog(lang('website setting'),lang('page and template setting'));
		amessage(lang('website setting finish'),"?entry=mconfigs&action=cfview$param_suffix");
	}
}elseif($action == 'cfppt'){
	!checkapermission(34) && amessage(lang('no_apermission'));
	if($sid && $sid_self) amessage(lang('msite admin item !'));
	if(!submitcheck('bmconfigs')){
		a_guide('cfppt');
		tabheader(lang('pptout setting'),'cfppt','?entry=mconfigs&action=cfppt');
		$pfilearr = array('discuz' => 'Discuz','phpwind' => 'PHPwind','08cms' => '08CMS',);
		$pcharsetarr = array('gbk' => 'GBK/GB2312','utf-8' => 'UTF-8','big5' => 'BIG5',);
		trbasic(lang('enable pptout'),'mconfigsnew[enable_pptout]',$mconfigs['enable_pptout'],'radio');
		trbasic(lang('pptout_file'),'mconfigsnew[pptout_file]',makeoption($pfilearr,$mconfigs['pptout_file']),'select');
		trbasic(lang('pptout_charset'),'mconfigsnew[pptout_charset]',makeoption($pcharsetarr,$mconfigs['pptout_charset']),'select');
		trbasic(lang('pptout_url'),'mconfigsnew[pptout_url]',$mconfigs['pptout_url']);
		trbasic(lang('pptout key'),'mconfigsnew[pptout_key]',$mconfigs['pptout_key']);
		tabfooter();
		tabheader(lang('pptin setting'));
		trbasic(lang('enable pptin'),'mconfigsnew[enable_pptin]',$mconfigs['enable_pptin'],'radio');
		trbasic(lang('pptin key'),'mconfigsnew[pptin_key]',$mconfigs['pptin_key']);
		trbasic(lang('pptin_expire'),'mconfigsnew[pptin_expire]',$mconfigs['pptin_expire']);
		trbasic(lang('pptin_url'),'mconfigsnew[pptin_url]',$mconfigs['pptin_url']);
		trbasic(lang('pptin_register'),'mconfigsnew[pptin_register]',$mconfigs['pptin_register']);
		trbasic(lang('pptin_login'),'mconfigsnew[pptin_login]',$mconfigs['pptin_login']);
		trbasic(lang('pptin_logout'),'mconfigsnew[pptin_logout]',$mconfigs['pptin_logout']);
		tabfooter();
		tabheader(lang('uc_client config'));
		trbasic(lang('enable UCenter'),'mconfigsnew[enable_uc]',$mconfigs['enable_uc'],'radio');
		trbasic(lang('uc_api'),'mconfigsnew[uc_api]',$mconfigs['uc_api']);
		trbasic(lang('uc_ip'),'mconfigsnew[uc_ip]',$mconfigs['uc_ip']);
		trbasic(lang('uc_dbhost'),'mconfigsnew[uc_dbhost]',$mconfigs['uc_dbhost']);
		trbasic(lang('uc_dbname'),'mconfigsnew[uc_dbname]',$mconfigs['uc_dbname']);
		trbasic(lang('uc_dbuser'),'mconfigsnew[uc_dbuser]',$mconfigs['uc_dbuser']);
		trbasic(lang('uc_dbpwd'),'mconfigsnew[uc_dbpwd]',$mconfigs['uc_dbpwd'],'password');
		trbasic(lang('uc_dbpre'),'mconfigsnew[uc_dbpre]',$mconfigs['uc_dbpre']);
		trbasic(lang('uc_appid'),'mconfigsnew[uc_appid]',$mconfigs['uc_appid']);
		trbasic(lang('uc_key'),'mconfigsnew[uc_key]',$mconfigs['uc_key']);
		tabfooter('bmconfigs');
	}else{
		!checkapermission('cfppt') && amessage(lang('no_apermission'));
		saveconfig('ppt');
		adminlog(lang('website setting'),lang('website pptput pptin setting'));
		amessage(lang('website setting finish'),'?entry=mconfigs&action=cfppt');
	}
}elseif($action == 'cfpay'){
	!checkapermission(35) && amessage(lang('no_apermission'));
	if($sid && $sid_self) amessage(lang('msite admin item !'));
	if(!submitcheck('bmconfigs')){
		load_cache('payonlines');
		a_guide('cfpay');
		tabheader(lang('business related based setting'),'cfpay','?entry=mconfigs&action=cfpay');
		trbasic(lang('online pay arrive auto saving'),'mconfigsnew[onlineautosaving]',$mconfigs['onlineautosaving'],'radio');
		trbasic(lang('enable goods ship fee stat'),'mconfigsnew[enableship]',isset($mconfigs['enableship']) ? $mconfigs['enableship'] : 0,'radio');
		trbasic(lang('enable goods stock stat'),'mconfigsnew[enablestock]',isset($mconfigs['enablestock']) ? $mconfigs['enablestock'] : 0,'radio');
		trbasic(lang('cart goods amount limited'),'mconfigsnew[cartmaxlimited]',!empty($mconfigs['cartmaxlimited']) ? $mconfigs['cartmaxlimited'] : '','text');
		tabfooter();
		foreach($payonlines as $k => $v){
			tabheader(lang($k.' - online pay setting'));
			trbasic(lang('weather enable'),"payonlinesnew[$k][enable]",$v['enable'],'radio');
			trbasic(lang('pay cname'),"payonlinesnew[$k][cname]",$v['cname']);
			trbasic(lang('data send URL'),"payonlinesnew[$k][send]",$v['send']);
			trbasic(lang('result receive URL'),"payonlinesnew[$k][receive]",empty($v['receive']) ? ($cms_abs.'payonline/'.$k.'.php') : $v['receive']);
			trbasic(lang('partnerid'),"payonlinesnew[$k][partner]",$v['partner']);
			trbasic(lang('pay key'),"payonlinesnew[$k][key]",$v['key'],'password');
			trbasic(lang('deduct handfee ( % )'),"payonlinesnew[$k][percent]",$v['percent']);
			tabfooter();
		}
		echo "<input class=\"button\" type=\"submit\" name=\"bmconfigs\" value=\"".lang('submit')."\">";
	}else{
		!checkapermission('cfpay') && amessage(lang('no_apermission'));
		$mconfigs['enableship'] = empty($mconfigs['enableship']) ? 0 : 1;
		$mconfigs['enablestock'] = empty($mconfigs['enablestock']) ? 0 : 1;
		if(($mconfigs['enableship'] != $mconfigsnew['enableship']) || ($mconfigs['enablestock'] != $mconfigsnew['enablestock'])){
			alter_purchase();
		}
		$mconfigsnew['cartmaxlimited'] = max(0,intval($mconfigsnew['cartmaxlimited']));
		saveconfig('pay');
		foreach($payonlinesnew as $k => $v){
			$v['enable'] = empty($v['enable']) ? 0 : 1;
			$v['cname'] = empty($v['cname']) ? lang($k) : $v['cname'];
			$v['percent'] = min(100,max(0,floatval($v['percent'])));
			$v['key'] = trim($v['key']);
			(empty($v['send']) || empty($v['partner']) || empty($v['key'])) && $v['enable'] = 0;
			$payonlinesnew[$k] = $v;
		}
		cache2file($payonlinesnew,'payonlines');
		adminlog(lang('website business pay setting'),lang('website business pay setting'));
		amessage(lang('business pay setting finish'),'?entry=mconfigs&action=cfpay');
	}
}elseif($action == 'cfupload'){
	!checkapermission(38) && amessage(lang('no_apermission'));
	if($sid && $sid_self) amessage(lang('msite admin item !'));
	$vftp_password = $tftp_password = '';
	if(!empty($mconfigs['ftp_password'])){
		$tftp_password = authcode($mconfigs['ftp_password'],'DECODE',md5($authkey));
		$vftp_password = $tftp_password{0}.'********'.$tftp_password{strlen($tftp_password) - 1};
	}
	if(!submitcheck('bmconfigs')){
		$upatharr = array('0' => lang('default').'('.lang('attachment type').')','month' => lang('attachment type').'+'.lang('month'),'day' => lang('attachment type').'+'.lang('date'));
		$watermarktypearr = array('0' => 'GIF'.lang('image watermark'),'1' => 'PNG'.lang('image watermark'));
		$atmbrowserarr = array('0' => lang('all user'),'1' => lang('all member'),'2' => lang('only administrator'));
		a_guide('cfupload');
		tabheader(lang('upload attachment setting'),'cfupload','?entry=mconfigs&action=cfupload');
		trbasic(lang('dir_userfile'),'mconfigsnew[dir_userfile]',$mconfigs['dir_userfile']);
		trbasic(lang('attachment smallsite'),'mconfigsnew[atm_smallsite]',$mconfigs['atm_smallsite']);
		trbasic(lang('path_userfile'),'mconfigsnew[path_userfile]',makeoption($upatharr,$mconfigs['path_userfile']),'select');
		trbasic(lang('images_max'),'mconfigsnew[images_max]',$mconfigs['images_max']);
		trbasic(lang('files_max'),'mconfigsnew[files_max]',$mconfigs['files_max']);
		trbasic(lang('medias_max'),'mconfigsnew[medias_max]',$mconfigs['medias_max']);
		trbasic(lang('flashs_max'),'mconfigsnew[flashs_max]',$mconfigs['flashs_max']);
		trbasic(lang('player_width'),'mconfigsnew[player_width]',$mconfigs['player_width']);
		trbasic(lang('player_height'),'mconfigsnew[player_height]',$mconfigs['player_height']);
		trbasic(lang('allow nouser upload'),'mconfigsnew[upload_nouser]',$mconfigs['upload_nouser'],'radio');
		trbasic(lang('attachment browser permission setting'),'',makeradio('mconfigsnew[atmbrowser]',$atmbrowserarr,$mconfigs['atmbrowser']),'');
		tabfooter();
		
		tabheader(lang('image thumb setting'));
		trbasic(lang('thumbstatus'),'mconfigsnew[thumbstatus]',$mconfigs['thumbstatus'],'radio');
		trbasic(lang('thumbwidth'),'mconfigsnew[thumbwidth]',$mconfigs['thumbwidth']);
		trbasic(lang('thumbheight'),'mconfigsnew[thumbheight]',$mconfigs['thumbheight']);
		tabfooter();
		
		tabheader(lang('image watermark setting'));
		echo "<tr><td width=\"25%\" class=\"item1\">".lang('upload image add watermark')."</td>".
		"<td class=\"item2\">".
		"<table cellspacing=\"0\" cellpadding=\"4\" border=\"0\" style=\"margin-bottom: 3px; margin-top:3px;\">".
		"<tr><td colspan=\"3\"><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"0\"".(empty($mconfigs['watermarkstatus']) ? " checked" : "").">".lang('not add watermark')."</td>".
		"</tr><tr align=\"center\" class=\"item2\">".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"1\"".($mconfigs['watermarkstatus']==1 ? " checked" : "").">".lang('left top')."</td>".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"2\"".($mconfigs['watermarkstatus']==2 ? " checked" : "").">".lang('center top')."</td>".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"3\"".($mconfigs['watermarkstatus']==3 ? " checked" : "").">".lang('right top')."</td>".
		"</tr><tr align=\"center\" class=\"item2\">".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"4\"".($mconfigs['watermarkstatus']==4 ? " checked" : "").">".lang('left center')."</td>".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"5\"".($mconfigs['watermarkstatus']==5 ? " checked" : "").">".lang('center')."</td>".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"6\"".($mconfigs['watermarkstatus']==6 ? " checked" : "").">".lang('right center')."</td>".
		"</tr><tr align=\"center\" class=\"item2\">".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"7\"".($mconfigs['watermarkstatus']==7 ? " checked" : "").">".lang('left bottom')."</td>".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"8\"".($mconfigs['watermarkstatus']==8 ? " checked" : "").">".lang('center bottom')."</td>".
		"<td><input class=\"radio\" type=\"radio\" name=\"mconfigsnew[watermarkstatus]\" value=\"9\"".($mconfigs['watermarkstatus']==9 ? " checked" : "").">".lang('right bottom')."</td>".
		"</tr></table>".
		"</td></tr>";
		trbasic(lang('image watermark type'),'mconfigsnew[watermarktype]',makeoption($watermarktypearr,$mconfigs['watermarktype']),'select');
		trbasic(lang('watermarktrans'),'mconfigsnew[watermarktrans]',$mconfigs['watermarktrans']);
		trbasic(lang('watermarkquality'),'mconfigsnew[watermarkquality]',$mconfigs['watermarkquality']);
		tabfooter();
		tabheader(lang('remote attachment FTP setting'));
		trbasic(lang('enable attachment FTP upload'),'mconfigsnew[ftp_enabled]',$mconfigs['ftp_enabled'],'radio');
		trbasic(lang('ftp_host'),'mconfigsnew[ftp_host]',$mconfigs['ftp_host']);
		trbasic(lang('ftp_port'),'mconfigsnew[ftp_port]',$mconfigs['ftp_port']);
		trbasic(lang('ftp_user'),'mconfigsnew[ftp_user]',$mconfigs['ftp_user']);
		trbasic(lang('ftp_password'),'mconfigsnew[ftp_password]',$vftp_password);
		trbasic(lang('ftp_timeout'),'mconfigsnew[ftp_timeout]',$mconfigs['ftp_timeout']);
		trbasic(lang('ftp_pasv'),'mconfigsnew[ftp_pasv]',$mconfigs['ftp_pasv'],'radio');
		trbasic(lang('ftp_ssl'),'mconfigsnew[ftp_ssl]',$mconfigs['ftp_ssl'],'radio');
		trbasic(lang('ftp_dir'),'mconfigsnew[ftp_dir]',$mconfigs['ftp_dir']);
		trbasic(lang('ftp_url'),'mconfigsnew[ftp_url]',$mconfigs['ftp_url']);
		tabfooter();
		echo "<input class=\"button\" type=\"submit\" name=\"bmconfigs\" value=\"".lang('submit')."\">&nbsp; &nbsp;".
		"<input class=\"button\" type=\"submit\" name=\"ftpcheck\" value=\"".lang('ftpcheck')."\" onclick=\"this.form.action='?entry=checks&action=ftpcheck';this.form.target='ftpcheckiframe';\"><iframe name=\"ftpcheckiframe\" style=\"display: none\"></iframe>".
		"</form>";
	}else{
		!checkapermission('cfupload') && amessage(lang('no_apermission'));
		$mconfigsnew['dir_userfile'] = trim(strip_tags($mconfigsnew['dir_userfile']));
		$mconfigsnew['atm_smallsite'] = strtolower(trim($mconfigsnew['atm_smallsite']));
		$mconfigsnew['atm_smallsite'] .= !ereg("/$",$mconfigsnew['atm_smallsite']) ? '/' : '';
		$mconfigsnew['atm_smallsite'] = (!eregi("http://",$mconfigsnew['atm_smallsite']) || eregi($hosturl,$mconfigsnew['atm_smallsite'])) ? '' : $mconfigsnew['atm_smallsite'];
		$mconfigsnew['images_max'] = max(1,intval($mconfigsnew['images_max']));
		$mconfigsnew['files_max'] = max(1,intval($mconfigsnew['files_max']));
		$mconfigsnew['medias_max'] = max(1,intval($mconfigsnew['medias_max']));
		$mconfigsnew['flashs_max'] = max(1,intval($mconfigsnew['flashs_max']));
		$mconfigsnew['thumbwidth'] = max(20,intval($mconfigsnew['thumbwidth']));
		$mconfigsnew['thumbheight'] = max(20,intval($mconfigsnew['thumbheight']));
		$mconfigsnew['player_width'] = max(0,intval($mconfigsnew['player_width']));
		$mconfigsnew['player_height'] = max(0,intval($mconfigsnew['player_height']));
		$mconfigsnew['watermarktrans'] = min(100,max(0,intval($mconfigsnew['watermarktrans'])));
		$mconfigsnew['watermarkquality'] = min(100,max(0,intval($mconfigsnew['watermarkquality'])));
		$mconfigsnew['ftp_host'] = trim(strip_tags($mconfigsnew['ftp_host']));
		$mconfigsnew['ftp_port'] = max(1,intval($mconfigsnew['ftp_port']));
		$mconfigsnew['ftp_user'] = trim(strip_tags($mconfigsnew['ftp_user']));
		if($mconfigsnew['ftp_password'] != $vftp_password){
			$mconfigsnew['ftp_password'] =  $mconfigsnew['ftp_password'] ? authcode($mconfigsnew['ftp_password'],'ENCODE',md5($authkey)) : '';
		}else $mconfigsnew['ftp_password'] = $mconfigs['ftp_password'];
		$mconfigsnew['ftp_timeout'] = max(0,intval($mconfigsnew['ftp_timeout']));
		$mconfigsnew['ftp_dir'] = trim(strip_tags($mconfigsnew['ftp_dir']));
		$mconfigsnew['ftp_url'] = trim(strip_tags($mconfigsnew['ftp_url']));
		saveconfig('upload');
		adminlog(lang('website setting'),lang('upload and download setting'));
		amessage(lang('website setting finish'),'?entry=mconfigs&action=cfupload');
	}
}elseif($action == 'cfmail'){
	!checkapermission(36) && amessage(lang('no_apermission'));
	if($sid && $sid_self) amessage(lang('msite admin item !'));
	if(!submitcheck('bmconfigs')){
		a_guide('cfmail');
		$modearr = array(1 => lang('mailmode1'),2 => lang('mailmode2'),3 => lang('mailmode3'),);
		$delimiterarr = array(1 => lang('maildelimiter1'),2 => lang('maildelimiter2'),3 => lang('maildelimiter3'),);
		tabheader(lang('email setting'),'cfmail','?entry=mconfigs&action=cfmail');
		echo "<tr><td width=\"25%\" class=\"item1\">".lang('email send mode1')."</td>\n".
		"<td class=\"item2\">\n".
		"<input class=\"radio\" type=\"radio\" name=\"mconfigsnew[mail_mode]\" value=\"1\" onclick=\"$('mail_mod1').style.display = 'none';$('mail_mod2').style.display = 'none';\"".($mconfigs['mail_mode'] <= 1 ? ' checked' : '').">".lang('mailmode1')."<br>\n".
		"<input class=\"radio\" type=\"radio\" name=\"mconfigsnew[mail_mode]\" value=\"2\" onclick=\"$('mail_mod1').style.display = '';$('mail_mod2').style.display = '';\"".($mconfigs['mail_mode'] == 2 ? ' checked' : '').">".lang('mailmode2')."<br>\n".
		"<input class=\"radio\" type=\"radio\" name=\"mconfigsnew[mail_mode]\" value=\"3\" onclick=\"$('mail_mod1').style.display = '';$('mail_mod2').style.display = 'none';\"".($mconfigs['mail_mode'] == 3 ? ' checked' : '').">".lang('mailmode3')."<br>\n".
		"</td></tr>\n";
		echo "<tbody id=\"mail_mod1\" style=\"display:".($mconfigs['mail_mode'] > 1 ? '' : 'none')."\">";
		trbasic(lang('mail_smtp'),'mconfigsnew[mail_smtp]',$mconfigs['mail_smtp']);
		trbasic(lang('mail_port'),'mconfigsnew[mail_port]',$mconfigs['mail_port']);
		echo "</tbody>";
		echo "<tbody id=\"mail_mod2\" style=\"display:".($mconfigs['mail_mode'] == 2 ? '' : 'none')."\">";
		trbasic(lang('mail_auth'),'mconfigsnew[mail_auth]',$mconfigs['mail_auth'],'radio');
		trbasic(lang('mail_from'),'mconfigsnew[mail_from]',$mconfigs['mail_from']);
		trbasic(lang('mail_user'),'mconfigsnew[mail_user]',$mconfigs['mail_user']);
		trbasic(lang('mail_pwd'),'mconfigsnew[mail_pwd]',$mconfigs['mail_pwd'],'password');
		echo "</tbody>";	
		trbasic(lang('mail_delimiter'),'mconfigsnew[mail_delimiter]',makeoption($delimiterarr,$mconfigs['mail_delimiter']),'select');
		trbasic(lang('mail_silent'),'mconfigsnew[mail_silent]',$mconfigs['mail_silent'],'radio');
		trbasic(lang('mail_to'),'mconfigsnew[mail_to]');
		trbasic(lang('mail_sign'),'mconfigsnew[mail_sign]');
		
		tabfooter();
		echo "<input class=\"button\" type=\"submit\" name=\"bmconfigs\" value=\"".lang('submit')."\">&nbsp; &nbsp;".
		"<input class=\"button\" type=\"submit\" name=\"mailcheck\" value=\"".lang('mail test')."\" onclick=\"this.form.action='?entry=checks&action=mailcheck';this.form.target='mailcheckiframe';\"><iframe name=\"mailcheckiframe\" style=\"display: none\"></iframe>".
		"</form>";
	}else{
		!checkapermission('cfmail') && amessage(lang('no_apermission'));
		$mconfigsnew['mail_smtp'] = trim($mconfigsnew['mail_smtp']);
		$mconfigsnew['mail_port'] = trim($mconfigsnew['mail_port']);
		$mconfigsnew['mail_from'] = trim($mconfigsnew['mail_from']);
		$mconfigsnew['mail_user'] = trim($mconfigsnew['mail_user']);
		$mconfigsnew['mail_pwd'] = trim($mconfigsnew['mail_pwd']);
		unset($mconfigsnew['mail_sign'],$mconfigsnew['mail_to']);
		saveconfig('mail');
		adminlog(lang('mail setting'),lang('upload and download setting'));
		amessage(lang('mail setting finish'),'?entry=mconfigs&action=cfmail');
	}
}
function saveconfig($cftype){
	global $mconfigs,$mconfigsnew,$db,$tblprefix;
	foreach($mconfigsnew as $k => $v){
		if(!isset($mconfigs[$k]) || $mconfigs[$k] != $v){
			$db->query("REPLACE INTO {$tblprefix}mconfigs (varname,value,cftype)
				VALUES ('$k','$v','$cftype')");
		}
	}
	updatecache('mconfigs');

}
function alter_purchase(){
	global $db,$tblprefix,$mconfigsnew,$channels,$commus;
	$chids = array();
	foreach($channels as $k => $v){
		if(@$commus[$v['cuid']]['cclass'] == 'purchase') $chids[] = $k;
	}
	if($chids){
		$db->query("UPDATE {$tblprefix}fields SET available=".(empty($mconfigsnew['enableship']) ? 0 : 1)." WHERE ename='weight' AND chid IN (".mimplode($chids).")");
		$db->query("UPDATE {$tblprefix}fields SET available=".(empty($mconfigsnew['enablestock']) ? 0 : 1)." WHERE ename='storage' AND chid IN (".mimplode($chids).")");
		foreach($chids as $chid) updatecache('fields',$chid);
	}
}

?>