/***
 Javascript AJAX functions for BadFellas
    www.badfellas.org  |  www.badfellas.nl
 All functions (C) 2008-2011 Zander Zoftware. All rights reserved
***/

//Set up and AJAX object
function ajaxSetup()
{
	var xmlHttp=null;
	try
	{
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		// IE 5/6
		try
		{
			xmlHttp=new ActiveXObject("MSXML2.XMLHTTP.3.0");
		}
		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

//Registration check
function RegCheck (uname)
{
	ajaxRegister=ajaxSetup();
	if (ajaxRegister==null)
	{
		return;
	}
	var url='regcheck.php?name='+uname;
	ajaxRegister.onreadystatechange=function()
	{
		if(ajaxRegister.readyState==4)
		{
			document.getElementById('namecheck').innerHTML=ajaxRegister.responseText;
		}
	}
	ajaxRegister.open("GET",url,true);
	ajaxRegister.send(null);
}

//Preview post
function PreviewPost (msg)
{
	ajaxRegister=ajaxSetup();
	if (ajaxRegister==null)
	{
		return;
	}

	var url='previewpost.php?msg='+encodeURIComponent(msg);
	ajaxRegister.onreadystatechange=function()
	{
		if (ajaxRegister.readyState==4)
		{
			document.getElementById('postpreview').style.display='block';
			document.getElementById('postpreview').innerHTML=ajaxRegister.responseText;
		}
	}
	ajaxRegister.open("GET",url,true);
	ajaxRegister.send(null);
}

//Post Post
function PostPost (threadid,forumid)
{
	if (threadid < 1 || forumid < 1)
	{
		alert("Unknown error");
		return false;
	}

	var msg = document.getElementById('newpost').value;
	if (msg == '')
	{
		alert("Empty message");
		return false;
	}

	ajaxRegister=ajaxSetup();
	if (ajaxRegister==null)
	{
		return true;
	}

	var url='forum.php';
	var params='act=replyajax&thread='+threadid+'&forum='+forumid+'&msg='+encodeURIComponent(msg);
	ajaxRegister.open("POST",url,true);
	ajaxRegister.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF-8");
	ajaxRegister.setRequestHeader("Content-length", params.length);
	ajaxRegister.setRequestHeader("Connection", "close");
	ajaxRegister.onreadystatechange=function()
	{
		if (ajaxRegister.readyState==4 && ajaxRegister.status==200)
		{
			if (ajaxRegister.responseText == 'Error')
			{
				return true;
			} else
			{
				document.getElementById('dummywrap').innerHTML=ajaxRegister.responseText;
				document.getElementById('newpost').value = 'Message posted!';
				document.getElementById('newpost').disabled = true;
				document.getElementById('replybutton').value = 'Posted!';
				document.getElementById('replybutton').disabled = true;
				scroll (0,0);
				return false;
			}
		}
	}
	ajaxRegister.send(params);
	return false;
}

//Quote post
function QuotePost (postid,threadid)
{
	if (postid < 1 || threadid < 1)
	{
		alert("Unknown error");
		return false;
	}
	var oldpost = document.getElementById('newpost').value;

	ajaxRegister=ajaxSetup();
	if (ajaxRegister==null)
	{
		return true;
	}

	var url='forum.php';
	var params='act=quoteajax&postid='+postid+'&threadid='+threadid;
	ajaxRegister.open("POST",url,true);
	ajaxRegister.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF-8");
	ajaxRegister.setRequestHeader("Content-length", params.length);
	ajaxRegister.setRequestHeader("Connection", "close");
	ajaxRegister.onreadystatechange=function()
	{
		if (ajaxRegister.readyState==4 && ajaxRegister.status==200)
		{
			if (ajaxRegister.responseText == 'Error')
			{
				return true;
			} else
			{
				oldpost = document.getElementById('newpost').value = ajaxRegister.responseText+oldpost;
				window.scrollTo(0,document.getElementById('newpost').offsetTop);
				return false;
			}
		}
	}
	ajaxRegister.send(params);
	return false;
}

//Get icons
function GetIcons ()
{
	ajaxRegister=ajaxSetup();
	if (ajaxRegister==null)
	{
		return true;
	}
	var url='timeicons.php';
	ajaxRegister.onreadystatechange=function()
	{
		if(ajaxRegister.readyState==4)
		{
			document.getElementById('clockicons').innerHTML=ajaxRegister.responseText;
		}
	}
	ajaxRegister.open("GET",url,true);
	ajaxRegister.send(null);
	return false;
}
