var request = null;
var updateStep3Felt = null;
var updateStep3Felt2 = null;
var imgFeltName = null;
var opretMobilPic = null;
var landcode = null;
var postal = null;

var url = "/ajax/opretBrugerCheckAjax.php";


function createRequest()
{
	try {
		request = new XMLHttpRequest();
	} catch (trymicrosoft) {
		try {
			request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (othermicrosoft) {
			try {
				request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (failed) {
				request = null;
			}
		}
	}
	
	if (request == null)
	{
		alert("Error creating request object");
	}
}

function AjaxCheck2(input, img, checktype, defaultValue)
{
	var input = document.getElementById(input).value;
	if (input != defaultValue)
	{
		createRequest();
		
		imgFeltName = img;
		
		request.open("POST",url,true);
		request.onreadystatechange = updateImgFelt;
		request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		request.send("action=" + checktype + "&input=" + escape(input));
	}
	else if (input == defaultValue)
	{
		document.getElementById(img).src="/gfx/check.gif";
	}
}


function AjaxCheck(input, img, checktype)
{
	createRequest();
	
	var input = document.getElementById(input).value;
	
	imgFeltName = img;
	
	request.open("POST",url,true);
	request.onreadystatechange = updateImgFelt;
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	request.send("action=" + checktype + "&input=" + escape(input));
}

function updateImgFelt()
{
	if (request.readyState == 4) 
	{	
		var check = request.responseText;
		if (check == 0)
		{
			
			document.getElementById(imgFeltName).src="/gfx/check.gif"
		}
		else
		{
			document.getElementById(imgFeltName).src="/gfx/delete.gif"
		}
	}
}




function checkMobil(input,landcode,img) 
{

	createRequest();
	
	var input = document.getElementById(input).value;
	var landcode = document.getElementById(landcode).value;
	
	opretMobilPic = img;
	
	request.open("POST",url,true);
	request.onreadystatechange = updateMobilPic;
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	request.send("action=checkmobil&input=" + escape(input) + "&landcode=" + escape(landcode));
	
}


function updateMobilPic()
{
	if (request.readyState == 4) 
	{	
		var check = request.responseText;
		if (check == 0)
		{
			document.getElementById(opretMobilPic).src="/gfx/check.gif"
		}
		else
		{
			document.getElementById(opretMobilPic).src="/gfx/delete.gif"
		}
		
	}
}

function checkMobil2(input,landcode,img,defaultValue) 
{
	var landcode = document.getElementById(landcode).value;
	var input = document.getElementById(input).value;
	var input2 = landcode + input;
	defaultValue = "+" + defaultValue;
	if (input2 != defaultValue)
	{
		createRequest();
		
		opretMobilPic = img;
		
		request.open("POST",url,true);
		request.onreadystatechange = updateMobilPic2;
		request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		request.send("action=checkmobil&input=" + escape(input) + "&landcode=" + escape(landcode));
	}
	else if (input2 == defaultValue)
	{
		document.getElementById(img).src="/gfx/check.gif"
	}
}


function updateMobilPic2()
{
	if (request.readyState == 4) 
	{	
		var check = request.responseText;
		if (check == 0)
		{
			document.getElementById(opretMobilPic).src="/gfx/check.gif"
		}
		else
		{
			document.getElementById(opretMobilPic).src="/gfx/delete.gif"
		}
		
	}
}

function PostalCheck(inputFelt,ImgFelt,byFelt)
{
	createRequest();
	
	var input = document.getElementById(inputFelt).value;
	
	postal = byFelt;
	imgFeltName = ImgFelt;
	
	request.open("POST",url,true);
	request.onreadystatechange = updatePostal;
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	request.send("action=postallookup&input=" + escape(input));

}

function updatePostal()
{
	if (request.readyState == 4) 
	{	
		var check = request.responseText;
		document.getElementById(postal).value=check
		/*if (check == "By ikke fundet")
		{
			document.getElementById(imgFeltName).src='/gfx/delete.gif'
		}*/
		if (check.length > 1)
		{
			document.getElementById(imgFeltName).src='/gfx/check.gif'
		}
		else
		{
			document.getElementById(imgFeltName).src='/gfx/delete.gif'
		}
	}
}
function UpdateMobilenumer(felt,felt2)
{
	createRequest();
	
	var input = document.getElementById(felt).value;
	
	landcode = felt2
	
	request.open("POST",url,true);
	request.onreadystatechange = updateMobil;
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	request.send("action=countrylookup&input=" + escape(input));
}

function updateMobil()
{
	if (request.readyState == 4) 
	{	
		var check = request.responseText;
		document.getElementById(landcode).value=check
	}
}

function checkEmail2(email,Img,Img2) 
{
	createRequest();
	
	var input = document.getElementById(email).value;

	updateStep3Felt = Img;
	updateStep3Felt2 = Img2;

	request.open("POST",url,true);
	request.onreadystatechange = updateStep3;
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	request.send("action=checkemail&input=" + escape(input));
}

function updateStep3() {
	if (request.readyState == 4) 
	{	
		var check = request.responseText;
		if (check == 0)
		{
			document.getElementById(updateStep3Felt).src="/gfx/check.gif"
			document.getElementById(updateStep3Felt2).src="/gfx/DK/Coolsms_plus_glow.gif"
		}
		else
		{
			document.getElementById(updateStep3Felt).src="/gfx/delete.gif"
			document.getElementById(updateStep3Felt2).src="/gfx/DK/Coolsms_plus_normal.gif"
		}
	}	
}


function checkEmailRep(email1,email2,img)
{
	var text1 = document.getElementById(email1).value
	var text2 = document.getElementById(email2).value
	if (text1 == text2)
	{
					
		document.getElementById(img).src="/gfx/check.gif"
	}
	else
	{
		
		document.getElementById(img).src="/gfx/delete.gif"
	}
	
}

function checkPass(pass1,pass2, img) {
	var text1 = document.getElementById(pass1).value
        var text2 = document.getElementById(pass2).value
        if (text1 == text2)
        {

                document.getElementById(img).src="/gfx/check.gif"
        }
        else
        {

                document.getElementById(img).src="/gfx/delete.gif"
        }
}

function switchInt()
{
	news = document.getElementById('newsletter').checked;
	sms = document.getElementById('smsletter').checked;
	if ((news) || (sms))
	{
		document.getElementById('opretInteresser').className = 'opretInteresser-show'
	}
	else
	{
		document.getElementById('opretInteresser').className = 'opretInteresser-hidden'
	}
	
	if (news)
	{
		document.getElementById('newsPlusms').src="/gfx/DK/Coolsms_plus_glow.gif"
	}
	else
	{
		document.getElementById('newsPlusms').src="/gfx/DK/Coolsms_plus_normal.gif"
	}
	
	if (sms)
	{
		document.getElementById('smsPlussms').src="/gfx/DK/Coolsms_plus_glow.gif"
	}
	else
	{
		document.getElementById('smsPlussms').src="/gfx/DK/Coolsms_plus_normal.gif"
	}
}

function checkint(form, page) {
        document.getElementById("error").innerHTML = "";
	var process = true;
	var params = "&newsletter="+escape(form.newsletter.checked ? 1 : 0);
        params += "&smsletter="+escape(form.smsletter.checked ? 1 : 0);

	if (form.newsletter.checked || form.smsletter.checked) {
		var el = form.elements;
		var l = el.length;
		var found = 0;

		for(i=0; i<l; i++) {
			if (el[i].name.substr(0,3) == "Int" && el[i].type == 'checkbox') {
				params += "&"+el[i].name+"="+escape(el[i].checked ? 1 : 0);
				if (el[i].checked) {
					found++;
				}
			}
		}
		
		if (found < 3) {
			process = false;
			document.getElementById("error").innerHTML = "Du skal vælge mindst 3 interesser for at fortsætte";
		} 
	}

	if (process) {
		postXML(params,url+(page == 1 ? "?step=2" : "?editint=t"));
	}

	return false;
}

function submitmails(form) {
	var params = "";
	params += "&email1="+escape(form.email1.value);
        params += "&email2="+escape(form.email2.value);
        params += "&email3="+escape(form.email3.value);
        params += "&email4="+escape(form.email4.value);
        params += "&email5="+escape(form.email5.value);

	postXML(params,url+"?step=3");

	return false;
}

function toggleactive(status) {
	if (status == 0) {
		document.getElementById("nonactive").style.visibility = 'visible';
                document.getElementById("nonactive").style.display = 'block';

		document.getElementById("active").style.visibility = 'hidden';
                document.getElementById("active").style.display = 'none';
	} else {
		clearTimeout(checkSmsActivated);
		document.getElementById("nonactive").style.visibility = 'hidden';
                document.getElementById("nonactive").style.display = 'none';

                document.getElementById("active").style.visibility = 'visible';
                document.getElementById("active").style.display = 'block';
	}
}

function checkbirth() {
	if (document.forms["opretForm"].bday.value != "0" && document.forms["opretForm"].bmonth.value != "0" && document.forms["opretForm"].byear.value != "0000") {
                document.getElementById("opretBirthdayPic").src="/gfx/check.gif"
	} else {
                document.getElementById("opretBirthdayPic").src="/gfx/delete.gif"
	}
}

function checkbirth2() {
	if (document.forms["retProfilForm"].bday.value != "00" && document.forms["retProfilForm"].bmonth.value != "00" && document.forms["retProfilForm"].byear.value != "0000") {
                document.getElementById("retBirthdayPic").src="/gfx/check.gif"
	} 
	else {
		document.getElementById("retBirthdayPic").src="/gfx/spacer.gif"
	}
}

function resendPass() {
	document.getElementById("genPass").innerHTML = "";
	var params = "";
	postXML(params,url+"?resendPass=t");
}

function resendMobilCode() {
	document.getElementById("resendMobil").innerHTML = "";
	var params = "";
	postXML(params,url+"?resendMobilCode=t");
}


function submitform(form) {
	if (form.accept.checked) {

		// clear errors
		document.getElementById("brugernavnError").innerHTML = "";
                document.getElementById("fornavnError").innerHTML = "";
                document.getElementById("efternavnError").innerHTML = "";
                document.getElementById("adresseError").innerHTML = "";
                document.getElementById("postnrError").innerHTML = "";
                document.getElementById("birthdayError").innerHTML = "";
                document.getElementById("email1Error").innerHTML = "";
                document.getElementById("email2Error").innerHTML = "";
                document.getElementById("mobilnummerError").innerHTML = "";
		document.getElementById("password1Error").innerHTML = "";
                document.getElementById("password2Error").innerHTML = "";	

		var params = "";
		params += "&sex="+escape(getCheckedValue(form.sex));
		params += "&countryCode="+escape(form.countryCode.options[form.countryCode.selectedIndex].value);
		params += "&username="+escape(form.username.value);
		params += "&fornavn="+escape(form.fornavn.value);
        	params += "&efternavn="+escape(form.efternavn.value);
		params += "&adresse="+escape(form.adresse.value);
		params += "&postnr="+escape(form.postnr.value);
	        params += "&by="+escape(form.by.value);
		params += "&bday="+escape(form.bday.options[form.bday.selectedIndex].value);
	        params += "&bmonth="+escape(form.bmonth.options[form.bmonth.selectedIndex].value);
        	params += "&byear="+escape(form.byear.options[form.byear.selectedIndex].value);
	        params += "&email1="+escape(form.email1.value);
        	params += "&email2="+escape(form.email2.value);
		params += "&landcode="+escape(form.landcode.value);
        	params += "&mobilnumber="+escape(form.mobilnumber.value);
		params += "&password1="+escape(form.password1.value);
		params += "&password2="+escape(form.password2.value);

		postXML(params,url+"?step=1");

	} else {
		alert('Du skal acceptere betingelserne før du kan oprette en profil');
	}
	return false;
}	

function firsttime(form) {
	if (form.accept.checked) {

	// clear errors
	document.getElementById("fornavnError").innerHTML = "";
	document.getElementById("efternavnError").innerHTML = "";
	document.getElementById("adresseError").innerHTML = "";
	document.getElementById("birthdayError").innerHTML = "";
	document.getElementById("errorInt").innerHTML = "";
	
	var process = true;
	
	var params = "";
	params += "&firstname="+escape(form.firstname.value);
	params += "&lastname="+escape(form.lastname.value);
	params += "&adresse="+escape(form.adresse.value);
	params += "&bday="+escape(form.bday.value);
	params += "&bmonth="+escape(form.bmonth.value);
	params += "&byear="+escape(form.byear.value);
	params += "&newsletter="+escape(form.newsletter.checked ? 1 : 0);
	params += "&smsletter="+escape(form.smsletter.checked ? 1 : 0);
	params += "&freesms="+escape(form.freesms.checked ? 1 : 0);

	if (form.newsletter.checked || form.smsletter.checked) {
		var el = form.elements;
		var l = el.length;
		var found = 0;

		for(i=0; i<l; i++) {
			if (el[i].name.substr(0,3) == "Int" && el[i].type == 'checkbox') {
				params += "&"+el[i].name+"="+escape(el[i].checked ? 1 : 0);
				if (el[i].checked) {
					found++;
				}
			}
		}
		
		if (found < 3) {
			process = false;
			document.getElementById("errorInt").innerHTML = "Du skal vælge mindst 3 interesser for at fortsætte";
		} 
	}
	
	if (process) {
		postXML(params,url+"?firsttime=t");
	}
	} else {
		alert('Du skal acceptere betingelserne før du kan forsætte.');
	}
	return false;
}


function editprofile(form) {
	// clear errors
	document.getElementById('editStatus').innerHTML = "";

        document.getElementById("brugernavnError").innerHTML = "";
        document.getElementById("fornavnError").innerHTML = "";
        document.getElementById("efternavnError").innerHTML = "";
        document.getElementById("adresseError").innerHTML = "";
        document.getElementById("postnrError").innerHTML = "";
        document.getElementById("birthdayError").innerHTML = "";
        document.getElementById("email1Error").innerHTML = "";
        document.getElementById("email2Error").innerHTML = "";
        document.getElementById("mobilnummerError").innerHTML = "";

        var params = "";
        params += "&sex="+escape(getCheckedValue(form.sex));
        params += "&countrycode="+escape(form.countrycode.options[form.countrycode.selectedIndex].value);
        params += "&brugernavn="+escape(form.brugernavn.value);
        params += "&fornavn="+escape(form.fornavn.value);
        params += "&efternavn="+escape(form.efternavn.value);
        params += "&adresse="+escape(form.adresse.value);
        params += "&postnr="+escape(form.postnr.value);
        params += "&by="+escape(form.by.value);
        params += "&bday="+escape(form.bday.options[form.bday.selectedIndex].value);
        params += "&bmonth="+escape(form.bmonth.options[form.bmonth.selectedIndex].value);
        params += "&byear="+escape(form.byear.options[form.byear.selectedIndex].value);
        params += "&email1="+escape(form.email1.value);
        params += "&email2="+escape(form.email2.value);
        params += "&landcode="+escape(form.landcode.value);
        params += "&mobilnummer="+escape(form.mobilnummer.value);
	params += "&rpassword="+escape(form.rpassword.value);
	params += "&currpass="+escape(form.currpass.value);

        postXML(params,url+"?editprofile=t");

	return false;
}

function activateprofile(form) {
	postXML("&activecode="+escape(form.activecode.value),url+"?step=4");
	return false;
}

function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
		
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
}

function checkSmsActivated() {
	loadXML(url+"?checksms=t");
	setTimeout("checkSmsActivated()", 1000);
}

function loadXML(url) {
	var ajax = new ajaxlib();
	ajax.doloadXML(url);
}

function postXML(content, url) {
	var ajax = new ajaxlib();
	ajax.dopostXML(content, url);
}


function ajaxlib() {
	var xmlhttp;
	this.doloadXML = function(url) {	
		if (window.XMLHttpRequest) {
  			xmlhttp=new XMLHttpRequest();
  			xmlhttp.onreadystatechange = state;
			xmlhttp.open("GET", url, true);
			xmlhttp.send(null);
	  	} else if (window.ActiveXObject) {
			try {
				xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try {
					xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (E2) {
					xmlhttp = false;
				}
			}
			if (xmlhttp) {
				xmlhttp.onreadystatechange = state;
				xmlhttp.open("GET",url,true)
				xmlhttp.send()
			}
		}
	}

	this.dopostXML = function(content, url) {
		if (window.XMLHttpRequest) {
  			xmlhttp=new XMLHttpRequest();
	  		xmlhttp.onreadystatechange = state;
			xmlhttp.open("POST",url,true);
			xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  			xmlhttp.send(content);
	  	} else if (window.ActiveXObject) {
			try {
				xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try {
					xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (E2) {
					xmlhttp = false;
				}
			}
			if (xmlhttp) {
				xmlhttp.open("POST",url,true);
		  		xmlhttp.onreadystatechange = state;
				xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				//xmlhttp.setRequestHeader("Content-length", content.length);
		        	//xmlhttp.setRequestHeader("Connection", "close");
	  			xmlhttp.send(content);
			}
		}
	}

	function state() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				eval(xmlhttp.responseText);
			}
		}
	}
}
