var navName=navigator.appName, navVer='';
if(navName.substring(0,2)=="Mi")
	navVer='E';

var forum_lastid = -1;

function forum_show(id)
{
	if (!((document.all)?document.all[id]:document.getElementById(id)))
		return;
		
	if (forum_lastid!=-1)
		forum_hidden(forum_lastid);
		
	forum_lastid = id;
	forum_hideElement("SELECT", document.getElementById(forum_lastid));
	
	setTimeout(function(){FjsUtils.addEvent(document, "click", fCheckClick)}, 10);
	FjsUtils.addEvent(document, "keypress", fOnKeyPress);
	((document.all)?document.all[forum_lastid]:document.getElementById(forum_lastid)).style.visibility = 'visible';
}

function forum_hidden(id)
{
	if (!id)
		id = forum_lastid;
	if(!((document.all)?document.all[id]:document.getElementById(id)))
		return;
	forum_showElement("SELECT", document.getElementById(forum_lastid));
	if(id == forum_lastid)
	{
		((document.all)?document.all[forum_lastid]:document.getElementById(forum_lastid)).style.visibility = 'hidden';
		forum_lastid = -1;
	}
	
	FjsUtils.removeEvent(document, "click", fCheckClick);
	FjsUtils.removeEvent(document, "keypress", fOnKeyPress);
}

function forum_hideElement(elName, Menu)
{
	if(navVer!='E') 
		return;
	if (document.getElementsByTagName(elName).length <= 0)
		return;
	for (i = 0; i < document.getElementsByTagName(elName).length; i++)
	{
		Obj = document.getElementsByTagName(elName)[i];
		if(!(pMenu=FjsUtils.GetRealPos(Menu)))continue;
		if(!(pObj=FjsUtils.GetRealPos(Obj)))continue;

		if(pObj["left"]<pMenu["right"] && pMenu["left"]<pObj["right"] && pObj["top"]<pMenu["bottom"] && pMenu["top"]<pObj["bottom"])
			Obj.style.visibility = "hidden";
	}
}

function forum_showElement(elName)
{
	if(navVer!='E') return;
	if (document.getElementsByTagName(elName).length <= 0)
		return;
	for (i = 0; i < document.getElementsByTagName(elName).length; i++)
	{
		obj = document.getElementsByTagName(elName)[i];
		if (!obj || !obj.offsetParent)continue;
		if(obj.style.visibility=="hidden")
			obj.style.visibility = "visible";
	}
}

function fCheckClick(e)
{
	var div = document.getElementById(forum_lastid);
	if(!div)
		return;
	if (!e)
		e = window.event;
	if(!e) 
		return;
	
	if (div.style.visibility != 'visible')
		return;

	var x = e.clientX + document.body.scrollLeft;
	var y = e.clientY + document.body.scrollTop;
	var pos = FjsUtils.GetRealPos(div);
	if(!pos || (x >= pos["left"] && x <= pos["right"] && y >= pos["top"] && y <= pos["bottom"]))
	{
		return;
	}
	forum_hidden();
	return;
}

function fOnKeyPress(e)
{
	var div = document.getElementById(forum_lastid);
	if(!div)
		return;
		
	if(!e) e = window.event
	if(!e) return;
	if(e.keyCode == 27)
	{
		forum_hidden();
	}
	return;
}


var FjsUtils =
{
	arEvents: Array(),

	addEvent: function(el, evname, func, capture)
	{
		if(el.attachEvent) // IE
			el.attachEvent("on" + evname, func);
		else if(el.addEventListener) // Gecko / W3C
			el.addEventListener(evname, func, false);
		else
			el["on" + evname] = func;
		this.arEvents[this.arEvents.length] = {'element': el, 'event': evname, 'fn': func};
	},

	removeEvent: function(el, evname, func)
	{
		if(el.detachEvent) // IE
			el.detachEvent("on" + evname, func);
		else if(el.removeEventListener) // Gecko / W3C
			el.removeEventListener(evname, func, false);
		else
			el["on" + evname] = null;
	},
	
	GetRealPos: function(el)
	{
		if(!el || !el.offsetParent)
			return false;
		var res=Array();
		res["left"] = el.offsetLeft;
		res["top"] = el.offsetTop;
		var objParent = el.offsetParent;
		while(objParent && objParent.tagName != "BODY")
		{
			res["left"] += objParent.offsetLeft;
			res["top"] += objParent.offsetTop;
			objParent = objParent.offsetParent;
		}
		res["right"]=res["left"] + el.offsetWidth;
		res["bottom"]=res["top"] + el.offsetHeight;
		
		return res;
	}
}

function CheckForm(element, form_id_source, param_name_source, form)
{
	var message = new Array();
	var result = new Array();
	var action = form.elements['ACTION'];
	if (element != 'only_action')
	{
		result = document.forms[form_id_source].elements[param_name_source];
		var confirm_text = "";
		
		if (typeof(result.length)=="undefined")
		{
			if (result.checked == true)
			{
				message[0] = result.value;
			}	
		}
		else
		{
			ii = 0;
			for (i=0; i < result.length; i++)
			{
				if (result[i].checked == true)
				{
					message[ii] = result[i].value;
					ii++;
				}
			}
		}
		element.value = message;
	}
	if ((message.length>0 && element) || (element == 'only_action')) 
	{
		if (action.length)
		{
			for (i=0; i < action.length; i++)
			{
				if ((action[i].checked==true) && (action[i].value.substring(0,3).toUpperCase()=="DEL"))
				{
					if (form.name.substring(0, 15) == "forum_menu_form")
					{
						if (message.length > 1)	
							confirm_text = oText['del_topics'];
						else
							confirm_text = oText['del_topic']; 
					}
					else
					{
						if (message.length > 1)	
							confirm_text = oText['del_messages'];
						else
							confirm_text = oText['del_message']; 
					}
					if (confirm(confirm_text))
						return true;
					else
						return false;
				}
			}
		}
		return true;
	}
	alert(oText['no_data']);
	return false;
}
