var loader = '<div style="text-align: center;"><img src="' + siteurl + '/images/load.gif" /></div>';
var bb = new Array(0, 0, 0, 0, 0);

// get object position
function get_position(obj) {
	var left_pos = 0; var top_pos = 0;
	if (obj.offsetParent) {
		do {
			left_pos += obj.offsetLeft;
			top_pos += obj.offsetTop;
		} while (obj = obj.offsetParent);
	} else if (obj.x) {
		left_pos += obj.x;
		top_pos += obj.y;
	}
	var jada = new Array(left_pos, top_pos);
	return jada;
}

// get the dimensions of window
function get_window_dimensions() {
	var width = 0; var height = 0;
	if (window.innerWidth) {
		// all normal browsers
		width = window.innerWidth;
		height = window.innerHeight;
	} else if (document.documentElement.clientWidth && document.documentElement.clientWidth != 0) {
		// IE
		width = document.documentElement.clientWidth;
		height = document.documentElement.clientHeight;
	} else {
		// some old IE
		width = document.body.clientWidth;
		height = document.body.clientHeight;
	}
	var jada = new Array(width, height);
	return jada;
}

// add event that occures on page load
function addLoadEvent(func) {	
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
    	window.onload = func;
	} else {
		window.onload = function(){
			oldonload();
			func();
		}
	}
}

// make "document.getElementById" a bit shorter
function doc_id(id) {
	return document.getElementById(id);
}

// sometimes we just need <br />
function nl2br(string) {
	return string.replace(/(\\r)?\\n/g, "<br />");
}

// we do not want HTML
function nohtml(string) {
    string = string.replace(/"/g,'&quot;');
    string = string.replace(/</g,'&lt;');
    string = string.replace(/>/g,'&gt;');
	return string;
}

// (un)check all checkboxes
function check_all() {
	for (var i = 0; i < document.form.elements.length; i++) {
		var e = document.form.elements[i];
		if (e.name != "all" && e.type == "checkbox")
			e.checked = document.form.all.checked;
	}
}


// some thins shouldn't be deleted just because user thinks they should be deleted
function confirm_delete() {
	if (confirm(sure_delete))
		return true;
	else
		return false;
}

function emoticon(code, text_id) {
	var message = doc_id(text_id);
	message.focus();

	// add emoticon to textarea
	if (document.selection)
		document.selection.createRange().text = code;
	else if (message.selectionStart || message.selectionStart == 0)
		message.value = message.value.substring(0, message.selectionStart) + code + message.value.substring(message.selectionEnd, message.value.length);
	else
		message.value += code;
}

// make XML request without XML (AJAX without XML, AJAJ)
function makeHttpRequest(url, callback_function, return_json, post_data) {
	var xmlHttp, response;
	try {
		xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
	} catch (e) {
    	// Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	
	if (!xmlHttp)
		return;

	xmlHttp.onreadystatechange = function() {
		if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
			// parse JSON
			if (return_json) {
				response = eval('(' + xmlHttp.responseText + ')');
			} else {
				response = xmlHttp.responseText;
			}

			callback_function(response); // callback function
		}
 	}; 

	// to post or not to post?
	if (post_data) {
		// OK, so we post
		xmlHttp.open("POST", url, true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xmlHttp.send(post_data);
	} else {
		// lets just get
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
	}
}


// just don't do it
function stop_event(event) {
	if (!event)
		window.event.cancelBubble = true;
	else
		event.stopPropagation();
}
// Inserts smiley to shoutbox input-field from Available smilies-page
function addSmiley(code) {
document.getElementById("txt_message").value += code;
}

function switchpage(select) { 
    var index; 

  for(index=0; index<select.options.length; index++) 
    if(select.options[index].selected) 
      { 
        if(select.options[index].value!="") 
          window.location.href=select.options[index].value; 
        break; 
      } 
} 



function GetXMLHttpObject()
{
	var oXMLHttp = null;
 
	try
	{
		oXMLHttp = new ActiveXObject("MSXML2.XMLHTTP");
	}
	catch (E)
	{
		try
		{
			oXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch (E)
		{
		  oXMLHttp = null;
		}
    }
 
	if ((oXMLHttp == null) && (typeof(XMLHttpRequest) != 'undefined'))
	{
		oXMLHttp = new XMLHttpRequest();
	}
 
	return oXMLHttp;
}
 
function Loadurl(url)
{
	var oXMLHttp = GetXMLHttpObject();
 
	oXMLHttp.open("GET", url, false);
	oXMLHttp.send("");
 
	document.getElementById("gamediv").innerHTML = oXMLHttp.responseText;
}

function make_favorite(file_id){function back_function(server_r){doc_id("make_favorite_img").src=siteurl+"/images/"+server_r.image+".png";}makeHttpRequest(siteurl+"/file.php?a=make_favorite&f="+file_id,back_function, true);}

function clicked(){
document.location=siteurl;
return true;
}


