//弹出层
tPopWait		= 30;
tPopShow		= 5000;
showPopStep		= 25;
popOpacity		= 100;
sPop			= null;
curShow			= null;
tFadeOut		= null;
tFadeIn			= null;
tFadeWaiting	= null;

var flag=false;
function DrawImage(ImgD,FitWidth,FitHeight){
   var image=new Image();
   image.src=ImgD.src;
   if(image.width>0 && image.height>0){
    flag=true;
    if(image.width/image.height>= FitWidth/FitHeight){
     if(image.width>FitWidth){  
     ImgD.width=FitWidth;
     ImgD.height=(image.height*FitWidth)/image.width;
     }else{
     ImgD.width=image.width;  
     ImgD.height=image.height;
     }
     ImgD.alt="";
     }
    else{
     if(image.height>FitHeight){  
     ImgD.height=FitHeight;
     ImgD.width=(image.width*FitHeight)/image.height;     
     }else{
     ImgD.width=image.width;  
     ImgD.height=image.height;
     }
     ImgD.alt="";
     }
    }
} 

document.write("<div id='poplayer'></div>");
function popIt()
{
	if (window.event)
	{
		var o  = event.srcElement;
		MouseX = event.x;
		MouseY = event.y;
		if (o.pop != null && o.pop != '')
		{
			o.dypop = o.pop;
			o.pop = '';
		}
		if (o.dypop != sPop)
		{
			sPop = o.dypop;
			clearTimeout(curShow);
			clearTimeout(tFadeOut);
			clearTimeout(tFadeIn);
			clearTimeout(tFadeWaiting);	
			if (sPop == null || sPop == '')
			{
				poplayer.innerHTML = '';
				poplayer.style.filter = 'Alpha()';
				poplayer.filters.Alpha.opacity = 0;	
			}
			else
			{
				curShow = setTimeout('showIt()', tPopWait);
			}
		}
	}
}
function showIt()
{
	poplayer.innerHTML = sPop;
	popWidth  = poplayer.clientWidth;
	popHeight = poplayer.clientHeight;
	if (MouseX+12+popWidth > document.body.clientWidth)
	{
		popLeftAdjust = -popWidth - 24;
	}
	else
	{
		popLeftAdjust = 0;
	}
	if (MouseY+12+popHeight > document.body.clientHeight)
	{
		popTopAdjust = -popHeight - 24;
	}
	else
	{
		popTopAdjust = 0;
	}
	poplayer.style.left	= MouseX + 12 + document.body.scrollLeft + popLeftAdjust;
	poplayer.style.top	= MouseY + 12 + document.body.scrollTop + popTopAdjust;
	poplayer.style.filter	= 'Alpha(Opacity=0)';
	fadeOut();
}
function fadeOut()
{
	if (poplayer.filters.Alpha.opacity < popOpacity)
	{
		poplayer.filters.Alpha.opacity += showPopStep;
		tFadeOut = setTimeout("fadeOut()", 1);
	}
	else
	{
		poplayer.filters.Alpha.opacity = popOpacity;
		tFadeWaiting = setTimeout("fadeIn()", tPopShow);
	}
}
function fadeIn()
{
	if (poplayer.filters.Alpha.opacity > 0)
	{
		poplayer.filters.Alpha.opacity -= 1;
		tFadeIn = setTimeout("fadeIn()", 1);
	}
}
document.onmouseover = popIt;



//表单提交
function submitonce(f)
{
	if (document.all || document.getElementById)
	{
		for (i=0; i<f.elements.length; i++)
		{
			var tempobj = f.elements[i];
			if (tempobj.type.toLowerCase() == 'submit' || tempobj.type.toLowerCase() == 'button' || tempobj.type.toLowerCase() == 'reset')
			{
				tempobj.disabled = true;
			}
		}
	}
}


//Ctrl + Enter 提交
var isSubmited;
isSubmited = false;
function ctlent()
{
	if (window.event)
	{
		if(!isSubmited && (event.ctrlKey && window.event.keyCode == 13))
		{
			isSubmited = true;
			return chkPost();
		}
	}
}


//论坛跳转
function boardJump(o)
{
	if (o.options[o.selectedIndex].value.indexOf(',') == -1 && o.options[o.selectedIndex].value != -1)
	{
		location.href = 'board.aspx?boardid=' + o.options[o.selectedIndex].value;
	}
}



//分页函数
function pager(url, page, maxpage, total, per, countsvisible)
{
	var s;
	if (countsvisible) {
		s = "<div style='float:left'>";
	} else {
		s = "<div>";
	}
	s += ("<font class='t3' style='font-family:Courier New;font-size:12px'>");
	if (page == 1) {
		s += ("首页 上页 <b>");
	} else {
		s += ("<a href='" + url + "page=1'>首页</a> ");
		s += ("<a href='" + url + "page=" + (page-1) + "'>上页</a> <b>");
	}
	var j = (page-5<1) ? 1 : page-5;
	var k = (page+5>maxpage) ? maxpage : page+5;
	if (j > 1) {
		s += " <a href='" + url + "page=1'>1</a> ... ";
	}
	var i;
	for(i=j; i<k+1; i++) {
		if (page == i) {
			s += ("<span class='t2'>" + i + "</span> ");
		} else {
			s += ("<a href='" + url + "page=" + i + "'>" + i + "</a> ");
		}
	}
	if (maxpage > k) {
		s += " ... <a href='" + url + "page=" + maxpage + "'>" + maxpage + "</a> ";
	}
	if (page == maxpage) {
		s += ("</b>下页 末页");
	} else {
		s += ("</b><a href='" + url + "page=" + (page+1) + "'>下页</a> ");
		s += ("<a href='" + url + "page=" + maxpage + "'>末页</a>");
	}
	s += ("</font></div>");
	if (countsvisible)
	{
		s += ("<div style='float:right'>");
		s += ("总记录:<span class='t2'>" + total + "</span>　");
		s += ("总页数:<span class='t2'>" + maxpage + "</span>　");
		s += ("每页:<span class='t2'>" + per + "</span></div>");
	}
	return s;
}


//字符空间距
function len(str)
{
	var fixedLength = 0;
	for(i=0; i<str.length; i++)
	{
		charCode = str.charCodeAt(i);
		if (charCode < 1000)	
		{
			fixedLength += 1;
		}
		else
		{
			fixedLength += 2;
		}
	}
	return fixedLength;
}


//UBB解释函数
function trim(fstr)
{
	return fstr.replace(/(^\s*)|(\s*$)/g, '');
}
function htmlEncode(fstr)
{
	var str = fstr.replace(/&/g, '&amp;');
	str = str.replace(/  /g, ' &nbsp;');
	str = str.replace(/\t/g, ' &nbsp; &nbsp;');
	str = str.replace(/\"/, '&quot;');
	str = str.replace(/\'/, '&#39;');
	str = str.replace(/</g, '&lt;');
	str = str.replace(/>/g, '&gt;');
	str = str.replace(/\r/g, '');
	str = str.replace(/\n\n/g, '<p></p>');
	str = str.replace(/\n/g, '<br>');
	str = str.replace(/(妈的|你妈|妈b|妈比|fuck|shit|我日|法轮)/gi, "**");
	return str;
}
function textEncode(fstr)
{
	var str = fstr.replace(/&/g, '&amp;');
	str = str.replace(/</g, '&lt;');
	str = str.replace(/>/, '&gt;');
	return str;
}
function regExp(fstr)
{
	var str=htmlEncode(fstr);
	str = str.replace(/\{\/((jy)|(pz)|(se)|(fd)|(dy)|(ll)|(hx)|(bz)|(shui)|(dk)|(gg)|(fn)|(tp)|(cy)|(wx)|(ng)|(kuk)|(feid)|(zk)|(tu)|(tx)|(ka)|(by)|(am)|(jie)|(kun)|(jk)|(lh)|(hanx)|(db)|(fendou)|(zhm)|(yiw)|(xu)|(yun)|(zhem)|(shuai)|(kl)|(qiao)|(zj)|(shan)|(fad)|(aiq)|(tiao)|(zhao)|(mm)|(zt)|(maom)|(xg)|(yb)|(qianc)|(dp)|(bei)|(dg)|(shd)|(zhd)|(dao)|(zq)|(yy)|(bb)|(cf)|(fan)|(yw)|(mg)|(dx)|(wen)|(xin)|(xs)|(hy)|(lw)|(dh)|(sj)|(yj)|(ds)|(ty)|(yl)|(qiang)|(ruo)|(ws)|(shl))}/gi, "<img src='emotion/$1.gif' width='20' height='20'>");
	str = str.replace(/\[((\/?b)|(\/?i)|(\/?u)|(\/?sub)|(\/?sup))\]/gi, "<$1>");
	str = str.replace(/\[color=((#[A-Fa-f0-9]{6})|[a-zA-Z]{3,6})\]/gi, "<font color='$1'>");
	str = str.replace(/\[\/color\]/gi, "</font>");
	str=str.replace(/([^>=\]])((http|https|ftp|rtsp|mms):(\/\/|\\\\)[A-Za-z0-9%\-_@]+\.[A-Za-z0-9%\-_@]+[A-Za-z0-9\.\/=\?%\-&_~`@\[\]\':\+!;]*)/gi,"$1<a href=\"$2\" target='_blank'>$2</a>");
	str=str.replace(/^((http|https|ftp|rtsp|mms):(\/\/|\\\\)[A-Za-z0-9%\-_@]+\.[A-Za-z0-9%\-_@]+[A-Za-z0-9\.\/=\?%\-&_~`@\[\]\':\+!;]*)/gi,"<a href=\"$1\" target='_blank'>$1</a>");
	str=str.replace(/(^|\n)(www\.[A-Za-z0-9%\-_@]+[A-Za-z0-9\.\/=\?%\-&_~`@\[\]\':\+!;]+)/gi,"<a href=\"$2\" target='_blank'>$2</a>");
	str = str.replace(/\[IMG\]([^\[]{5,})\[\/IMG\]/gi, "<img src='$1' border='0' style='cursor:hand' onload='javascript:DrawImage(this,150,150);' \">");
	str = str.replace(/\[LINE\/\]/gi, "<hr size='1' noshade='noshade'>").replace(/\[LINE\]\s*(\d{1})\s*,\s*((#[A-Fa-f0-9]{6})|[A-Za-z]{3,6})\s*\[\/LINE\]/gi, "<hr size='$1' style='border:1px $2 solid' noshade='noshade'>");
	str = str.replace(/\[url=([^\[]{5,})\]([^\[]+)\[\/url\]/gi, "<a href=\"$1\" target='_blank'>$2</a>");
	str = str.replace(/\[url\]([^\[]{5,})\[\/url\]/gi, "<a href=\"$1\" target='_blank'>$1</a>");
	str = str.replace(/\[EMAIL\]([^\s@]+@[^\[\.]+\.[^\[]+)\[\/EMAIL\]/gi, "<a href=\"mailto:$1\" target='_blank'>$1</a>");
	str = str.replace(/\[EMAIL=([^\s@]+@[^\[\.]+\.[^\[]+)\]([^\[]+)\[\/EMAIL\]/gi, "<a href=\"mailto:$1\" target='_blank'>$2</a>");
	str = str.replace(/(\[FLASH\])(.[^\[]*)(.swf)(\[\/FLASH\])/gi, "<embed src='$2$3' width='500'  quality='high' type='application/x-shockwave-flash'></embed><br><a href=\"$2$3\" target='_blank'>[全屏欣赏　注意：FLASH中可能包含不安全内容]</a>");
	str = str.replace(/\*/gi, "*;").replace(/\[(\/)?(MP(=([0-9]+),([0-9]+))?)\]/gi, "*$1$2*").replace(/\*MP=([0-9]+),([0-9]+)\*(.[^\*]*\.(avi|asx|wpl|aif|aifc|aiff|au|asf|mpeg|mpg|m1v|mp2|mpv2|mp2v|mpa|mid|midi|rmi|snd|wma|wmv|wm|wav|wax|w3u|wpl|mp3))\*\/MP\*/gi, "<object align=middle classid=clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95 class=object id=mediaplayer width=$1 height=$2 ><param name=showstatusbar value=-1><param name=filename value=$3><embed type=application/x-oleobject codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#version=5,1,52,701 flename=mp src=$3 width=$1 height=$2></embed></object>").replace(/\*(\/)?(MP(=([0-9]+),([0-9]+))?)\*/gi, "[$1$2]").replace(/\*;/gi, "*");
	str = str.replace(/\*/gi, "*;").replace(/\[(\/)?(RM(=([0-9]+),([0-9]+))?)\]/gi, "*$1$2*").replace(/\*RM=([0-9]+),([0-9]+)\*(.[^\*]*\.(rm|rma|ra|ram|rmm|rmvb|au|aif|mid|mp3|wav|wov|wma|smi|smil|m3u|mov|mpg|mpeg))\*\/RM\*/gi, "<object classid=clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa class=object id=raocx width=$1 height=$2><param name=src value=$3><param name=console value=clip1><param name=controls value=imagewindow><param name=autostart value=true></object><br><object classid=clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa height=32 id=video2 width=$1><param name=src value=$3><param name=autostart value=-1><param name=controls value=controlpanel><param name=console value=clip1></object>").replace(/\*(\/)?(RM(=([0-9]+),([0-9]+))?)\*/gi, "[$1$2]").replace(/\*;/gi, "*");
	str = str.replace(/\*/gi, "*;").replace(/\[(\/)?(FLY)\]/gi, "*$1$2*").replace(/\*FLY\*([^\*]+)\*\/FLY\*/gi, "<marquee>$1</marquee>").replace(/\*((\/)?FLY)\*/gi, "[$1]").replace(/\*;/gi, "*");
	str = str.replace(/\*/gi, "*;").replace(/\[(\/)?(LEFT)\]/gi, "*$1$2*").replace(/\*LEFT\*([^\*]+)\*\/LEFT\*/gi, "<div align='left'>$1</div>").replace(/\*((\/)?LEFT)\*/gi, "[$1]").replace(/\*;/gi, "*");
	str = str.replace(/\*/gi, "*;").replace(/\[(\/)?(RIGHT)\]/gi, "*$1$2*").replace(/\*RIGHT\*([^\*]+)\*\/RIGHT\*/gi, "<div align='right'>$1</div>").replace(/\*((\/)?RIGHT)\*/gi, "[$1]").replace(/\*;/gi, "*");
	str = str.replace(/\[(\/?center)\]/gi, "<$1>");
	str = str.replace(/\[quotetitle\](<br>|&nbsp;)*/gi, "　<span style='position:relative;top:8px' class='bg1'>");
	str = str.replace(/(<br>|&nbsp;)*\[\/quotetitle\]/gi, "</span>");
	return str;
}

function runScript(strIndex)
{
	var script=document.getElementById(strIndex);
	if (script != null)
	{
		var winname=window.open("", "test", "");
		winname.document.open("text/html", "replace");
		winname.document.write(script.value);
		winname.document.close();
	}
}
function ubb()
{
	this.nowIndex=1;
	this.runHtml=function(str)
	{
		var i, j, position;
		var arrStr = str.split("[HTML]");
		j = arrStr.length;
		if (j < 1)
		{
			return regExp(str);
		}
		arrStr[0] = regExp(arrStr[0]);
		for(i=1; i<j; i++)
		{
			position = arrStr[i].indexOf("[/HTML]");
			if (position > -1)
			{
				this.nowIndex++;
				arrStr[i] = "<textarea style='width:95%;font-family:courier new !important;font-size:12px !important' id='index_" + this.nowIndex + "' name='dbg' rows='8'>" + textEncode(arrStr[i].substr(0, position)) + "</textarea><br><input type='button' class='button' value='运 行' onclick=\"runScript('index_" + this.nowIndex + "')\"> &nbsp; 提醒： 1.谨防恶意代码 &nbsp; 2.可先修改部分代码再运行<br>" + regExp(arrStr[i].substr(position+7));
			}
			else
			{
				arrStr[i]="[HTML]" + regExp(arrStr[i]);
			}
		}
		return arrStr.join("");
	}
	this.print = function(str,i)
	{
		if (i == 0)
		{
			return htmlEncode(str);
		}
		else
		{
			var arrStr, i, j, position
			str = str.replace(/\[(\/?)(code)\]/gi, "[$1CODE]");
			str = str.replace(/\[(\/?)(html)\]/gi, "[$1HTML]");
			arrStr = str.split("[CODE]");
			j = arrStr.length;
			if (j < 1)
			{
				return this.runHtml(str);
			}
			arrStr[0] = this.runHtml(arrStr[0]);
			for(i=1; i<j; i++)
			{
				position = arrStr[i].indexOf("[/CODE]");
				if (position > -1)
				{
					arrStr[i] = "<br>　<span style='position:relative;top:8px' class='bg1'>本帖相关代码如下：</span><table width='95%' class='grid bg3' cellpadding='0' cellspacing='0'><tr><td style='padding:8px 8px 7px 8px;font-family:courier new !important;font-size:12px !important'>" +  htmlEncode(trim(arrStr[i].substr(0, position))) + "</td></tr></table>" + this.runHtml(arrStr[i].substr(position+7));
				}
				else
				{
					arrStr[i] = "[CODE]" + this.runHtml(arrStr[i]);
				}
			}
			return arrStr.join("");
		}
	}
}
var ubb = new ubb();
var output;