<?php
define('EmpireCMSAdmin','1');
require("../../e/class/connect.php");
require("../../e/class/functions.php");
require "../../e/data/".LoadLang("pub/fun.php");
require("../../e/class/delpath.php");
require("../../e/class/copypath.php");
require("../../e/class/t_functions.php");
require("../../e/data/dbcache/class.php");
require("../../e/data/dbcache/MemberLevel.php");
$link=db_connect();
$empire=new mysqlquery();
//驗證用戶
$lur=is_login();
$logininid=(int)$lur['userid'];
$loginin=$lur['username'];
$loginrnd=$lur['rnd'];
$loginlevel=(int)$lur['groupid'];
$loginadminstyleid=(int)$lur['adminstyleid'];
//ehash
$ecms_hashur=hReturnEcmsHashStrAll();

@set_time_limit(0);

//加載
$incftp=0;
if($public_r['phpmode'])
{
	include("../../e/class/ftp.php");
	$incftp=1;
}
//防採集
if($public_r['opennotcj'])
{
	@include("../../e/data/dbcache/notcj.php");
}

include('../../e/class/fzpubfun.php');

//定時刷新任務
function DoTimeRepage($time){
	global $empire,$dbtbpre;
	if(empty($time))
	{$time=120;}
	echo"<meta http-equiv=\"refresh\" content=\"".$time.";url=DoTimeRepage.php".hReturnEcmsHashStrHref(1)."\">";
	DoAutoUpAndDownInfo();//自動上/下線
	$todaytime=time();
	$b=0;
	$sql=$empire->query("select doing,classid,doid from {$dbtbpre}enewsdo where isopen=1 and lasttime+dotime*60<$todaytime");
	while($r=$empire->fetch($sql))
	{
		$b=1;
		if($r['doing']==1)//生成欄目
		{
			$cr=explode(',',$r['classid']);
			$count=count($cr)-1;
			for($i=1;$i<$count;$i++)
			{
				if(empty($cr[$i]))
				{
					continue;
				}
				$cr[$i]=(int)$cr[$i];
				ReListHtml($cr[$i],1);
			}
	    }
		elseif($r['doing']==2)//生成專題
		{
			$cr=explode(',',$r['classid']);
			$count=count($cr)-1;
			for($i=1;$i<$count;$i++)
			{
				if(empty($cr[$i]))
				{
					continue;
				}
				$cr[$i]=(int)$cr[$i];
				ListHtmlIndex($cr[$i],$ret_r[0],0);
			}
	    }
		elseif($r['doing']==3)//生成自定義列表
		{
			$cr=explode(',',$r['classid']);
			$count=count($cr)-1;
			for($i=1;$i<$count;$i++)
			{
				if(empty($cr[$i]))
				{
					continue;
				}
				$cr[$i]=(int)$cr[$i];
				$ur=$empire->fetch1("select listid,pagetitle,filepath,filetype,totalsql,listsql,maxnum,lencord,listtempid,pagekeywords,pagedescription from {$dbtbpre}enewsuserlist where listid='".$cr[$i]."'");
				ReUserlist($ur,"");
			}
	    }
		elseif($r['doing']==4)//生成自定義頁面
		{
			$cr=explode(',',$r['classid']);
			$count=count($cr)-1;
			for($i=1;$i<$count;$i++)
			{
				if(empty($cr[$i]))
				{
					continue;
				}
				$cr[$i]=(int)$cr[$i];
				$ur=$empire->fetch1("select id,path,pagetext,title,pagetitle,pagekeywords,pagedescription,tempid from {$dbtbpre}enewspage where id='".$cr[$i]."'");
				ReUserpage($ur['id'],$ur['pagetext'],$ur['path'],$ur['title'],$ur['pagetitle'],$ur['pagekeywords'],$ur['pagedescription'],$ur['tempid']);
			}
	    }
		elseif($r['doing']==5)//生成自定義JS
		{
			$cr=explode(',',$r['classid']);
			$count=count($cr)-1;
			for($i=1;$i<$count;$i++)
			{
				if(empty($cr[$i]))
				{
					continue;
				}
				$cr[$i]=(int)$cr[$i];
				$ur=$empire->fetch1("select jsid,jsname,jssql,jstempid,jsfilename from {$dbtbpre}enewsuserjs where jsid='".$cr[$i]."'");
				ReUserjs($ur,'');
			}
	    }
		elseif($r['doing']==6)//生成標題分類頁面
		{
			$cr=explode(',',$r['classid']);
			$count=count($cr)-1;
			for($i=1;$i<$count;$i++)
			{
				if(empty($cr[$i]))
				{
					continue;
				}
				$cr[$i]=(int)$cr[$i];
				ListHtml($cr[$i],$ret_r,5);
			}
	    }
		else//生成首頁
		{
			$indextemp=GetIndextemp();
			NewsBq($classid,$indextemp,1,0);
	    }
		$empire->query("update {$dbtbpre}enewsdo set lasttime='$todaytime' where doid='".$r['doid']."'");
    }
	if($b)
	{
		echo "最後執行時間：".date("Y-m-d H:i:s",$todaytime)."<br><br>";
	}
}

//定時上線/下線
function DoAutoUpAndDownInfo(){
	global $empire,$dbtbpre,$class_r,$emod_r,$public_r;
	$todaytime=time();
	$sql=$empire->query("select id,classid,infouptime,infodowntime from {$dbtbpre}enewsinfovote where infouptime>0 or infodowntime>0");
	while($r=$empire->fetch($sql))
	{
		if(!$class_r[$r['classid']]['tbname'])
		{
			continue;
		}
		//上線
		if($r['infouptime']&&$r['infouptime']<=$todaytime)
		{
			$infor=$empire->fetch1("select * from {$dbtbpre}ecms_".$class_r[$r['classid']]['tbname']."_check where id='".$r['id']."'".do_dblimit_one());
			if(!$infor['id'])
			{
				continue;
			}
			//簽發
			if($infor['isqf'])
			{
				$qfr=$empire->fetch1("select checktno from {$dbtbpre}enewswfinfo where id='".$r['id']."' and classid='".$r['classid']."'".do_dblimit_one());
				if($qfr['checktno']!='100')
				{
					continue;
				}
			}
			$empire->query("update {$dbtbpre}ecms_".$class_r[$r['classid']]['tbname']."_index set checked=1 where id='".$r['id']."'".do_dblimit_upone());
			$pubid=ReturnInfoPubid($r['classid'],$r['id']);
			$empire->query("update {$dbtbpre}enewsinfovote set infouptime=0 where pubid='$pubid'".do_dblimit_upone());
			//互轉
			//efz
			MoveCheckInfoForFzData($class_r[$r['classid']]['tbname'],$r['classid'],$r['id'],0,$infor['stb'],$infor['efz'],'');
			//efz
			MoveCheckInfoData($class_r[$r['classid']]['tbname'],0,$infor['stb'],"id='".$r['id']."'");
			AddClassInfos($r['classid'],'','+1');
			//刷新信息
			GetHtml($infor['classid'],$infor['id'],$infor,1);
			//刷新列表
			ReListHtml($r['classid'],1);
		}
		//下線
		if($r['infodowntime']&&$r['infodowntime']<=$todaytime)
		{
			$mid=$class_r[$r['classid']]['modid'];
			$tbname=$class_r[$r['classid']]['tbname'];
			$pf=$emod_r[$mid]['pagef'];
			$stf=$emod_r[$mid]['savetxtf'];
			//主表
			$infor=$empire->fetch1("select * from {$dbtbpre}ecms_".$class_r[$r['classid']]['tbname']." where id='".$r['id']."'".do_dblimit_one());
			if(!$infor['id'])
			{
				continue;
			}
			//簽發
			if($infor['isqf'])
			{
				$qfr=$empire->fetch1("select checktno from {$dbtbpre}enewswfinfo where id='".$r['id']."' and classid='".$r['classid']."'".do_dblimit_one());
				if($qfr['checktno']!='100')
				{
					continue;
				}
			}
			//分頁字段
			if($pf)
			{
				if(strstr($emod_r[$mid]['tbdataf'],','.$pf.','))
				{
					$finfor=$empire->fetch1("select ".$pf." from {$dbtbpre}ecms_".$tbname."_data_".$infor['stb']." where id='".$r['id']."'".do_dblimit_one());
					$infor[$pf]=$finfor[$pf];
				}
				if($stf&&$stf==$pf)//存放文本
				{
					$infor[$pf]=GetTxtFieldText($infor[$pf]);
				}
			}
			DelNewsFile($infor['filename'],$infor['newspath'],$infor['classid'],$infor[$pf],$infor['groupid']);
			$empire->query("update {$dbtbpre}ecms_".$class_r[$r['classid']]['tbname']."_index set checked=0,havehtml=0 where id='".$r['id']."'".do_dblimit_upone());
			$pubid=ReturnInfoPubid($r['classid'],$r['id']);
			$empire->query("update {$dbtbpre}enewsinfovote set infodowntime=0 where pubid='$pubid'".do_dblimit_upone());
			//互轉
			//efz
			MoveCheckInfoForFzData($class_r[$r['classid']]['tbname'],$r['classid'],$r['id'],1,$infor['stb'],$infor['efz'],'');
			//efz
			MoveCheckInfoData($class_r[$r['classid']]['tbname'],1,$infor['stb'],"id='".$r['id']."'");
			AddClassInfos($r['classid'],'','-1');
			//刷新列表
			ReListHtml($r['classid'],1);
		}
	}
}

DoTimeRepage(120);//自動刷新頁面
db_close();
$empire=null;
?>
<b>說明：本頁面為定時刷新任務執行窗口.</b>