﻿// JScript 文件
//window.onerror = handleError
function handleError(message, URI, line)
{
    return true;
}

//删除数组的一个元素
Array.prototype.remove=function(dx)
{
    if(isNaN(dx)||dx>this.length){return false;}
    for(var i=0,n=0;i<this.length;i++)
    {
        if(this[i]!=this[dx])
        {
            this[n++]=this[i]
        }
    }
    this.length-=1
}

var baseUrl = document.getElementsByTagName("base")[0].href;
var lang = new Array();
var userAgent = navigator.userAgent.toLowerCase();
var is_opera = userAgent.indexOf('opera') != -1 && opera.version();
var is_moz = (navigator.product == 'Gecko') && userAgent.substr(userAgent.indexOf('firefox') + 8, 3);
var is_ie = (userAgent.indexOf('msie') != -1 && !is_opera) && userAgent.substr(userAgent.indexOf('msie') + 5, 3);

function $(id)
{	
	return document.getElementById(id);
}

function trim(str)
{
	return str.replace(/(^[\s　]*)|([\s　]*$)/g, '');
}
String.prototype.trim = function()
{
	return this.replace(/(^[\s　]*)|([\s　]*$)/g, '');
}


//读取Cookie
function getCookie(Name){ 
	var re=new RegExp(Name+"=[^;]+", "i");
	if (document.cookie.match(re)){
		return document.cookie.match(re)[0].split("=")[1];
	}else{
		return "";
	}		
}
//写入COOKIE
function setCookie(name, value){
	document.cookie = name + "=" + escape(value) +  "; path=/";
}

var dv_win =new Object();
dv_win.hj_de='';
dv_win.hj_w=0;
dv_win.hj_ch=0;
dv_win.isinit = false;

function RegisterDragObjectOnMouseDown(mouseEvent, layerRef, destDragObject)
{
	if (!layerRef)
	{
		return;
	}

	if ('__DragManager' in layerRef)
	{
		return;
	}

	layerRef.__DragManager = new (function (argEvt, argParentRef, argDestDragRef) {
		
		var _destManaged = null, _destDragObject = null;
		var _mouseStartX = 0, _mouseStartY = 0;
		var _managedObjectStartX = 0, _managedObjectStartY = 0;
		var _canDrag = false;

		function _initialize()
		{
			_destManaged = argParentRef;

			if (argDestDragRef)
			{
				_destDragObject = argDestDragRef;
			}
			else if ('undefined' === typeof(argDestDragRef))
			{
				if (argParentRef.parentElement)
				{
					_destDragObject = argParentRef.parentElement;
				}
				else
				{
					_destDragObject = argParentRef.parentNode;
				}
			}

			var mouse = _getMouseCoordinate(argEvt);
			_mouseStartX = mouse.x;
			__mouseStartY = mouse.y;
			
			var rect = _getBoxObject();
			_managedObjectStartX = rect.left;
			_managedObjectStartY = rect.top;

			// 这种事件的绑定方式会覆盖掉原事件，现改为 attachEvent / addEventListener 的方式系上事件
			/*
			_destManaged.onmousedown = _onMouseDown;
			_destManaged.onmousemove = _onMouseMove;
			_destManaged.onmouseup = _onMouseUp;
			//*/

			if ('undefined' !== typeof(_destManaged.attachEvent))
			{
				// in IE
				_destManaged.attachEvent('onmousedown', _onMouseDown);
				_destManaged.attachEvent('onmousemove', _onMouseMove);
				_destManaged.attachEvent('onmouseup', _onMouseUp);
			}
			else if ('undefined' !== typeof(_destManaged.addEventListener))
			{
				// in firefox
				_destManaged.addEventListener('mousedown', _onMouseDown, false);
				_destManaged.addEventListener('mousemove', _onMouseMove, false);
				_destManaged.addEventListener('mouseup', _onMouseUp, false);
			}

			_onMouseDown(argEvt);
		}

		function _getBoxObject()
		{
			var retvl = ({'top':0, 'right':0, 'bottom':0, 'left':0, 'height':0, 'width':0});

			if (_destDragObject.getBoundingClientRect)
			{
				// ie 兼容
				var box = _destDragObject.getBoundingClientRect();
				retvl.top = parseInt(box.top) + document.documentElement.scrollTop;
				retvl.right = parseInt(box.right);
				retvl.bottom = parseInt(box.bottom);
				retvl.left = parseInt(box.left) + document.documentElement.scrollLeft;
				retvl.height = box.bottom - box.top;
				retvl.width = box.right - box.left;
			}
			else if (document.getBoxObjectFor)
			{
				// firefox 兼容
				var box = document.getBoxObjectFor(_destDragObject);
				retvl.left = parseInt(box.x);
				retvl.top = parseInt(box.y);
				retvl.height = parseInt(box.height);
				retvl.width = parseInt(box.width);
				retvl.right = retvl.left + box.width;
				retvl.bottom = retvl.top + box.height;
			}

			return retvl;
		}

		function _getMouseCoordinate(evt)
		{
			if (window.event && !evt)
			{
				evt = window.event;
			}

			var retvl = {'x':evt.clientX + document.documentElement.scrollLeft, 'y':evt.clientY + document.documentElement.scrollTop};

			return retvl;
		}

		function _onMouseDown(evt)
		{
			_canDrag = true;

			if ('undefined' !== typeof(_destManaged.setCapture))
			{
				// in IE
				_destManaged.setCapture(false);
			}
			else if ('undefined' !== typeof(document.createEvent))
			{
				// in firefox
				document.addEventListener('mousemove', _onMouseMove, false);
			}

			var mouse = _getMouseCoordinate(evt);
			_mouseStartX = mouse.x;
			_mouseStartY = mouse.y;
		
			var rect = _getBoxObject();
			_managedObjectStartX = rect.left;
			_managedObjectStartY = rect.top;
		}

		function _onMouseMove(evt)
		{
			if (!_canDrag)
			{
				return;
			}

			var mouse = _getMouseCoordinate(evt);

			var x = (_managedObjectStartX - (_mouseStartX - mouse.x));
			if (x < 0) x = 0;
			var y = (_managedObjectStartY - (_mouseStartY - mouse.y));
			if (y < 0) y = 0;
			_destDragObject.style.left = x + 'px';
			_destDragObject.style.top = y + 'px';
		}

		function _onMouseUp(evt)
		{
			_canDrag = false;
			if ('undefined' !== typeof(_destManaged.releaseCapture))
			{
				// in IE
				_destManaged.releaseCapture();
			}
			else if ('undefined' !== typeof(document.createEvent))
			{
				// in firefox
				document.removeEventListener('mousemove', _onMouseMove, false);
			}
		}

		// 执行初始化的操作
		_initialize();
	})(mouseEvent, layerRef, destDragObject);
}
dv_win.InitVar = function(){
	hj_de=document.documentElement;
	hj_w=document.body.clientWidth || window.innerWidth || self.innerWidth || (hj_de&&hj_de.clientWidth);
	hj_ch=document.body.clientHeight || window.innerHeight || self.innerHeight || (hj_de&&hj_de.clientHeight);
}
dv_win.ResetBgDiv = function(){
	dv_win.InitVar();
	var hj_pannel = $('hj_pannel');
	hj_pannel.style.width=hj_w + 'px';
	hj_pannel.style.height=hj_ch + 'px';
	hj_pannel.left = "-10px";
	hj_pannel.top = "-10px";
}
dv_win.ShowMsg = function(title, vbody){
	dv_win.ResetBgDiv();
	dv_win.InitVar();	
	$('hj_title').innerHTML = title;
	$('hj_msg_body').innerHTML = vbody;
	var hj_msg_main = $('hj_msg_main');
	hj_msg_main.style.left = hj_w /2 -150 + 'px';
	hj_msg_main.style.top = hj_ch / 2 -130 + 'px';
	hj_msg_main.style.visibility = 'visible';
	$('hj_pannel').style.visibility = 'visible';
	
}
dv_win.HideMsg = function(){
	$('hj_pannel').style.visibility = 'hidden';
	$('hj_msg_main').style.visibility = 'hidden';
}
/*
<div id="hj_pannel"></div>
  <div id="hj_msg_main">
  <div id="hj_msg_title" onmousedown="RegisterDragObjectOnMouseDown(event, this)"><span id="hj_title" name="hj_title">标题</span><span id="hj_close" onclick="dv_win.HideMsg();">关闭</span></div>
  <div id="hj_msg_body" name="hj_msg_body"></div>
</div>
dv_win.ShowMsg('','');
*/
function toggle_collapse(objname, noimg) {
	var obj = $(objname);
	obj.style.display = obj.style.display == '' ? 'none' : '';
	if(!noimg) {
		var img = $(objname + '_img');
		img.src = img.src.indexOf('_yes.gif') == -1 ? img.src.replace(/_no\.gif/, '_yes\.gif') : img.src.replace(/_yes\.gif/, '_no\.gif');
	}
	var collapsed = getCookie('App_collapse');
	//collapsed =  updatestring(collapsed, objname, !obj.style.display);
	setCookie('App_collapse', collapsed);
}
function GoToPage(o){
    if(13 == event.keyCode){
    var url = originUrl.replace("{p}", o.value);
        //var baseUrl = document.getElementsByTagName("base")[0].href;
         window.location.href = baseUrl + url;
    }
}
function setcopy(text, alertmsg){
	if(is_ie) {
		clipboardData.setData('Text', text);
		alert(alertmsg);
	} else if(prompt('Press Ctrl+C Copy to Clipboard', text)) {
		alert(alertmsg);
	}
}
function BoardOPT(_action, dir_id, board_id, curr_page){
	var _ot_ids = document.getElementsByName('post_ids');
	var _post_ids = '';
	var _queryString = '';
	var _select_count = 0;
	for(var i=0;i<_ot_ids.length;i++){
		if(_ot_ids[i].checked){
			_select_count ++;
			if(_post_ids.length > 0){
				_post_ids += ',';
			}
			_post_ids += _ot_ids[i].value;
		}
	}
	if(_post_ids.length == 0 && 'MANAGE_CHECK_BBS_DOC' != _action) return;
	var __query_string = 'action='+ _action +'&dir_id='+ dir_id +'&board_id='+ board_id +'&page='+ curr_page +'&post_ids=' + _post_ids;
	if('DELETE_OTHER_BOARD' == _action){
	    window.location.href='DeleteTopic.aspx?' + __query_string;
	}else if('SETTOP_TOPIC_ALL' == _action || 'SETTOP_TOPIC_DIR' == _action || 'SETTOP_TOPIC_BOARD' == _action  || 'UN_SETTOP_TOPIC_ALL' == _action  || 'UN_SETTOP_TOPIC_DIR' == _action  || 'UN_SETTOP_TOPIC_BOARD' == _action  || 'LOCK_BBS_TOP' == _action  || 'UN_LOCK_BBS_TOP' == _action  || 'COVER_LOCK_BBS_TOP' == _action  || 'UN_COVER_LOCK_BBS_TOP' == _action  || 'COVER_LOCK_BBS_DOC' == _action  || 'UN_COVER_LOCK_BBS_DOC' == _action
	  || 'BBS_MARK_PIC' == _action){
	    window.location.href='TopAction.aspx?' + __query_string;
	}else if('MARK_TOPIC_BOARD' == _action){
	    window.location.href='TopAction.aspx?' + __query_string;
	}else if('FILE_COMMEND' == _action){
	    window.location.href='TopAction.aspx?' + __query_string;
	}else if('FILE_DECOMMEND' == _action){
	    window.location.href='TopAction.aspx?' + __query_string;
	}else if('MANAGE_CHECK_BBS_DOC' == _action){
	    window.location.href='CheckContents.aspx?' + __query_string;
	}
}


function ContentBg(color)
{
	var obj=document.getElementById("vbody");
	obj.style.backgroundColor=color;
}
function ContentBgCol2(color){var obj=document.getElementById("news_sort");obj.style.backgroundColor=color;}


/*CheckBox全选*/
function cbSelectAll(form)
{
	for (var i=0;i<form.elements.length;i++)
	{
		var e = form.elements[i];
		if (e.name != 'cbSelALL'&& e.type=="checkbox")
		{
			e.checked = form.cbSelALL.checked;	
			//SelectColor();				
		}
	}
}
var pager =new Object();
pager.Jump = function(){
    if('' == originUrl) return;
    if(0 == arguments.length){
        originUrl = originUrl.replace('{p}',$('goPage').value);
    }else{
        originUrl = originUrl.replace('{p}',arguments[0].value);
    }
    //var baseUrl = document.getElementsByTagName("base")[0].href;
    
    window.location.href = baseUrl + originUrl;
}
function doZoom(size){
	document.getElementById('textbody').style.fontSize=size+'px';
}

function urlencode(str) {
    var ns = (navigator.appName == "Netscape") ? 1 : 0;
    if (ns) { return escape(str); }
    var ms = "%25#23 20+2B?3F<3C>3E{7B}7D[5B]5D|7C^5E~7E`60";
    var msi = 0;
    var i, c, rs, ts;
    while (msi < ms.length) {
        c = ms.charAt(msi);
        rs = ms.substring(++msi, msi + 2);
        msi += 2;
        i = 0;
        while (true) {
            i = str.indexOf(c, i);
            if (i == -1) break;
            ts = str.substring(0, i);
            str = ts + "%" + rs + str.substring(++i, str.length);
        }
    }
    return str;
}
