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

    <?
include_once './include/general.inc.php';
include_once './include/common.fun.php';
include_once M_ROOT.'./include/farchive.cls.php';
include_once M_ROOT.'./include/farcedit.cls.php';
$querystr = $_SERVER['QUERY_STRING'];
un_virtual($querystr);
parse_str($querystr);
$page = empty($page) ? 1 :  max(1, intval($page));
$aid = empty($aid) ? 0 :  max(0, intval($aid));
$fid = empty($fid) ? 0 :  max(0, intval($fid));
if($aid){//单个附属信息的内容页面
	$arc = new cls_farchive();
	$arc->arcid($aid);
	if(!$arc->aid) message(lang('confirmchoose message id'));
	if(!$arc->archive['checked'] && !$curuser->isadmin()) message(lang('pointed message nocheck'));
	if(!$arc->archive['startdate'] || ($arc->archive['enddate'] && $arc->archive['enddate'] < $timestamp)) message(lang('confirmchoose available message'));//分析是否失效信息
	if(empty($arc->catalog['arctpl'])) message(lang('please point content page template'));
	if($cache1circle){
		$cachefile = htmlcac_dir('farc',date('Ym',$arc->archive['createdate']),1).cac_namepre($arc->aid,$arc->archive['createdate']).'_'.$page.'.php';
		if(is_file($cachefile) && (filemtime($cachefile) > ($timestamp - $cache1circle * 60))){
			mexit(read_htmlcac($cachefile));
		}
	}
	$arc->template = load_tpl($arc->catalog['arctpl']);
	$arc->mpcheck();
	$temparr = $arc->transarr();
	$arc->mpinfos['durlpre'] = $cms_abs."freeinfo.php?aid=".$arc->aid."&page=";
	$arc->mpinfos['nowpage'] = max(1,min($page,$arc->mpinfos['pcount']));
	$arc->mpinfos['static'] = 0;
	$s_item = array();
	$arc->nreplace($arc->template,'p',$s_item);
	nreplace($arc->template,'c',$temparr);
	$arc->nreplace($arc->template,'u',$s_item);
	$arc->nreplace($arc->template,'b',$s_item);
	code_parse($arc->template);
	$cache1circle && save_htmlcac($arc->template,$cachefile);
	mexit($arc->template);
}elseif($fid){//独立页的页面
	if(empty($freeinfos[$fid])) message(lang('please define related isolute page'));

	//分析所属子站
	switch_cache($freeinfos[$fid]['sid']);
	$sid = $freeinfos[$fid]['sid'];
	if_siteclosed($sid);

	if($cache1circle && (!$listcachenum || $page <= $listcachenum)){
		$cachefile = htmlcac_dir('farc','',1).cac_namepre($fid).'_'.$page.'.php';
		if(is_file($cachefile) && (filemtime($cachefile) > ($timestamp - $cache1circle * 60))){
			mexit(read_htmlcac($cachefile));
		}
	}
	!($tplname = $freeinfos[$fid]['tplname']) && message(lang('please define related template !'));
	!($template = @load_tpl($tplname)) && message(lang('please add template content !'));

	$item = array();
	if(preg_match("/\{p\\$(.+?)\s+(.*?)\{\/p\\$\\1\}/is",$template,$matches)){
		$mpinfo = mpinfo($matches[1],$matches[2]);
		unset($matches);
		$mpinfo['durlpre'] = $cms_abs.'freeinfo.php?fid='.$fid.'&page=';
		$mpinfo['nowpage'] = max(1,min($page,$mpinfo['pcount']));
		$mpinfo['static'] = 0;
		$item['mpnav'] = mpnav($mpinfo);
		nreplace($template,'p',$mpinfo);
		unset($matches,$mpinfo);
	}
	$sitem = array();
	nreplace($template,'c',$sitem);
	nreplace($template,'u',$item);
	nreplace($template,'b',$item);
	code_parse($template);
	$cache1circle && save_htmlcac($template,$cachefile);
	mexit($template);
}
mexit(lang('page param missing'));
?>