www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/include/common.fun.php

    <?
!defined('M_COM') && exit('No Permission');
include_once M_ROOT.'./include/parse.fun.php';
load_cache('clangs');
function message($message,$url_forward = '',$dtime = 0){
	global $msgforwordtime,$mcharset;
	$dtime = !$dtime ? $msgforwordtime : $dtime;
	if($url_forward) {
		$message .= "<br><br><br><a href=\"$url_forward\">".lang('clickhere')."</a>";
		$message .= "<script>setTimeout(\"window.location.replace('$url_forward');\", ".$dtime.");</script>";
	}elseif(strpos($message, lang('goback'))) $message .= "<br><br><br><a href=\"javascript:history.go(-1);\" class=\"mediumtxt\">[ ".lang('goback')." ]</a>";
	$message = "<br><br><br>$message<br><br>";
	$temparr['message'] = $message;
	if($template = template('message',$temparr)){
		mexit($template);
	}else{
?>
		<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
		<head><meta http-equiv="Content-Type" content="text/html; charset=<?=$mcharset?>"></head><body><table width="98%" border="0" cellpadding="0" cellspacing="0" align="center"><tr><td><?=$message?></td></tr></table></body></html>
<?	
		mexit();
	}
}
function if_siteclosed($sid){
	global $cmsclosed,$subsites,$cmsclosedreason;
	$closed = empty($sid) ? $cmsclosed : $subsites[$sid]['closed'];
	if($closed) message(empty($cmsclosedreason) ? lang('defaultclosedreason') : mnl2br($cmsclosedreason));
}
function ajax_info($str){
	global $mcharset;
	@header("Expires: -1");
	@header("Cache-Control: no-store, private, post-check=0, pre-check=0, max-age=0", FALSE);
	@header("Pragma: no-cache");
	header("Content-type: application/xml");
	echo "<?xml version=\"1.0\" encoding=\"$mcharset\"?>\n<root><![CDATA[";
	echo $str;
	echo ']]></root>';
	die();
}
function cumessage($msg = ''){
	global $ajax;
	if(empty($ajax)){
		message($msg,M_REFERER);
	}else ajax_info($msg);
}

function lang($str=''){
	global $clangs;
	$result = '';
	$arr = explode(' ',$str);
	if(empty($arr)) return '';
	foreach($arr as $var){
		$var = trim($var);
		$result .= isset($clangs[$var]) ? $clangs[$var] : $var;
	}
	return $result;
}

function template($spname='',$temparr=array()){
	global $sptpls;
	if(!($tplname = @$sptpls[$spname]) || !($template = load_tpl($tplname))) return '';
	foreach(array('c','u','b') as $var) nreplace($template,$var,$temparr);
	code_parse($template);
	return $template;
}
function pcaidsarr($caid,$self=1){
	global $catalogs;
	$caid0 = $caid;
	$pcaidsarr = array();
	$level = $catalogs[$caid]['level'];
	for($i = $level; $i > 0; $i--){
		$caid = $catalogs[$caid]['pid'];
		$pcaidsarr[] = $caid;
	}
	if(count($pcaidsarr)>1){
		$pcaidsarr = array_reverse($pcaidsarr);
	}
	if($self == 1){
		$pcaidsarr[] = $caid0;
	}
	return $pcaidsarr;
}
function pccidsarr($ccid,$coid,$self=1){
	global $cotypes,${'coclasses'.$coid};
	$ccid0 = $ccid;
	$coclasses = read_cache('coclasses',$coid);
	$pccidsarr = array();
	$level = $coclasses[$ccid]['level'];
	for($i = $level; $i > 0; $i--){
		$ccid = $coclasses[$ccid]['pid'];
		$pccidsarr[] = $ccid;
	}
	if(count($pccidsarr)>1){
		$pccidsarr = array_reverse($pccidsarr);
	}
	unset($coclasses);
	if($self == 1){
		$pccidsarr[] = $ccid0;
	}
	return $pccidsarr;
}
function array_flip_keys($arr) {
	$arr2 = array();
	$arrkeys = array_keys($arr);
	list(, $first) = each(array_slice($arr, 0, 1));
	if($first) {
		foreach($first as $k=>$v) {
			foreach($arrkeys as $key) {
				$arr2[$k][$key] = $arr[$key][$k];
			}
		}
	}
	return $arr2;
}
//*
function makeoption($selectarray, $selected='', $defaultstr='') {
	$selectstring = (!$selected && $defaultstr) ? "<option value=\"\">$defaultstr</option>\n" : '';
	if(is_array($selectarray)) {
		foreach($selectarray as $k => $v) {
			if($k == $selected){
				$selectstring .= "<option value=\"$k\" selected>\n";
			} else {
				$selectstring .= "<option value=\"$k\">\n";
			}
			$selectstring .= "$v</option>\n";
		}
	}
	return $selectstring;
}
//*
function multiselect($varname,$sarray,$value=array()){
	$value = is_array($value)?$value:array();
	$selectstr = "<select name=\"$varname\" size=\"5\" multiple=\"multiple\" style=\"width: 40%\">\n";
	if(is_array($sarray)){
		foreach($sarray as $k => $v) {
			if(in_array($k,$value)){
				$selectstr .= "<option value=\"$k\" selected>";
			} else {
				$selectstr .= "<option value=\"$k\">";
			}
			$selectstr .= $v."</option>";
		}
	}
	$selectstr .= "</select>";
	return $selectstr;
}

function caidsarr($chid = '0'){
	global $catalogs;
	$caidsarr = array();
	if(is_array($catalogs)){
		foreach($catalogs as $catalog) {
			if(!$chid || ($chid && ($catalog['chid'] == $chid))){
				$space ='';
				for($i=0;$i<$catalog['level'];$i++){
					$space .= '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
				}
				$caidsarr[$catalog['caid']] = $space.$catalog['title'];
			}
		}
	}	
	return $caidsarr;
}

function chidsarr(){
	global $channels;
	$chidsarr = array();
	if(is_array($channels)){
		foreach($channels as $channel) {
			if($channel['available']){
				$chidsarr[$channel['chid']] = $channel['cname'];
			}
		}
	}
	return $chidsarr;
}
function vcaidsarr(){
	global $vcatalogs;
	$caidsarr = array();
	foreach($vcatalogs as $k => $v){
		$caidsarr[$v['caid']] = $v['title'];
	}
	return $caidsarr;
}

function ugidsarr($gtid,$mchid=0){
	global $grouptypes,$mchannels;
	$ugidsarr = array();
	if(empty($grouptypes[$gtid])) return $ugidsarr;
	$usergroups = read_cache('usergroups',$gtid);
	foreach($usergroups as $k => $usergroup){
		if(!$mchid || in_array($mchid,explode(',',$usergroup['mchids'])))$ugidsarr[$k] = $usergroup['cname'];
	}
	return $ugidsarr;
}
function ccidsarr($coid){
	global $cotypes,${'coclasses'.$coid};
	$ccidsarr = array();
	if(empty($cotypes[$coid])) return $ccidsarr;
	$coclasses = read_cache('coclasses',$coid);
	foreach($coclasses as $coclass){
		$space ='';
		for($i=0;$i<$coclass['level'];$i++){
			$space .= '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
		}
		$ccidsarr[$coclass['ccid']] = $space.$coclass['title'];
	}
	return $ccidsarr;
}
?>