var userBirthday = false;
var userBirthday = false;
var userSex = false;
var userMail = false;
var userPassword2 = false;
var userNick = false;
var userPassword = false;
var userRulez = false;
var userBot = false;

var mailXmlHttp;
var nickXmlHttp;
var botXmlHttp;
function toggle(id)
{
	if (!document.getElementById || !document.getElementById(id)) return;
	var e = document.getElementById(id);
	e.style.display = (e.style.display == 'none') ?  '' : 'none';
}


/****************** BÖRJA AJAX ******************/

/*
 * Skapar XMLHttpRequest
 */
var xmlHttp;
function createXMLHttpRequest()
{
	var xmlHttp;
    try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}
    catch(e)
    {
        try{xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}
        catch(oc){xmlHttp=null;}
    }
    
    if(!xmlHttp&&typeof XMLHttpRequest!="undefined"){xmlHttp= new XMLHttpRequest();}
	return xmlHttp;
}

/*
 * Kollar upp födelsedatum
 */
function checkUserBirthday()
{
	if((document.getElementById('year').value != '') && (document.getElementById('month').value != '') && (document.getElementById('day').value != ''))
	{
		document.getElementById('cfodelsedatum').innerHTML = "<font color=\"green\">OK</font>";
		userBirthday = true;
	}
}

/*
 * Kollar upp Kön
 */
function checkUserSex()
{
	if(document.getElementById('kon').value != '')
	{
		document.getElementById('ckon').innerHTML = "<font color=\"green\">OK</font>";
		userSex = true;
	}
	else
		document.getElementById('ckon').innerHTML = "<font color=\"red\">Godkänns inte</font>";
}


/*
 * Kollar upp e-postadressen
 */
function checkUserMail()
{
	if((document.getElementById('year').value != '') && (document.getElementById('month').value != '') && (document.getElementById('day').value != ''))
		document.getElementById('cfodelsedatum').innerHTML = "<font color=\"green\">OK</font>";
	else
		document.getElementById('cfodelsedatum').innerHTML = "<font color=\"red\">Godkänns inte</font>";
		
	if(document.getElementById('kon').value != '')
		document.getElementById('ckon').innerHTML = "<font color=\"green\">OK</font>";
	else
		document.getElementById('ckon').innerHTML = "<font color=\"red\">Godkänns inte</font>";
		
	if(document.getElementById('epost').value.search(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]+\.[A-Za-z]{2,4}$/) == -1)
		document.getElementById('cepost').innerHTML = "<font color=\"red\">Ange en riktig E-postadress</font>";
	else
	{
		mailXmlHttp = createXMLHttpRequest();
		var url=SITE_URL+"user/ajax/controlmail/"+document.getElementById('epost').value;
		if(mailXmlHttp!=null)
		{
			mailXmlHttp.onreadystatechange = processUserMail;
			mailXmlHttp.open("GET", url, true);
			mailXmlHttp.send(null);
		}
	}
}

/*
 * Process kollen av användarnamnet
 */
function processUserMail()
{
	if (mailXmlHttp.readyState == 4)
	{
		if (mailXmlHttp.status == 200)
		{
			var xmlResponseText = mailXmlHttp.responseText;
			if(xmlResponseText == 'OK')
			{
				document.getElementById('cepost').innerHTML = "<font color=\"green\">OK</font>";
				userMail = true;
			}
			else
				document.getElementById('cepost').innerHTML = "<font color=\"red\">E-post adressen &auml;r redan registrerad p&aring; GAMEcore.se<sup>&reg;</sup></font>"
		}
	}
}

/*
 * Kollar upp användarnamn
 */
function checkUserNick()
{

	if (document.getElementById('anvandarnamn').value.search(/^[^0-9]{1}[0-9A-ZÅÄÖa-zåäö_\- ]{1,32}$/) == -1)
    {
		alert('Användarnamn får bara innehålla tecknen \n A-Ö, a-ö och 0-9 samt mellanslag, bindesstreck \n och understreck! \n Den måste även vara minst 2 tecken lång!')
		document.getElementById('canvandarnamn').innerHTML = "<font color=\"red\">Godkänns inte</font>";
	}
	else
	{
		nickXmlHttp = createXMLHttpRequest();
		var url=SITE_URL+"user/ajax/controlnick/"+document.getElementById('anvandarnamn').value;
		if(nickXmlHttp!=null)
		{
			nickXmlHttp.onreadystatechange = processUserNick;
			nickXmlHttp.open("GET", url, true);
			nickXmlHttp.send(null);
		}
	}
}

/*
 * Process kollen av användarnamnet
 */
function processUserNick()
{
	if (nickXmlHttp.readyState == 4)
	{
		if (nickXmlHttp.status == 200)
		{
			var xmlResponseText = nickXmlHttp.responseText;
			if(xmlResponseText == 'OK')
			{
				document.getElementById('canvandarnamn').innerHTML = "<font color=\"green\">OK</font>";
				userNick = true;
			}
			else
				document.getElementById('canvandarnamn').innerHTML = "<font color=\"red\">Anv&auml;ndarnamnet &auml;r redan registrerad p&aring; GAMEcore.se<sup>&reg;</sup></font>"
		}
	}
}

/*
 * Kollar upp lösenordet
 */
function checkUserPassword()
{
	if (document.getElementById('losenord').value.length > 5)
	{
		document.getElementById('closenord').innerHTML = "<font color=\"green\">OK</font>";
		userPassword = true;
	}
	else
		document.getElementById('closenord').innerHTML = "<font color=\"red\">Lösenorden måste vara minst 6 tecken lång!</font>";

}

/*
 * Kollar upp lösenordet
 */
function checkUserPassword2()
{
	if (document.getElementById('losenord').value == document.getElementById('blosenord').value)
	{
		document.getElementById('cblosenord').innerHTML = "<font color=\"green\">OK</font>";
		userPassword2 = true;
	}
	else
		document.getElementById('cblosenord').innerHTML = "<font color=\"red\">Lösenorden överrensstämmer inte!</font>";

}

/*
 * Kollar upp avtalet
 */
function checkUserRulez()
{
	if (document.getElementById('rulez').checked == true)
	{
		document.getElementById('crulez').innerHTML = "<font color=\"green\">OK</font>";
		javascript:toggle('avtal');
		userRulez = true;
	}
	else
		document.getElementById('crulez').innerHTML = "<font color=\"red\">Avtalet är inte godkännd!</font>";

}

/*
 * Kollar upp bot
 */
function checkUserBot()
{
	botXmlHttp = createXMLHttpRequest();
	var url=SITE_URL+"user/ajax/controlbot/"+document.getElementById('bot').value;
	if((botXmlHttp!=null) && (document.getElementById('bot').value.length >= 5))
	{
		botXmlHttp.onreadystatechange = processUserBot;
		botXmlHttp.open("GET", url, true);
		botXmlHttp.send(null);
	}
}

/*
 * Process kollen av användarnamnet
 */
function processUserBot()
{
	if (botXmlHttp.readyState == 4)
	{
		if (botXmlHttp.status == 200)
		{
			var xmlResponseText = botXmlHttp.responseText;
			if(xmlResponseText == 'OK')
			{
				document.getElementById('cbot').innerHTML = "<font color=\"green\">OK</font>";
				userBot = true;
			}
			else
				document.getElementById('cbot').innerHTML = "<font color=\"red\">Felaktiga tecken</font>"
		}
	}
}

/*
 * Kollar upp bot
 */
function checkUser()
{
	var newuserCheck = 0;
	if(userBirthday == true)newuserCheck++;
	if(userSex == true)newuserCheck++;
	if(userMail == true)newuserCheck++;
	if(userPassword2 == true)newuserCheck++;
	if(userNick == true)newuserCheck++;
	if(userPassword == true)newuserCheck++;
	if(userRulez == true)newuserCheck++;
	if(userBot == true)newuserCheck++;
	if(newuserCheck == 8)
		document.newuserform.submit();
	else
	{
		if((newuserCheck == 7) && (userRulez == false))
			alert("Du har inte läst och godkänt avtalet");
		else
			alert("Du har inte fyllt i alla uppgifter");
		return false;
	}
}

function checkLength(te, to, maxlimit)
{
	var e = document.getElementById(te);
	if (e.value.length > maxlimit)
		e.value = e.value.substring(0, maxlimit);
	else
		document.getElementById(to).innerHTML = (e.value.length)+"/"+maxlimit;
}