/*
插件名称：跳楼及版面跳页插件
插件作者：斯大里(stardy) http://www.stardy.com (qq:2885464)
演示地址：http://www.stardy.com/bbs
脚本更新：2005年3月28日
*/
var ArrowStr="∨"	//箭头字符(可以是图片,也可为空）
var startPage = 10  //列表跳页起始页码
var maxHeight=180	//列表版面菜单最长长度(px)
var perlineNum = 4		//列表版面每行多少页码
var nowFloor=0
function detectDispFloor()
{
	var url=document.location.toString()
	if(url.replace(/\/index.asp\?boardid\=/,"")!=url){detectBoardFloor();return;}
	if(url.replace(/\/dispbbs.asp\?/,"")==url)return;
	if(TopicNum<2)return;var k=0;nowFloor=-1
	var floor = document.getElementsByTagName("td")
	for(var i=0;i<floor.length;i++)
	{
		if(floor[i].name=="std_floor")makeFloor(floor[i],++k)
	}
	floor=null
	if(document.location.hash!="")document.location.replace("#"+document.location.hash)
}
function makeFloor(obj,k)
{
	with(obj)
	{
		noWrap = true
		innerHTML = "<a name=f"+k+" style='color:"+alertcolor+"'>"+ArrowStr+"</a>" + innerHTML
		onmouseover = function(){showfloorMenu(obj,k)}
		style.cursor ="hand"
	}
}
function showfloorMenu(obj,k)
{
	var objtable=document.all.floorTable
	if(typeof(obj)=="object"&&typeof(objtable)=="object"&&(k+(star-1)*Board_Setting27)==nowFloor)
	{
		if(objtable.parentElement){
			if(objtable.parentElement.style.visibility=="visible")return;
		}
		else return;
	}
	nowFloor=k+(star-1)*Board_Setting27
	var nowPage=parseInt(typeof(obj)=="object"?star:obj)
	var menustr='<table id=floorTable onclick="showNothing()" cellpadding=0 cellspacing=1 class=tableborder1 style="width:80">'
	menustr+='<tr><th colspan=2 style="height:21" nowrap>请您选择楼层</th></tr>'
	var Tpage=Math.ceil(TopicNum/Board_Setting27)
	var Vfloor=Math.min(Board_Setting27,TopicNum-Board_Setting27*(nowPage-1))
	for(var i=1;i<=Vfloor;i++)
	{
		if(i==1)
		{
			menustr+='<tr><td nowrap valign=top style="display:'+(Tpage>1?"block;width:70":"none")+'" class=tablebody2 align=center rowspan='+Vfloor+'>'
			menustr+='<div class=menuitems style="overflow-y:scroll;height:'+Math.max(70,20*Vfloor)+'">'
			for(var j=1;j<=Tpage;j++)
			{
				menustr+='<div style="word-break:keep-all;">'+(j!=nowPage?'<a style="padding:0px;height:20" href=javascript:showfloorMenu('+j+','+k+')>第'+j+'页</a>':'<span style="color:red">第'+j+'页</span>')
				if(Tpage>1&&(j==nowPage+1||j==nowPage&&Tpage==nowPage))menustr+='<input style="width:0;height:0" name=nowPage>'
				menustr+='</div>'
			}
				menustr+='</div></td>'
		}
		var tmp=(parseInt(nowPage)-1)*Board_Setting27+i
		menustr+=(i==1?'':'<tr>')+'<td nowrap height=18 align=center style="padding-right:8px;padding-left:8px" class=tablebody'+(i%2+1)+'>'+(nowFloor==tmp?"<font title=当前楼层 color="+alertcolor+'><b>第 '+tmp+' 楼</b></font>':'<a style="padding:0" href=javascript:gotoFloor('+tmp+')>第 '+tmp+' 楼</a>')+'</td></tr>'
	}
	menustr+="</table>"
	menustr=menustr.replace(/第 1 楼/,"楼 主")
	if(typeof(obj)=="object")showmenu(obj,menustr)
	else objtable.outerHTML=menustr;
	if(document.all.nowPage){setTimeout("document.all.nowPage.focus()",200)}
}
function showNothing()
{
	document.all.floorTable.outerHTML+=""
}
function killp(kurl,p2){
	if(kurl=="")return "";
	kurl=kurl.replace(eval("/([\&?]"+p2+"=.[^\&]*)/ig"),"");
	kurl=kurl.replace(/\?/,"")
	kurl=(kurl.substr(0,1)=="&"?kurl.substr(1):kurl);
	return kurl;
}
function gotoFloor(f){
	var url=document.location;
	var urlstr=url.search,fstar=Math.ceil(f/Board_Setting27);
	f=f%Board_Setting27;if(f==0)f=10;
	if(fstar!=star){
		urlstr=killp(urlstr,"star");
		urlstr+="&star="+fstar;}
	if(urlstr.toLowerCase().indexOf("skin=1")!=-1)urlstr=killp(killp(urlstr,"skin"),"replyid");
	if(url!=""&&urlstr.substr(0,1)!="?")urlstr="?"+urlstr;
	hidemenu()
	document.location.replace(url.pathname+urlstr+(f==1?"#top":"#f"+f));
}
function detectBoardFloor()
{
	var endPage = document.links("std_floor")
	if(endPage==null)return;
	nowFloor=-1
	if(typeof(endPage.length)=="number")
	{
		for(var i=0;i<endPage.length;i++)
			makeIndexFloor(endPage[i],i)
		}
	else makeIndexFloor(endPage,1)
	endPage=null
}
function makeIndexFloor(obj,k)
{
	if(obj.innerText<="10")return;
	var newobj=document.createElement("<span>")
	var url=obj.href.substr(obj.href.lastIndexOf("/")+1)
	with(newobj)
	{
		innerHTML=ArrowStr
		style.color=obj.childNodes(0).color
		onmouseover=function(){showBoardFloor(this,url,obj.innerText,k)}
		style.cursor="hand"
	}
	obj.insertAdjacentElement("beforeBegin",newobj)
}
function showBoardFloor(obj,url,Page,nowIndex)
{
	var objtable=document.all.floorTable
	if(nowIndex==nowFloor&&typeof(objtable)=="object")
	{
		if(objtable.parentElement){
			if(objtable.parentElement.style.visibility=="visible")return;
		}
		else return;
	}
	nowFloor=nowIndex
	var menustr='<span id="floorTable" class=menuitems style="padding-left:20px;padding-right:15px;overflow-y:auto;height:'+Math.min(maxHeight,3+19*Math.ceil((Page-startPage+1)/perlineNum))+'">'
	for(var k=0;k<=Page-startPage;k++)
	{
		menustr+='<a style="padding:0px" href="'+url.replace(/([\&]star=.[^\&]*)/ig,"&star="+(k+startPage))+'" title="到第'+(k+startPage)+'页">【'+(k+startPage)+'】</a>'
		if(k%perlineNum==perlineNum-1)menustr+="<br>"
	}
	menustr+='</span>'
	showmenu(obj,menustr)
}
detectDispFloor()
