<%
dim About_id,title,precis,content_About,PaginationType1,MaxCharPerPage
dim founderr,errmsg
if request.querystring("id")<>"" then
    if not isInteger(request.querystring("id")) then
        Response.Redirect "show_error.asp?eid=传值参数非法!"
        Response.End
    end if
	About_id=CLng(request("id"))
else
	Response.Redirect "show_error.asp?eid=请指定操作对象!"
        Response.End
end if
if About_id>0 then
   sql="select * from Channel where id="&About_id
   set rs=server.createobject("adodb.recordset")
   rs.open sql,conn,1,1
	if rs.bof and rs.eof then
		FoundErr=True
		ErrMsg=ErrMsg & "<br><li>你要找的频道不存在，或者已经被管理员删除！</li>"
	else	
		start="频道中心 - "&rs("title")&""
                About_id= rs("id")
                title = rs("title")
                precis = rs("precis")
		'precis = Ubb2Html(formatStr(autourl(rs("precis"))),true,true)
                content_About=rs("content")
                PaginationType1=rs("PaginationType")
                MaxCharPerPage=rs("MaxCharPerPage")
                rs.close
                set rs=nothing
	end if
end if

'=================================================
if FoundErr=True then
	Call HxErrMsg()
	response.end
end if

'=================================================
'过程名：main_About
'作  用：显示频道位置导航
'参  数：无
'=================================================
sub main_About()
if About_id>0 then
  Response.Write "您的位置： <a href='index.asp'>"&webname&"</a> >> 频道中心" & vbCrLf
  sql="select * from Channel where id="&About_id
  set rs3=conn.execute(sql)
  if rs3.eof then
  Response.Redirect "show_error.asp?eid=参数错误，找不到相关的记录!"
  Response.End
  End IF
  if rs3("mainid")<>"" then
     sql="select * from Channel where id="&rs3("mainid")
     set rs4=conn.execute(sql)
     Response.Write " >> <a href=""?id="&rs4("id")&""">"&rs4("title")&"</a>" 
     rs4.close
     set rs4=nothing
  end if
  Response.Write " >> <a href=""?id="&rs3("id")&""">"&rs3("title")&"</a>" 
  rs3.close
  set rs3=nothing 
else
  Response.Write "您的位置： <a href='index.asp'>"&webname&"</a> >> 频道中心" & vbCrLf
end if
end sub

'=================================================
'过程名：class_About
'作  用：显示下级频道
'参  数：无
'=================================================
sub class_About()
Response.Write "<table width='100%' border='0' cellspacing='0' cellpadding='0' align='center' style=""word-break:break-all;table-layout:fixed;text-align:left"">"
Set rs=server.CreateObject("Adodb.Recordset")
sql="select * from Channel where f_id="&About_id&" order by id"
rs.open sql,conn,1,1
IF rs.eof Then
response.write "<tr><td><div style=""padding-left:10px;padding-right:10px;LINE-HEIGHT: 180%"" class=""table-xia"">"&precis&"</div></td></tr>"
Else
do while not(rs.eof)
response.write "<tr><td class=table-xia>"
response.write "<a href='?id="&rs("id")&"'>&nbsp;&nbsp;<font color=""red"">·</font>&nbsp;"&rs("title")&"</a>"
response.write "</td></tr>"
rs.movenext
loop
End IF
rs.close
set rs = nothing
response.write "<tr><td align='right'><a href='"&Request.ServerVariables("HTTP_REFERER")&"'><img src='img/back.gif' border='0'></a>&nbsp;&nbsp;</td></tr>"
Response.Write "</table>"
end sub

'=================================================
'过程名：ShowAbout
'作  用：显示文章内容，可以分页显示
'参  数：无
'=================================================
sub ShowAbout()
dim PaginationType
PaginationType=PaginationType1
select case PaginationType
	case 0    '不分页显示
		response.write content_About
	case 1    '自动分页显示
		call AutoPagination()
	case 2    '手动分页显示
		call ManualPagination()
end select
end sub
'=================================================
'过程名：ManualPagination
'作  用：采用手动分页方式显示文章内容
'参  数：无
'=================================================
sub ManualPagination()
dim ArtID,strContent,CurrentPage
dim ContentLen,MaxPerPage,pages,i
dim arrContent
ArtID=About_id
strContent=content_About
ContentLen=len(strContent)
CurrentPage=trim(request("Page"))
if Instr(strContent,"[NextPage]")<=0 then
	response.write strContent
	response.write "</p><p align='center'><font color='red'><b>[1]</b></font></p>"
else
	arrContent=split(strContent,"[NextPage]")
	pages=Ubound(arrContent)+1
	if CurrentPage="" then
		CurrentPage=1
	else
	CurrentPage=Cint(CurrentPage)
	end if
	if CurrentPage<1 then CurrentPage=1
	if CurrentPage>pages then CurrentPage=pages
	response.write arrContent(CurrentPage-1)
	response.write "</p><p align='center'><b>"
	if CurrentPage>1 then
		response.write "<a href='about.asp?id="&ArtID&"&page="&CurrentPage-1&"'>上一页</a>&nbsp;"
	end if
	for i=1 to pages
		if i=CurrentPage then
			response.write "<font color='red'>[" & cstr(i) & "]</font>&nbsp;"
		else
			response.write "<a href='about.asp?id="&ArtID&"&page="&i&"'>["& i &"]</a>&nbsp;"
		end if
	next
	if CurrentPage<pages then
		response.write "<a href='about.asp?id="&ArtID&"&page="&CurrentPage+1&"'>下一页</a>"
	end if
	response.write "</b></p>"
end if
end sub
'=================================================
'过程名：AutoPagination
'作  用：采用自动分页方式显示文章内容
'参  数：无
'=================================================
sub AutoPagination()
dim ArtID,strContent,CurrentPage
dim ContentLen,MaxPerPage,pages,i,lngBound
dim BeginPoint,EndPoint
ArtID=About_id
strContent=content_About
ContentLen=len(strContent)
CurrentPage=trim(request("Page"))
if ContentLen<=MaxCharPerPage then
	response.write strContent
	response.write "</p><p align='center'><font color='red'><b>[1]</b></font></p>"
else
	if CurrentPage="" then
		CurrentPage=1
	else
		CurrentPage=Cint(CurrentPage)
	end if
	pages=ContentLen\MaxCharPerPage
	if MaxCharPerPage*pages<ContentLen then
		pages=pages+1
	end if
	lngBound=ContentLen  '最大误差范围
	if CurrentPage<1 then CurrentPage=1
	if CurrentPage>pages then CurrentPage=pages

	dim lngTemp
	dim lngTemp1,lngTemp1_1,lngTemp1_2,lngTemp1_1_1,lngTemp1_1_2,lngTemp1_1_3,lngTemp1_2_1,lngTemp1_2_2,lngTemp1_2_3
	dim lngTemp2,lngTemp2_1,lngTemp2_2,lngTemp2_1_1,lngTemp2_1_2,lngTemp2_2_1,lngTemp2_2_2
	dim lngTemp3,lngTemp3_1,lngTemp3_2,lngTemp3_1_1,lngTemp3_1_2,lngTemp3_2_1,lngTemp3_2_2
	dim lngTemp4,lngTemp4_1,lngTemp4_2,lngTemp4_1_1,lngTemp4_1_2,lngTemp4_2_1,lngTemp4_2_2
	dim lngTemp5,lngTemp5_1,lngTemp5_2
	dim lngTemp6,lngTemp6_1,lngTemp6_2
		
	if CurrentPage=1 then
		BeginPoint=1
	else
		BeginPoint=MaxCharPerPage*(CurrentPage-1)+1
			
		lngTemp1_1_1=instr(BeginPoint,strContent,"</table>",1)
		lngTemp1_1_2=instr(BeginPoint,strContent,"</TABLE>",1)
		lngTemp1_1_3=instr(BeginPoint,strContent,"</Table>",1)
		if lngTemp1_1_1>0 then
			lngTemp1_1=lngTemp1_1_1
		elseif lngTemp1_1_2>0 then
			lngTemp1_1=lngTemp1_1_2
		elseif lngTemp1_1_3>0 then
			lngTemp1_1=lngTemp1_1_3
		else
			lngTemp1_1=0
		end if
							
		lngTemp1_2_1=instr(BeginPoint,strContent,"<table",1)
		lngTemp1_2_2=instr(BeginPoint,strContent,"<TABLE",1)
		lngTemp1_2_3=instr(BeginPoint,strContent,"<Table",1)
		if lngTemp1_2_1>0 then
			lngTemp1_2=lngTemp1_2_1
		elseif lngTemp1_2_2>0 then
			lngTemp1_2=lngTemp1_2_2
		elseif lngTemp1_2_3>0 then
			lngTemp1_2=lngTemp1_2_3
		else
			lngTemp1_2=0
		end if
			
		if lngTemp1_1=0 and lngTemp1_2=0 then
			lngTemp1=BeginPoint
		else
			if lngTemp1_1>lngTemp1_2 then
				lngtemp1=lngTemp1_2
			else
				lngTemp1=lngTemp1_1+8
			end if
		end if

		lngTemp2_1_1=instr(BeginPoint,strContent,"</p>",1)
		lngTemp2_1_2=instr(BeginPoint,strContent,"</P>",1)
		if lngTemp2_1_1>0 then
			lngTemp2_1=lngTemp2_1_1
		elseif lngTemp2_1_2>0 then
			lngTemp2_1=lngTemp2_1_2
		else
			lngTemp2_1=0
		end if
						
		lngTemp2_2_1=instr(BeginPoint,strContent,"<p",1)
		lngTemp2_2_2=instr(BeginPoint,strContent,"<P",1)
		if lngTemp2_2_1>0 then
			lngTemp2_2=lngTemp2_2_1
		elseif lngTemp2_2_2>0 then
			lngTemp2_2=lngTemp2_2_2
		else
			lngTemp2_2=0
		end if
			
		if lngTemp2_1=0 and lngTemp2_2=0 then
			lngTemp2=BeginPoint
		else
			if lngTemp2_1>lngTemp2_2 then
				lngtemp2=lngTemp2_2
			else
				lngTemp2=lngTemp2_1+4
			end if
		end if

		lngTemp3_1_1=instr(BeginPoint,strContent,"</ur>",1)
		lngTemp3_1_2=instr(BeginPoint,strContent,"</UR>",1)
		if lngTemp3_1_1>0 then
			lngTemp3_1=lngTemp3_1_1
		elseif lngTemp3_1_2>0 then
			lngTemp3_1=lngTemp3_1_2
		else
			lngTemp3_1=0
		end if
			
		lngTemp3_2_1=instr(BeginPoint,strContent,"<ur",1)
		lngTemp3_2_2=instr(BeginPoint,strContent,"<UR",1)
		if lngTemp3_2_1>0 then
			lngTemp3_2=lngTemp3_2_1
		elseif lngTemp3_2_2>0 then
			lngTemp3_2=lngTemp3_2_2
		else
			lngTemp3_2=0
		end if
					
		if lngTemp3_1=0 and lngTemp3_2=0 then
			lngTemp3=BeginPoint
		else
			if lngTemp3_1>lngTemp3_2 then
				lngtemp3=lngTemp3_2
			else
				lngTemp3=lngTemp3_1+5
			end if
		end if
			
		if lngTemp1<lngTemp2 then
			lngTemp=lngTemp2
		else
		lngTemp=lngTemp1
		end if
		if lngTemp<lngTemp3 then
			lngTemp=lngTemp3
		end if

		if lngTemp>BeginPoint and lngTemp<=BeginPoint+lngBound then
			BeginPoint=lngTemp
		else
			lngTemp4_1_1=instr(BeginPoint,strContent,"</li>",1)
			lngTemp4_1_2=instr(BeginPoint,strContent,"</LI>",1)
			if lngTemp4_1_1>0 then
				lngTemp4_1=lngTemp4_1_1
			elseif lngTemp4_1_2>0 then
				lngTemp4_1=lngTemp4_1_2
			else
				lngTemp4_1=0
			end if
				
			lngTemp4_2_1=instr(BeginPoint,strContent,"<li",1)
			lngTemp4_2_1=instr(BeginPoint,strContent,"<LI",1)
			if lngTemp4_2_1>0 then
				lngTemp4_2=lngTemp4_2_1
			elseif lngTemp4_2_2>0 then
				lngTemp4_2=lngTemp4_2_2
			else
				lngTemp4_2=0
			end if
				
			if lngTemp4_1=0 and lngTemp4_2=0 then
				lngTemp4=BeginPoint
			else
				if lngTemp4_1>lngTemp4_2 then
					lngtemp4=lngTemp4_2
				else
					lngTemp4=lngTemp4_1+5
				end if
			end if
				
			if lngTemp4>BeginPoint and lngTemp4<=BeginPoint+lngBound then
				BeginPoint=lngTemp4
			else					
				lngTemp5_1=instr(BeginPoint,strContent,"<img",1)
				lngTemp5_2=instr(BeginPoint,strContent,"<IMG",1)
				if lngTemp5_1>0 then
					lngTemp5=lngTemp5_1
				elseif lngTemp5_2>0 then
					lngTemp5=lngTemp5_2
				else
					lngTemp5=BeginPoint
				end if
					
				if lngTemp5>BeginPoint and lngTemp5<BeginPoint+lngBound then
					BeginPoint=lngTemp5
				else
					lngTemp6_1=instr(BeginPoint,strContent,"<br>",1)
					lngTemp6_2=instr(BeginPoint,strContent,"<BR>",1)
					if lngTemp6_1>0 then
						lngTemp6=lngTemp6_1
					elseif lngTemp6_2>0 then
						lngTemp6=lngTemp6_2
					else
						lngTemp6=0
					end if
					
					if lngTemp6>BeginPoint and lngTemp6<BeginPoint+lngBound then
						BeginPoint=lngTemp6+4
					end if
				end if
			end if
		end if
	end if

	if CurrentPage=pages then
		EndPoint=ContentLen
	else
	EndPoint=MaxCharPerPage*CurrentPage
	if EndPoint>=ContentLen then
		EndPoint=ContentLen
	else
		lngTemp1_1_1=instr(EndPoint,strContent,"</table>",1)
		lngTemp1_1_2=instr(EndPoint,strContent,"</TABLE>",1)
		lngTemp1_1_3=instr(EndPoint,strContent,"</Table>",1)
		if lngTemp1_1_1>0 then
			lngTemp1_1=lngTemp1_1_1
		elseif lngTemp1_1_2>0 then
			lngTemp1_1=lngTemp1_1_2
		elseif lngTemp1_1_3>0 then
			lngTemp1_1=lngTemp1_1_3
		else
			lngTemp1_1=0
		end if
							
		lngTemp1_2_1=instr(EndPoint,strContent,"<table",1)
		lngTemp1_2_2=instr(EndPoint,strContent,"<TABLE",1)
		lngTemp1_2_3=instr(EndPoint,strContent,"<Table",1)
		if lngTemp1_2_1>0 then
			lngTemp1_2=lngTemp1_2_1
		elseif lngTemp1_2_2>0 then
			lngTemp1_2=lngTemp1_2_2
		elseif lngTemp1_2_3>0 then
			lngTemp1_2=lngTemp1_2_3
		else
			lngTemp1_2=0
		end if
			
		if lngTemp1_1=0 and lngTemp1_2=0 then
			lngTemp1=EndPoint
		else
			if lngTemp1_1>lngTemp1_2 then
				lngtemp1=lngTemp1_2-1
			else
				lngTemp1=lngTemp1_1+7
			end if
		end if

		lngTemp2_1_1=instr(EndPoint,strContent,"</p>",1)
		lngTemp2_1_2=instr(EndPoint,strContent,"</P>",1)
		if lngTemp2_1_1>0 then
			lngTemp2_1=lngTemp2_1_1
		elseif lngTemp2_1_2>0 then
			lngTemp2_1=lngTemp2_1_2
		else
			lngTemp2_1=0
		end if
						
		lngTemp2_2_1=instr(EndPoint,strContent,"<p",1)
		lngTemp2_2_2=instr(EndPoint,strContent,"<P",1)
		if lngTemp2_2_1>0 then
			lngTemp2_2=lngTemp2_2_1
		elseif lngTemp2_2_2>0 then
			lngTemp2_2=lngTemp2_2_2
		else
			lngTemp2_2=0
		end if
			
		if lngTemp2_1=0 and lngTemp2_2=0 then
			lngTemp2=EndPoint
		else
			if lngTemp2_1>lngTemp2_2 then
				lngTemp2=lngTemp2_2-1
			else
				lngTemp2=lngTemp2_1+3
			end if
		end if

		lngTemp3_1_1=instr(EndPoint,strContent,"</ur>",1)
		lngTemp3_1_2=instr(EndPoint,strContent,"</UR>",1)
		if lngTemp3_1_1>0 then
			lngTemp3_1=lngTemp3_1_1
		elseif lngTemp3_1_2>0 then
			lngTemp3_1=lngTemp3_1_2
		else
			lngTemp3_1=0
		end if
			
		lngTemp3_2_1=instr(EndPoint,strContent,"<ur",1)
		lngTemp3_2_2=instr(EndPoint,strContent,"<UR",1)
		if lngTemp3_2_1>0 then
			lngTemp3_2=lngTemp3_2_1
		elseif lngTemp3_2_2>0 then
			lngTemp3_2=lngTemp3_2_2
		else
			lngTemp3_2=0
		end if
					
		if lngTemp3_1=0 and lngTemp3_2=0 then
			lngTemp3=EndPoint
		else
			if lngTemp3_1>lngTemp3_2 then
				lngtemp3=lngTemp3_2-1
			else
				lngTemp3=lngTemp3_1+4
			end if
		end if
			
		if lngTemp1<lngTemp2 then
			lngTemp=lngTemp2
		else
			lngTemp=lngTemp1
		end if
		if lngTemp<lngTemp3 then
			lngTemp=lngTemp3
		end if

		if lngTemp>EndPoint and lngTemp<=EndPoint+lngBound then
			EndPoint=lngTemp
		else
			lngTemp4_1_1=instr(EndPoint,strContent,"</li>",1)
			lngTemp4_1_2=instr(EndPoint,strContent,"</LI>",1)
			if lngTemp4_1_1>0 then
				lngTemp4_1=lngTemp4_1_1
			elseif lngTemp4_1_2>0 then
				lngTemp4_1=lngTemp4_1_2
			else
				lngTemp4_1=0
			end if
				
			lngTemp4_2_1=instr(EndPoint,strContent,"<li",1)
			lngTemp4_2_1=instr(EndPoint,strContent,"<LI",1)
			if lngTemp4_2_1>0 then
				lngTemp4_2=lngTemp4_2_1
			elseif lngTemp4_2_2>0 then
				lngTemp4_2=lngTemp4_2_2
			else
				lngTemp4_2=0
			end if
				
			if lngTemp4_1=0 and lngTemp4_2=0 then
				lngTemp4=EndPoint
			else
				if lngTemp4_1>lngTemp4_2 then
					lngtemp4=lngTemp4_2-1
				else
					lngTemp4=lngTemp4_1+4
				end if
			end if
				
			if lngTemp4>EndPoint and lngTemp4<=EndPoint+lngBound then
				EndPoint=lngTemp4
			else					
				lngTemp5_1=instr(EndPoint,strContent,"<img",1)
				lngTemp5_2=instr(EndPoint,strContent,"<IMG",1)
				if lngTemp5_1>0 then
					lngTemp5=lngTemp5_1-1
				elseif lngTemp5_2>0 then
					lngTemp5=lngTemp5_2-1
				else
					lngTemp5=EndPoint
				end if
					
				if lngTemp5>EndPoint and lngTemp5<EndPoint+lngBound then
					EndPoint=lngTemp5
				else
					lngTemp6_1=instr(EndPoint,strContent,"<br>",1)
					lngTemp6_2=instr(EndPoint,strContent,"<BR>",1)
					if lngTemp6_1>0 then
						lngTemp6=lngTemp6_1+3
					elseif lngTemp6_2>0 then
						lngTemp6=lngTemp6_2+3
					else
						lngTemp6=EndPoint
					end if
					
					if lngTemp6>EndPoint and lngTemp6<EndPoint+lngBound then
						EndPoint=lngTemp6
					end if
				end if
			end if
		end if
	end if
	end if
	response.write mid(strContent,BeginPoint,EndPoint-BeginPoint)
	response.write "</p><p align='center'><b>"
	if CurrentPage>1 then
		response.write "<a href='about.asp?id="&ArtID&"&page="&CurrentPage-1&"'>上一页</a>&nbsp;"
	end if
	for i=1 to pages
		if i=CurrentPage then
			response.write "<font color='red'>[" & cstr(i) & "]</font>&nbsp;"
		else
			response.write "<a href='about.asp?id="&ArtID&"&page="&i&"'>["& i &"]</a>&nbsp;"
		end if
	next
	if CurrentPage<pages then
		response.write "<a href='about.asp?id="&ArtID&"&page="&CurrentPage+1&"'>下一页</a>"
	end if
	response.write "</b></p>"
end if
end sub
%>
