<!--#Include File="Include.asp"-->
<!--#Include File="../Class/Cls_Template.asp"--><%
'--------------------------------------
'Power By 580Web @2010-2014 f02
'URL:http://www.580Web.Cn/
'EMail:wsok85@qq.com
'QQ:253819801
'版权所有 未经允许不得去除本版权信息
'--------------------------------------

Call CheckAdminType("0,1",UType)
Call CheckAdminLimit(ULimit,"s_Html",0)

Dim CreateType,tryModule
Dim PageCode,PageType,PageTemplate,PageSuffix
Dim ViewUrl,ViewDir,SubjectUrl
Set FKTemplate=New Cls_Template
PageSuffix=FullHtmlSuffix
MenuId=0

Types=Clng(Request.QueryString("Type"))

Select Case Types
	Case 1
		Call CreatBox() '静态生成表单
	Case 2
		Call CreateLoad() '静态生成初始化
	Case 3
		Call CreateDo() '静态生成
	Case Else
		Call FKFun.ShowErr("未发现功能项！",1)
End Select

'==========================================
'函 数 名：CreatBox()
'作    用：静态生成表单
'==========================================
Sub CreatBox()
	Dim MenuSelect
	'菜单列表
	Sqlstr="Select Fk_Menu_Id,Fk_Menu_Name From [Fk_Menu] Order By Fk_Menu_Id Asc"
	Rs.Open Sqlstr,Conn,1,1
	While Not Rs.Eof
        MenuSelect=MenuSelect&"<option value='"&Rs("Fk_Menu_Id")&"'>"&Rs("Fk_Menu_Name")&"</option>"
		Rs.MoveNext
	Wend
	Rs.Close
%>
<div id="title">静态生成</div>
<div id="box">
	<table width="95%" id="t1" class="t" border="1" bordercolor="#CCCCCC" align="center" cellpadding="0" cellspacing="0">
		<tr>
			<td width="20%" height="30" align="center"><a href="javascript:void(0);" onClick="$('#htmlBox',parent.document.body).attr('src','Html.asp?Type=2&Create=1');">生成全站静态文件</a></td>
			<td width="20%" align="center"><a href="javascript:void(0);" onClick="$('#htmlBox',parent.document.body).attr('src','Html.asp?Type=3');">生成更新的静态文件</a></td>
			<td width="20%" align="center">
				<a href="javascript:void(0);" onClick="$('#htmlBox',parent.document.body).attr('src','Html.asp?Type=2&Create=2&day='+$('#Day').val());">生成</a>
				<select name="Day" class="input" id="Day">
<%
	For i=1 To 7
%>
					<option value="<%=i%>"><%=i%>天内</option>
<%
	Next
%>
				</select>
				<a href="javascript:void(0);" onClick="$('#htmlBox',parent.document.body).attr('src','Html.asp?Type=2&Create=2&Day='+$('#Day').val());">更新的静态文件</a>
			</td>
			<td width="20%" align="center">&nbsp;</td>
		</tr>
		<tr>
			<td height="30" colspan="4">
				&nbsp;&nbsp;按菜单项生成：
				&nbsp;<select name="Menu" class="textarea" size="10" id="Menu" onChange="ChangeSelect('Select.asp?Type=101&Id='+$(this).val(),'CreateModule');">
					<option value="0">请选择菜单</option>
					<%=MenuSelect%>
				</select>
				<select name="CreateModule" class="textarea" size="10" multiple="multiple" id="CreateModule">
					<option value="0">请先选择菜单</option>
				</select>
				<input type="button" class="button" name="button1" id="button1" value="生 成" onClick="$('#htmlBox',parent.document.body).attr('src','Html.asp?Type=2&Create=3&Module='+$('#CreateModule').val());" />
			</td>
		</tr>
	</table>
	<br />
	<table width="95%" border="1" bordercolor="#CCCCCC" align="center" cellpadding="0" cellspacing="0">
        <tr>
        	<td height="30" align="center">静态生成结果</td>
       	</tr>
        <tr>
            <td height="30"><iframe src="" id="htmlBox" width="840" height="200" frameborder="0" scrolling="auto"></iframe></td>
        </tr>
	</table>
</div>
<div id="bottom">
	<input type="button" onClick="dialogClose();" class="button" name="button" id="button" value="关 闭" />
</div>
<%
End Sub

'==========================================
'函 数 名：CreateLoad()
'作    用：静态生成初始化
'==========================================
Sub CreateLoad()
	Call cTop()
	CreateType=Trim(Request.QueryString("Create"))
	Call FKFun.ShowNum(CreateType,"参数错误！")
	Response.Write("<p>正在进行静态生成初始化！</p>")
	Response.Flush()
	Response.Clear()
	If CreateType=1 Then '生成全站
		Application.Lock()
		Sqlstr="Update [Fk_Module] Set Fk_Module_ToHtml=1"
		Conn.Execute(Sqlstr)
		Sqlstr="Update [Fk_View] Set Fk_View_ToHtml=1"
		Conn.Execute(Sqlstr)
		Sqlstr="Update [Fk_Subject] Set Fk_Subject_ToHtml=1"
		Conn.Execute(Sqlstr)
		Application.UnLock()
		Call ToUrl("Html.asp?Type=3")
	ElseIf CreateType=2 Then '生成指定天数更新的文件
		Temp=Trim(Request.QueryString("Day"))
		Call FKFun.ShowNum(Temp,"请选择天数！")
		Application.Lock()
		Sqlstr="Update [Fk_View] Set Fk_View_ToHtml=1 Where Fk_View_Time>=#"&Dateadd("d",Date(),-(Temp-1))&"#"
		Conn.Execute(Sqlstr)
		Application.UnLock()
		Call ToUrl("Html.asp?Type=3&Try=1")	
	ElseIf CreateType=3 Then '置顶菜单项生成
		Temp=Replace(Trim(Request.QueryString("Module"))," ","")
		If Temp="" Then
			Call FKFun.ShowErr("请选择要生成的菜单项！",2)
		End If
		Application.Lock()
		Sqlstr="Update [Fk_Module] Set Fk_Module_ToHtml=1 Where Fk_Module_Id In ("&Temp&")"
		Conn.Execute(Sqlstr)
		Sqlstr="Update [Fk_View] Set Fk_View_ToHtml=1 Where Fk_View_Module In ("&Temp&")"
		Conn.Execute(Sqlstr)
		Application.UnLock()
		Call ToUrl("Html.asp?Type=3")	
	End If
End Sub

'==========================================
'函 数 名：CreateDo()
'作    用：静态生成
'==========================================
Sub CreateDo()
	Dim c_i,c_Rs,c_Rs2,c_IdList,CreatePageSize,CreateCount,CreateTemp
	Dim c_PageNow,c_PageRecordCount,c_PageSizes,c_PageCounts
	Dim mRs,mSqlstr,mModelTemplate
	Set mRs=Server.Createobject("Adodb.RecordSet")
	Set c_Rs=Server.Createobject("Adodb.RecordSet")
	Set c_Rs2=Server.Createobject("Adodb.RecordSet")
	Call cTop()
	
	'参数获取
	CreateType=Trim(Request.QueryString("Create"))
	If CreateType="" Then
		CreateType=1
	Else
		CreateType=Clng(CreateType)
	End If
	tryModule=Trim(Request.QueryString("Try"))
	If tryModule="" Then
		tryModule=0
	Else
		tryModule=Clng(tryModule)
	End If
	
	
	'页码
	c_PageNow=1
	c_PageSizes=50
	c_IdList="0"
	
	'======生成
	If CreateType=1 Then '================生成内容页
		Sqlstr="Select Fk_View_Id,Fk_View_Title,Fk_View_Link,Fk_View_Menu,Fk_View_FixedUrl,Fk_View_Url,Fk_Module_Id,Fk_Module_LevelList,Fk_View_Template,Fk_Module_LowTemplate,Fk_Module_FixedUrl,Fk_Module_Url,Fk_Model_LowTemplate From [Fk_ViewList] Where Fk_View_ToHtml=1 And Fk_View_Show=1 And Fk_Module_State=1 And (Fk_View_Link='' Or Fk_View_Link Is Null) Order By Fk_View_Id Asc"
		c_Rs.Open Sqlstr,Conn,1,1
		If Not c_Rs.Eof Then
			c_Rs.PageSize=c_PageSizes
			c_PageCounts=c_Rs.PageCount
			c_Rs.AbsolutePage=c_PageNow
			c_PageRecordCount=c_Rs.RecordCount
			c_i=1
			Response.Write("<p>正在生成内容页面，需生成"&c_PageRecordCount&"条记录，"&c_PageSizes&"条/页，当前还需生成"&c_PageCounts&"页！</p>")
			Response.Flush()
			Response.Clear()
			While (Not c_Rs.Eof) And c_i<c_PageSizes+1
				
				'初始化需要更新的栏目
				If tryModule=1 Then
					Application.Lock()
					Sqlstr="Update [Fk_Module] Set Fk_Module_ToHtml=1 Where Fk_Module_Id In (0"&c_Rs("Fk_Module_LevelList")&c_Rs("Fk_Module_Id")&")"
					Conn.Execute(Sqlstr)
					Application.UnLock()
				End If
				
				'记录参数读取
				Id=c_Rs("Fk_View_Id")
				c_IdList=c_IdList&","&Id
				MenuId=c_Rs("Fk_View_Menu")
				If c_Rs("Fk_Module_FixedUrl")<>"" Then
					ModuleUrl=c_Rs("Fk_Module_FixedUrl")
				Else
					ModuleUrl=c_Rs("Fk_Module_Url")
				End If
				
				PageTemplate="view"
				If c_Rs("Fk_View_Template")<>"" Then
					PageTemplate=c_Rs("Fk_View_Template")
				ElseIf c_Rs("Fk_Module_LowTemplate")<>"" Then
					PageTemplate=c_Rs("Fk_Module_LowTemplate")
				ElseIf c_Rs("Fk_Model_LowTemplate")<>"" Then
					PageTemplate=c_Rs("Fk_Model_LowTemplate")
				End If
				
				'菜单信息读取
				Sqlstr="Select Fk_Menu_Dir,Fk_Menu_Template From [Fk_Menu] Where Fk_Menu_Id=" & MenuId
				c_Rs2.Open Sqlstr,Conn,1,1
				If Not c_Rs2.Eof Then
					MenuDir=c_Rs2("Fk_Menu_Dir")
					MenuTemplate=c_Rs2("Fk_Menu_Template")
				Else
					c_Rs2.Close
					Call FKFun.ShowErr("error:菜单不存在！",0)
				End If
				c_Rs2.Close
				
				'目录模板方案_默认模板组合
				If MenuTemplate<>"" Then
					If Instr(DisTemplate,","&PageTemplate&",")>0 Then
						PageTemplate=MenuTemplate&"/"&PageTemplate
					End If
				End If
				
				'模板标签解析
				PageCode=FKTemplate.GetTemplate(PageTemplate)
				PageCode=FKTemplate.FileChange(PageCode)
				PageCode=FKTemplate.SiteChange(PageCode)
				PageCode=FKTemplate.ViewChange(PageCode,Id)
				PageCode=FKTemplate.TemplateChange(PageCode)
				
				'链接地址获取
				ViewUrl=FKTemplate.GetUrl(FullSiteDir,"",ModuleUrl,c_Rs("Fk_View_Url"),PageSuffix,2,Id,c_Rs("Fk_View_FixedUrl"))
				
				'生成文件
				Call FKFun.CreateHtml(ViewUrl,PageCode)
				
				Response.Write("<p>“<a href='"&ViewUrl&"' target='_blank'>"&c_Rs("Fk_View_Title")&"</a>”生成成功！</p>")
				Response.Flush()
				Response.Clear()
								
				c_Rs.MoveNext
				c_i=c_i+1
			Wend
			
			'生成状态取消
			Application.Lock()
			Sqlstr="Update [Fk_View] Set Fk_View_ToHtml=0 Where Fk_View_Id In ("&c_IdList&")"
			Conn.Execute(Sqlstr)
			Application.UnLock()
		Else
			Response.Write("<p>内容页面生成完毕！</p>")
			Response.Flush()
			Response.Clear()
		End If
		c_Rs.Close
		
		If c_PageNow>=c_PageCounts Then
			'转向单页栏目页面生成
			Call ToUrl("Html.asp?Type=3&Create=2")
		Else
			'下一页
			Call ToUrl("Html.asp?Type=3&Create=1")
		End If
	ElseIf CreateType=2 Then '================生成单页栏目页面
		Sqlstr="Select Fk_Module_Id,Fk_Module_Name,Fk_Module_Type,Fk_Module_FixedUrl,Fk_Module_Url,Fk_Module_Template,Fk_Module_Menu,Fk_Module_IsIndex,Fk_Module_LinkType,Fk_Module_Link,Fk_Module_Model From [Fk_Module] Where Fk_Module_Type In (0,2,4) And Fk_Module_State=1 And Fk_Module_ToHtml=1 Order By Fk_Module_Id Asc"
		c_Rs.Open Sqlstr,Conn,1,1
		If Not c_Rs.Eof Then
			c_Rs.PageSize=c_PageSizes
			c_PageCounts=c_Rs.PageCount
			c_Rs.AbsolutePage=c_PageNow
			c_PageRecordCount=c_Rs.RecordCount
			c_i=1
			Response.Write("<p>正在生成静态模块和信息模块页面，需生成"&c_PageRecordCount&"条记录，"&c_PageSizes&"条/页，当前还需生成"&c_PageCounts&"页！</p>")
			Response.Flush()
			Response.Clear()
			While (Not c_Rs.Eof) And c_i<c_PageSizes+1
				
				'记录参数读取
				Id=c_Rs("Fk_Module_Id")
				c_IdList=c_IdList&","&Id
				MenuId=c_Rs("Fk_Module_Menu")
				ModuleIndex=c_Rs("Fk_Module_IsIndex")
				ModuleType=c_Rs("Fk_Module_Type")
				ModuleFixedUrl=c_Rs("Fk_Module_FixedUrl")
				
				'读取模型绑定模板
				If ModuleType=2 Then
					mSqlstr="Select Fk_Model_Template From [Fk_Model] Where Fk_Model_Id="&c_Rs("Fk_Module_Model")&""
					mRs.Open mSqlstr,Conn,1,1
					If Not mRs.Eof Then
						mModelTemplate=mRs("Fk_Model_Template")
					Else
						mModelTemplate=""
					End If
					mRs.Close
				Else
					mModelTemplate=""
				End If
				
				If ModuleFixedUrl<>"" Then
					If Instr(ModuleFixedUrl,".")=0 Then
						ModuleFixedUrl=ModuleFixedUrl&"Index"
					End If
				End If
				
				If c_Rs("Fk_Module_LinkType")=1 And ModuleType=4 Then
					
					'跳转链接
					PageCode="<meta http-equiv=""refresh"" content=""0;URL="&c_Rs("Fk_Module_Link")&""">"
					
					'链接地址获取
					ModuleUrl=FKTemplate.GetUrl(FullSiteDir,"",c_Rs("Fk_Module_Url")&"Index","",PageSuffix,1,c_Rs("Fk_Module_Id"),ModuleFixedUrl)
									
					'生成文件
					Call FKFun.CreateHtml(ModuleUrl,PageCode)
					
					Response.Write("<p>“<a href='"&ModuleUrl&"' target='_blank'>"&c_Rs("Fk_Module_Name")&"</a>”生成成功！</p>")
					Response.Flush()
					Response.Clear()
				ElseIf ModuleType<>4 Then
					'非跳转模块处理
					If ModuleType=0 Then
						PageTemplate="module"
						PageType="staticstate"
					ElseIf ModuleType=2 Then
						PageTemplate="info"
						PageType="info"
					End If
					
					If c_Rs("Fk_Module_Template")<>"" Then
						PageTemplate=c_Rs("Fk_Module_Template")
					ElseIf mModelTemplate<>"" Then
						PageTemplate=mModelTemplate
					End If
					
					'菜单信息读取
					Sqlstr="Select Fk_Menu_Dir,Fk_Menu_Template From [Fk_Menu] Where Fk_Menu_Id=" & MenuId
					c_Rs2.Open Sqlstr,Conn,1,1
					If Not c_Rs2.Eof Then
						MenuDir=c_Rs2("Fk_Menu_Dir")
						MenuTemplate=c_Rs2("Fk_Menu_Template")
					Else
						c_Rs2.Close
						Call FKFun.ShowErr("error:菜单不存在！",0)
					End If
					c_Rs2.Close
					
					'目录模板方案_默认模板组合
					If MenuTemplate<>"" Then
						If Instr(DisTemplate,","&PageTemplate&",")>0 Then
							PageTemplate=MenuTemplate&"/"&PageTemplate
						End If
						If ModuleIndex=1 Then
							PageTemplate=MenuTemplate&"/index"
						End If
					End If
					
					'模板标签解析
					PageCode=FKTemplate.GetTemplate(PageTemplate)
					PageCode=FKTemplate.FileChange(PageCode)
					PageCode=FKTemplate.SiteChange(PageCode)
					PageCode=FKTemplate.ModuleChange(PageCode,Id,PageType)
					PageCode=FKTemplate.TemplateChange(PageCode)
					
					'链接地址获取
					ModuleUrl=FKTemplate.GetUrl(FullSiteDir,"",c_Rs("Fk_Module_Url")&"Index","",PageSuffix,1,Id,ModuleFixedUrl)
									
					'生成文件
					Call FKFun.CreateHtml(ModuleUrl,PageCode)
					
					Response.Write("<p>“<a href='"&ModuleUrl&"' target='_blank'>"&c_Rs("Fk_Module_Name")&"</a>”生成成功！</p>")
					Response.Flush()
					Response.Clear()
				End If
								
				c_Rs.MoveNext
				c_i=c_i+1
			Wend
			
			'生成状态取消
			Application.Lock()
			Sqlstr="Update [Fk_Module] Set Fk_Module_ToHtml=0 Where Fk_Module_Id In ("&c_IdList&")"
			Conn.Execute(Sqlstr)
			Application.UnLock()
		Else
			Response.Write("<p>单页栏目页面生成完毕！</p>")
			Response.Flush()
			Response.Clear()
		End If
		c_Rs.Close
		
		If c_PageNow>=c_PageCounts Then
			'转向分页栏目页面生成
			Call ToUrl("Html.asp?Type=3&Create=3")
		Else
			'下一页
			Call ToUrl("Html.asp?Type=3&Create=2")
		End If
	ElseIf CreateType=3 Then '================生成分页栏目页面
		c_PageSizes=1
		Sqlstr="Select Fk_Module_Id,Fk_Module_Name,Fk_Module_Type,Fk_Module_FixedUrl,Fk_Module_Url,Fk_Module_Template,Fk_Module_PageSize,Fk_Module_Menu,Fk_Module_GBookReply,Fk_Module_Model From [Fk_Module] Where Fk_Module_Type In (1,3) And Fk_Module_State=1 And Fk_Module_ToHtml=1 Order By Fk_Module_Type Asc,Fk_Module_Id Asc"
		c_Rs.Open Sqlstr,Conn,1,1
		If Not c_Rs.Eof Then
			c_Rs.PageSize=c_PageSizes
			c_PageCounts=c_Rs.PageCount
			c_Rs.AbsolutePage=c_PageNow
			c_PageRecordCount=c_Rs.RecordCount
			c_i=1
			Response.Write("<p>正在生成内容模块和留言模块页面，需生成"&c_PageRecordCount&"条记录，"&c_PageSizes&"条/页，当前还需生成"&c_PageCounts&"页！</p>")
			Response.Flush()
			Response.Clear()
			While (Not c_Rs.Eof) And c_i<c_PageSizes+1
				
				'记录参数读取
				CreatePageSize=Fk_Site_PageSize
				Id=c_Rs("Fk_Module_Id")
				c_IdList=c_IdList&","&Id
				MenuId=c_Rs("Fk_Module_Menu")
				ModuleType=c_Rs("Fk_Module_Type")
				ModuleFixedUrl=c_Rs("Fk_Module_FixedUrl")
				If IsNull(ModuleFixedUrl) Then
					ModuleFixedUrl=""
				End If
				
				'读取模型绑定模板
				If ModuleType=1 Then
					mSqlstr="Select Fk_Model_Template From [Fk_Model] Where Fk_Model_Id="&c_Rs("Fk_Module_Model")&""
					mRs.Open mSqlstr,Conn,1,1
					If Not mRs.Eof Then
						mModelTemplate=mRs("Fk_Model_Template")
					Else
						mModelTemplate=""
					End If
					mRs.Close
				Else
					mModelTemplate=""
				End If

				If ModuleType=1 Then
					PageTemplate="viewlist"
					PageType="viewlist"
				ElseIf ModuleType=3 Then
					PageTemplate="gbook"
					PageType="gbook"
				End If
				
				If c_Rs("Fk_Module_Template")<>"" Then
					PageTemplate=c_Rs("Fk_Module_Template")
				ElseIf mModelTemplate<>"" Then
					PageTemplate=mModelTemplate
				End If
				
				If c_Rs("Fk_Module_PageSize")>0 Then
					Fk_Site_PageSize=c_Rs("Fk_Module_PageSize")
					CreatePageSize=c_Rs("Fk_Module_PageSize")
				End If
				
				'菜单信息读取
				Sqlstr="Select Fk_Menu_Dir,Fk_Menu_Template From [Fk_Menu] Where Fk_Menu_Id=" & MenuId
				c_Rs2.Open Sqlstr,Conn,1,1
				If Not c_Rs2.Eof Then
					MenuDir=c_Rs2("Fk_Menu_Dir")
					MenuTemplate=c_Rs2("Fk_Menu_Template")
				Else
					c_Rs2.Close
					Call FKFun.ShowErr("error:菜单不存在！",0)
				End If
				c_Rs2.Close
				
				'目录模板方案_默认模板组合
				If MenuTemplate<>"" Then
					If Instr(DisTemplate,","&PageTemplate&",")>0 Then
						PageTemplate=MenuTemplate&"/"&PageTemplate
					End If
				End If
				
				'模板标签解析
				PageCode=FKTemplate.GetTemplate(PageTemplate)
				PageCode=FKTemplate.FileChange(PageCode)
				PageCode=FKTemplate.SiteChange(PageCode)
				
				'读取需要分页的页数
				CreateCount=1
				If Instr(PageCode,"{$ModulePageCode(")>0 Then
					If ModuleType=1 Then
						Sqlstr="Select Fk_View_Id From [Fk_ViewList] Where Fk_View_Show=1 And (Fk_Module_Id="&Id&" Or Fk_Module_LevelList Like '%%,"&Id&",%%')"
						c_Rs2.Open Sqlstr,Conn,1,1
						c_Rs2.PageSize=CreatePageSize
						If c_Rs2.PageCount>0 Then
							CreateCount=c_Rs2.PageCount
						End If
						c_Rs2.Close
					ElseIf ModuleType=3 And c_Rs("Fk_Module_GBookReply")<>3 Then
						Sqlstr="Select Fk_GBook_Id From [Fk_GBook] Where Fk_GBook_Module="&Id&""
						If c_Rs("Fk_Module_GBookReply")=1 Then
							Sqlstr=Sqlstr&" And Fk_GBook_ReIp<>''"
						ElseIf c_Rs("Fk_Module_GBookReply")=2 Then
							Sqlstr=Sqlstr&" And (Fk_GBook_ReIp='' Or Fk_GBook_ReIp Is Null)"
						End If
						c_Rs2.Open Sqlstr,Conn,1,1
						c_Rs2.PageSize=CreatePageSize
						If c_Rs2.PageCount>0 Then
							CreateCount=c_Rs2.PageCount
						End If
						c_Rs2.Close
					Else
						CreateCount=1
					End If
				End If
				
				For PageNow=1 To CreateCount
					CreateTemp=PageCode
					'换页生成
					If PageType="gbook" Then
						CreateTemp=FKTemplate.ModuleChange(CreateTemp,Id,PageType)
					ElseIf PageType="viewlist" Then
						CreateTemp=FKTemplate.ModuleChange(CreateTemp,Id,PageType)
					End If
					CreateTemp=FKTemplate.TemplateChange(CreateTemp)
					
					'链接地址获取
					If ModuleFixedUrl<>"" Then
						If Instr(ModuleFixedUrl,".")>0 Then
							ModuleUrl=FKTemplate.GetUrl(FullSiteDir,"","","",PageSuffix,1,Id,ModuleFixedUrl)
						Else
							If PageNow=1 Then
								ModuleUrl=FKTemplate.GetUrl(FullSiteDir,"","","",PageSuffix,1,Id,ModuleFixedUrl&"Index")
							Else
								ModuleUrl=FKTemplate.GetUrl(FullSiteDir,"","","",PageSuffix,1,Id,ModuleFixedUrl&"Index_"&PageNow)
							End If
						End If
					Else
						If PageNow=1 Then
							ModuleUrl=FKTemplate.GetUrl(FullSiteDir,"",c_Rs("Fk_Module_Url")&"Index","",PageSuffix,1,Id,"")
						Else
							ModuleUrl=FKTemplate.GetUrl(FullSiteDir,"",c_Rs("Fk_Module_Url")&"Index_"&PageNow,"",PageSuffix,1,Id,"")
						End If
					End If
											
					'生成文件
					Call FKFun.CreateHtml(ModuleUrl,CreateTemp)
					
					Response.Write("<p>“<a href='"&ModuleUrl&"' target='_blank'>"&c_Rs("Fk_Module_Name")&" 第"&PageNow&"页</a>”生成成功！</p>")
					Response.Flush()
					Response.Clear()
				Next
								
				c_Rs.MoveNext
				c_i=c_i+1
			Wend
			
			'生成状态取消
			Application.Lock()
			Sqlstr="Update [Fk_Module] Set Fk_Module_ToHtml=0 Where Fk_Module_Id In ("&c_IdList&")"
			Conn.Execute(Sqlstr)
			Application.UnLock()
		Else
			Response.Write("<p>分页栏目页面生成完毕！</p>")
			Response.Flush()
			Response.Clear()
		End If
		c_Rs.Close
		
		If c_PageNow>=c_PageCounts Then
			'转向分页栏目页面生成
			Call ToUrl("Html.asp?Type=3&Create=4")
		Else
			'下一页
			Call ToUrl("Html.asp?Type=3&Create=3")
		End If
	ElseIf CreateType=4 Then '================生成专题页面
		Sqlstr="Select Fk_Subject_Id,Fk_Subject_Name,Fk_Subject_Dir,Fk_Subject_Template From [Fk_Subject] Where Fk_Subject_ToHtml=1 Order By Fk_Subject_Id Asc"
		c_Rs.Open Sqlstr,Conn,1,1
		If Not c_Rs.Eof Then
			c_Rs.PageSize=c_PageSizes
			c_PageCounts=c_Rs.PageCount
			c_Rs.AbsolutePage=c_PageNow
			c_PageRecordCount=c_Rs.RecordCount
			c_i=1
			Response.Write("<p>正在生成专题页面，需生成"&c_PageRecordCount&"条记录，"&c_PageSizes&"条/页，当前还需生成"&c_PageCounts&"页！</p>")
			Response.Flush()
			Response.Clear()
			While (Not c_Rs.Eof) And c_i<c_PageSizes+1
				
				'记录参数读取
				Id=c_Rs("Fk_Subject_Id")
				c_IdList=c_IdList&","&Id
				PageTemplate="subject"
				If c_Rs("Fk_Subject_Template")<>"" Then
					PageTemplate=c_Rs("Fk_Subject_Template")
				End If

				'模板标签解析
				PageCode=FKTemplate.GetTemplate(PageTemplate)
				PageCode=FKTemplate.FileChange(PageCode)
				PageCode=FKTemplate.SiteChange(PageCode)
				PageCode=FKTemplate.SubjectChange(PageCode,Id)
				PageCode=FKTemplate.TemplateChange(PageCode)
				
				SubjectUrl=FKTemplate.GetUrl(FullSiteDir,"","Subject/"&c_Rs("Fk_Subject_Dir")&"/Index","",PageSuffix,3,Id,"")
									
				'生成文件
				Call FKFun.CreateHtml(SubjectUrl,PageCode)
				
				Response.Write("<p>“<a href='"&SubjectUrl&"' target='_blank'>"&c_Rs("Fk_Subject_Name")&"</a>”生成成功！</p>")
				Response.Flush()
				Response.Clear()
				
				c_Rs.MoveNext
				c_i=c_i+1
			Wend
			
			'生成状态取消
			Application.Lock()
			Sqlstr="Update [Fk_Subject] Set Fk_Subject_ToHtml=0 Where Fk_Subject_Id In ("&c_IdList&")"
			Conn.Execute(Sqlstr)
			Application.UnLock()
		Else
			Response.Write("<p>专题页面生成完毕！</p>")
			Response.Flush()
			Response.Clear()
		End If
		c_Rs.Close
		
		If c_PageNow>=c_PageCounts Then
			'转向分页栏目页面生成
			Call ToUrl("Html.asp?Type=3&Create=5")
		Else
			'下一页
			Call ToUrl("Html.asp?Type=3&Create=4")
		End If
	ElseIf CreateType=5 Then '================生成首页
		
		'模板标签解析
		PageTemplate="index"
		PageCode=FKTemplate.GetTemplate(PageTemplate)
		PageCode=FKTemplate.FileChange(PageCode)
		PageCode=FKTemplate.SiteChange(PageCode)
		PageCode=Replace(PageCode,"{$NavNow$}",0)   '首页静态生成高亮设置
		PageCode=FKTemplate.TemplateChange(PageCode)
		PageCode=Replace(PageCode,"{$SiteBreadCrumb$}","")
		
		'生成文件
		Call FKFun.CreateHtml(FullSiteDir&"Index"&PageSuffix,PageCode)
		
		Response.Write("<p>“<a href='"&FullSiteDir&"Index"&PageSuffix&"' target='_blank'>首页</a>”生成成功！</p>")
		Response.Flush()
		Response.Clear()
		
		Call cEnd()
	End If
End Sub

'==========================================
'函 数 名：cTop()
'作    用：生成页格式规范
'==========================================
Function cTop()
%>
<html>
<title><%=SystemName%> <%=SystemVersion%></title>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
* {margin:0;padding:0;}
body,td,th {font-size:12px;}
body {margin:10px;}
a {font-size:12px;color:#000;text-decoration:none;}
a:visited {color:#000;text-decoration:none;}
a:hover {color:#000;text-decoration:none;}
a:active {color:#000;text-decoration:none;}
p {line-height:20px;}
</style>
</head>
<body>
<%
End Function

'==========================================
'函 数 名：cEnd()
'作    用：生成结束
'==========================================
Function cEnd()
%>
<p style='color:red;'>生成操作完成！</p>
<script>alert('生成成功');</script>
</body>
</html>
<%
	Call FKFun.PageEnd()
End Function

'==========================================
'函 数 名：ToUrl()
'作    用：转向页面
'==========================================
Function ToUrl(cUrl)
%>
<meta http-equiv="refresh" content="0;URL=<%=cUrl%>">
<%
End Function

Call FKFun.PageEnd()
%>
