var gettingCountries=false;
function more_countries()
{
	if (gettingCountries)
	{
		return;
	}
	gettingCountries=true;

	document.getElementById('country').disabled=true;

	var ajax=GetXmlHttpObject();
	if(ajax==null)
	{
		alert("Your browser does not support ajax");
		gettingCountries=false;
		return;
	}

	//	var spanStatus = document.getElementById("spanCheckForNewMessagesStatus");

	ajax.onreadystatechange=
	function changeContents()
	{
		//		spanStatus.innerHTML = "<br/>" + "Request state: " + ajax.readyState;
		if (ajax.readyState == 4)
		{
			if (ajax.status == 200)
			{
				//				spanStatus.innerHTML = "";

				var response=ajax.responseText;
				if(response=="error")
				{
					alert("Error in getting countries");
				}
				else
				{
					document.getElementById('countrytd').innerHTML = response;
				}
			}
			else
			{
				//				spanStatus.innerHTML = "<br/>" + "HTTP status: " + ajax.status + "<br/>";
			}

			gettingCountries=false;
			document.getElementById('country').disabled=false;
		}
	}

	var nextPrior = parseInt(document.getElementById('countryprior').innerHTML);
	var parameters = "prior=" + nextPrior;
//	document.getElementById('countryprior').innerHTML = nextPrior;

	ajax.open("GET","getMoreCountries.php?" + parameters ,true);
	ajax.setRequestHeader("Content-Type", "Content-Type: text/plain");
	ajax.send(null);

/*	if(nextPrior==4)
	{
		elem=document.getElementById('aMoreCountries');
		elem.parentNode.removeChild(elem);
	}*/
}

function showOther(who, which)
{
	if (who.options[who.selectedIndex].value == "Other")
	{
		var j=document.getElementById(which+'Other');
		j.style.display="block";
	}
	else
	{
	    var j=document.getElementById(which+'Other');
		j.style.display="none";
	}
}

function validateMail()
{
	var emailRegEx = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,6})+$/;
	var str = document.getElementById('frmUserInfo').email.value;
	if(str.match(emailRegEx))
	{
		document.getElementById('spanEmailError').innerHTML='';
		return true;
	}
	else
	{
		document.getElementById('spanEmailError').innerHTML='Invalid Email';
		return false;
	}
}

var checkingForDup = false;
function checkDuplicateMail()
{

	if (!validateMail())
	{
		document.getElementById('spanEmailError').innerHTML='Invalid Email';
		return false;
	}

	var mail = document.getElementById('frmUserInfo').email.value;

	if (checkingForDup)
	{
		return;
	}
	checkingForDup=true;

	document.getElementById('frmUserInfo').email.disabled=true;

	var ajax=GetXmlHttpObject();
	if(ajax==null)
	{
		alert("Your browser does not support ajax");
		checkingForDup=false;
		return;
	}

	var spanStatus = document.getElementById('spanEmailError');

	ajax.onreadystatechange=
	function changeContents()
	{
		//spanStatus.innerHTML = "<br/>" + "Request state: " + ajax.readyState;
		if (ajax.readyState == 4)
		{
			if (ajax.status == 200)
			{
				spanStatus.innerHTML = "";

				var response=ajax.responseText;
				if (response=="ok")
				{
					document.getElementById('btnSubmitForm').disabled=false;
					spanStatus.innerHTML = "This email is ok" + "<br/>";
				}
				else
				{
					document.getElementById('btnSubmitForm').disabled=true;
					spanStatus.innerHTML = "This email is already in our database" + "<br/>";
				}
			}
			else
			{
				spanStatus.innerHTML = "<br/>" + "HTTP status: " + ajax.status + "<br/>";
			}

			document.getElementById('frmUserInfo').email.disabled=false;
			checkingForDup=false;
		}
	}

	var parameters = "mail=" + mail;

	ajax.open("GET","checkForDupMail.php?" + parameters ,true);
	ajax.setRequestHeader("Content-Type", "Content-Type: text/plain");
	ajax.setRequestHeader("Cache-Control", "Cache-Control: no-store, no-cache, must-revalidate");
	ajax.send(null);
}

function validatePass()
{
	var good=true;
	document.getElementById('spanPasswordError').innerHTML="";
	document.getElementById('spanCpasswordError').innerHTML="";
	if(document.getElementById('frmUserInfo').password.value.length < 6)
	{
		document.getElementById('spanPasswordError').innerHTML = "Password too short";
		good=false;
	}
	else 
	{
		if(document.getElementById('frmUserInfo').password.value != document.getElementById('frmUserInfo').cpassword.value)
		{
			document.getElementById('spanCpasswordError').innerHTML="Passwords don't match";
			good=false;
		}
	}
	if (good)
	{
		document.getElementById('spanPasswordError').innerHTML="";
		document.getElementById('spanCpasswordError').innerHTML="";
	}
	return good;
}

function submitForm()
{
	document.getElementById('btnSubmitForm').disabled=true;

	var good=true;
	if (!validateMail())
	{
		good=false;
	}
	if(document.getElementById('fname').value == "")
	{
		good=false;
		document.getElementById('spanFnameError').innerHTML = "Required";
	}
	else
	{
		document.getElementById('spanFnameError').innerHTML = "";
	}
	if(document.getElementById('lname').value == "")
	{
		good=false;
		document.getElementById('spanLnameError').innerHTML = "Required";
	}
	else
	{
		document.getElementById('spanLnameError').innerHTML = "";
	}

	if (!validatePass())
	{
		good=false;
	}

	if (document.getElementById('printAccountType').checked)
	{
	    /*if(document.getElementById('city').value == "")
    	{
    		good=false;
    		document.getElementById('spanCityError').innerHTML = "Required";
    	}
    	else
    	{
    		document.getElementById('spanCityError').innerHTML = "";
    	}

	    if(document.getElementById('address1').value == "")
    	{
    		good=false;
    		document.getElementById('spanAddress1Error').innerHTML = "Required";
    	}
    	else
    	{
    		document.getElementById('spanAddress1Error').innerHTML = "";
    	}*/

	    if(document.getElementById('country').selectedIndex == 0)
    	{
    		good=false;
    		document.getElementById('spanCountryError').innerHTML = "Required";
    	}
    	else
    	{
    		document.getElementById('spanCountryError').innerHTML = "";
    	}
	}

	//SUBMIT
	if(good)
	{
		document.getElementById('frmUserInfo').submit();
	}
	else
	{
		document.getElementById('btnSubmitForm').disabled=false;
	}
}

function submitFormUpdate()
{
	document.getElementById('btnSubmitForm').disabled=true;

	var good=true;
	var form = document.getElementById('frmUserInfo');
	if (!validateMail())
	{
		good=false;
	}
	if(form.fname.value == "")
	{
		good=false;
		document.getElementById('spanFnameError').innerHTML = "Required";
	}
	else
	{
		document.getElementById('spanFnameError').innerHTML = "";
	}
	if(form.lname.value == "")
	{
		good=false;
		document.getElementById('spanLnameError').innerHTML = "Required";
	}
	else
	{
		document.getElementById('spanLnameError').innerHTML = "";
	}

	good = good & validateResetPass();

	if(good)
	{
		document.getElementById('frmUserInfo').submit();
	}
	else
	{
		document.getElementById('btnSubmitForm').disabled=false;
	}
}

function enableReset(who)
{
    if (who.checked)
    {
        document.getElementById('resetPass').style.display = "block";
    }
    else
    {
        document.getElementById('resetPass').style.display = "none";
    }
}
function validateResetPass()
{
    var form = document.getElementById('frmUserInfo');
    if (!form.chkReset.checked)
    {
        return true;
    }
    if(form.oldPass.value == "")
    {
        document.getElementById('spanPasswordError').innerHTML = "You need to enter your old password";
        return false;
    }
    if(form.newPass.value.length < 6 )
    {
        document.getElementById('spanPasswordError').innerHTML = "Password too short";
		return false;
    }
    if (form.newPass.value != form.newCPass.value)
	{
		document.getElementById('spanPasswordError').innerHTML = "Passwords don't match";
		return false;
	}
	else
	{
		document.getElementById('spanPasswordError').innerHTML = "";
		return true;
	}
}

function show2CO(state)
{
    document.getElementById('btnSubmitForm').value = (state?"BUY NOW":"SIGN UP");
	if(navigator.appName=="Microsoft Internet Explorer")
        document.getElementById('2codisclaimer').style.display = (state?"block":"none");
    else
        document.getElementById('2codisclaimer').style.display = (state?"table":"none");
}

function showShipping(state)
{
    if(navigator.appName=="Microsoft Internet Explorer")
        document.getElementById('shippingtable').style.display = (state?"block":"none");
    else
        document.getElementById('shippingtable').style.display = (state?"table":"none");
}

function updatePrice(mix)
{
    var country = mix.substring(0,2);
    var continent = mix.substring(2,4);
    var arab = mix.substring(4);
    var pr = document.getElementById('pricespan');

    if (country=="LB")
    {
        pr.innerHTML = "70$"; return;
    }
    if (arab=="1" || continent=="EU")
        pr.innerHTML = "120$";
    else
        pr.innerHTML = "150$";
}
