var xmlHttp;

//
//var jsTitle;
var jsProdList;
var jsProdFlag;
var jsFN;
var jsSN;
var jsEM;
var jsCEM;
var jsCompName;
var jsPH;
var jsCountry;
var jsState;
var jsEmployees;
var jsYBBC;

//var jsAddress;
//var jsCity;
//var jsPostcode;

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try{
	  // Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e){
	  // Internet Explorer
		try{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

function InsertProductSaleInfo()
{
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null){
		alert ("Your browser does not support AJAX!");
		return;
	}
	
	var url="InsertProductSaleInfo.asp";
	url=url+"?ProductKey="+jsProdKey;
	url=url+"&ProductTitle="+jsProdTitle;
	url=url+"&ProductVerName="+jsProdVer;
	url=url+"&ProductAssmVer="+jsAssmVer;
	url=url+"&PurchasingDate="+jsPurchasingDate;
	url=url+"&NoOfLic="+jsNoOfLic;
	url=url+"&DistSale="+jsDistSale;
	
	url=url+"&Title="+jsTitle;
	url=url+"&FName="+jsFname;
	
	url=url+"&SName="+jsSname;
	url=url+"&BusiName="+jsBusiName;
	url=url+"&Email="+jsEM;
	url=url+"&Address="+jsAddress;
	url=url+"&City="+jsCity;
	url=url+"&State="+jsState;
	url=url+"&Country="+jsCountry;
	
	url=url+"&Postcode="+jsPostcode;
	url=url+"&Phone="+jsPhone;
	url=url+"&Fax="+jsFax;
	url=url+"&Mobile="+jsMobile;
	//url=url+"&sid="+Math.random();
	
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function EmailDetails()
{
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null){
		alert ("Your browser does not support AJAX!");
		return;
	}
	
	var url="form/softwarereg/EmailDetails.asp";
	url=url+"?ProdList="+jsProdList;
	url=url+"&FName="+jsFN;
	url=url+"&SName="+jsSN;
	url=url+"&Email="+jsEM;
	url=url+"&CompName="+jsCompName;
	url=url+"&Phone="+jsPH;
	url=url+"&Country="+jsCountry;
	url=url+"&State="+jsState;
	url=url+"&Employees="+jsEmployees;
	url=url+"&ybbc="+jsYBBC;

	//alert("process email = " + url);
	
	xmlHttp.onreadystatechange=stateChanged_Email;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
        
        //alert("after sending email...");
}

function StoreDetailsIntoTXT()
{
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null){
		alert ("Your browser does not support AJAX!");
		return;
	}
	
	var url="form/softwarereg/StoreDetailsIntoTXT.asp";
	url=url+"?ProdFlag="+jsProdFlag;
	url=url+"&ProdList="+jsProdList;
	url=url+"&ReferCompany="+document.frm.ReferCompany.value;
	url=url+"&FName="+jsFN;
	url=url+"&SName="+jsSN;
	url=url+"&Email="+jsEM;
	url=url+"&CompName="+jsCompName;
	url=url+"&Phone="+jsPH;
	url=url+"&Country="+jsCountry;
	url=url+"&State="+jsState;
	url=url+"&Employees="+jsEmployees;
        url=url+"&ybbc="+jsYBBC;
	
	//alert("Process text = " + url);
	
	xmlHttp.onreadystatechange=stateChanged_TXT;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function StoreDetailsIntoDB()
{
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null){
		alert ("Your browser does not support AJAX!");
		return;
	}
	
	var url="form/softwarereg/StoreDetailsIntoDB.asp";
	url=url+"?ProdList="+jsProdList;
	url=url+"&FName="+jsFN;
	url=url+"&SName="+jsSN;
	url=url+"&Email="+jsEM;
	url=url+"&CompName="+jsCompName;
	url=url+"&Phone="+jsPH;
	url=url+"&Country="+jsCountry;
	url=url+"&State="+jsState;
	url=url+"&Employees="+jsEmployees;
        url=url+"&ybbc="+jsYBBC;
        url=url+"&ProdFlag="+jsProdFlag;
	
	//alert("Process DB " + url);
	
	xmlHttp.onreadystatechange=stateChanged_DB;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);

        //alert("after process db");
}

function stateChanged_Email() 
{
	var retValue;
	if (xmlHttp.readyState==4){ 
		document.getElementById("Message").innerHTML=xmlHttp.responseText;
		//alert(xmlHttp.responseText);		

		//retValue=xmlHttp.responseText;
		//alert(retValue);
		//if(retValue=="Registered!"){
		//	InitialisePage();	
		//}
	}
        //else { alert("Not ready Sending Email..."); }

}

function stateChanged_TXT() 
{
	var retValue;
	if (xmlHttp.readyState==4){ 
		document.getElementById("Message").innerHTML=xmlHttp.responseText;
		//alert(xmlHttp.responseText);		

		//retValue=xmlHttp.responseText;
		//alert(retValue);
		//if(retValue=="Registered!"){
		//	InitialisePage();	
		//}
	}
}

function stateChanged_DB() 
{
	var retValue;
	if (xmlHttp.readyState==4){ 
		document.getElementById("Message").innerHTML=xmlHttp.responseText;
		//alert(xmlHttp.responseText);		

		//retValue=xmlHttp.responseText;
		//alert(retValue);
		//if(retValue=="Registered!"){
		//	InitialisePage();	
		//}
	}
        //else { alert("NOT xmlHttp.readyState==4"); }
}

function fOnLoad()
{
	
	InitialisePage();
}

function InitialisePage()
{
//	document.frm.MasterPlan.checked = true;

//	document.frm.fname.value="Charles";
//	document.frm.sname.value="Park";
//	document.frm.email.value="parkc@maus.com";
//	document.frm.confirmemail.value="parkc@maus.com";

//	document.frm.Company.value="MAUS Business Systems";
//	document.frm.Phone.value="02 9976 2177";
	document.frm.Country.value="No Entry";
	SelectCountry2();
//	document.frm.Employees.value="6-25";
}


function vchars(s){
	var i;
	var myChar;
	var theResult = false;
	for (i = 0; i < s.length; i++) {
		mychar = s.charAt(i);
		if ((mychar >= "0" && mychar <= "9") || (mychar >= "a" && mychar <= "z") || (mychar >= "A" && mychar <= "Z")){
			theResult = true
		}
	}
	return theResult;
}

function vdigits(s){
	var i;
	var sStripped = "";
	for (i = 0; i < s.length; i++) {
		if (s.charAt(i) >= "0" && s.charAt(i) <= "9"){
			sStripped = sStripped + s.charAt(i);
		}else{
			if (s.charAt(i) != " " && s.charAt(i) != "-" && s.charAt(i) != "(" && s.charAt(i) != ")"){
				return false;
			}
		}
	}
	if (sStripped.length > 0){
		return true;
	}else{
		return false;
	}
}

function filterComma(s){
	var splitStr;
	
	splitStr = s.split(",");
	return splitStr.join("");
}

function CheckForm()
{
		var f = document.frm;
		
		var CheckedProdNo = 0;
		jsProdList = null;
		
		if(f.MasterPlan.checked)
		{
			jsProdFlag = "1";
			if(jsProdList == null){
				jsProdList = f.MasterPlan.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.MasterPlan.value;
			}
			
			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = "0";
		}
		
		if(f.PoliciesManual.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.PoliciesManual.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.PoliciesManual.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		if(f.KPIScorecard.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.KPIScorecard.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.KPIScorecard.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		if(f.JobDescription.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.JobDescription.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.JobDescription.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		if(f.PerformanceReview.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.PerformanceReview.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.PerformanceReview.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		if(f.SellBizPro.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.SellBizPro.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.SellBizPro.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		if(f.InfoMemo.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.InfoMemo.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.InfoMemo.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		if(f.StockmarketPlus.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.StockmarketPlus.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.StockmarketPlus.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		if(f.KPIScorecardManager.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.KPIScorecardManager.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.KPIScorecardManager.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		
		
		if(f.ProfitBuilder.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.ProfitBuilder.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.ProfitBuilder.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
				
		if(f.StrategicPlanningPack.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.StrategicPlanningPack.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.StrategicPlanningPack.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
				
		if(f.HealthSafety.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.HealthSafety.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.HealthSafety.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
				
		if(f.QualityAssurance.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.QualityAssurance.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.QualityAssurance.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
				
		if(f.EmployeeManual.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.EmployeeManual.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.EmployeeManual.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
				
		if(f.FlowchartManager.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.FlowchartManager.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.FlowchartManager.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
				
		if(f.HRProfiler.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.HRProfiler.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.HRProfiler.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
				
		if(f.FinancialRatioandDiagnostics.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.FinancialRatioandDiagnostics.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.FinancialRatioandDiagnostics.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}
		if(f.PersonalityProfiler.checked)
		{
			jsProdFlag = jsProdFlag + "_" + "1";
			if(jsProdList == null){
				jsProdList = f.PersonalityProfiler.value;
			}
			else{
				jsProdList = jsProdList + "_" + f.PersonalityProfiler.value;
			}

			CheckedProdNo = CheckedProdNo + 1;
		}
		else{
			jsProdFlag = jsProdFlag + "_" + "0";
		}		
			
			
		if(CheckedProdNo == 0)
		{
			alert("Please, tick at least one product.");
			return;
		}
				
		var bIsValidForm = true;
		//   ***   Check Firstname   ***   //
		jsFN = f.fname.value;
		if (jsFN.length == 0 || (!vchars(jsFN))){
			document.getElementById("cell_fn").style.border = "1px dotted #ff0000";
			//document.getElementById("err_fn").innerHTML = "First name not valid!";
			bIsValidForm = false;
		}
		else
		{
			f.fname.value = filterComma(jsFN);
                        jsFN = f.fname.value;
			document.getElementById("cell_fn").style.border = "";
			//document.getElementById("err_fn").innerHTML = "";
		}

		//   ***   Check Surname   ***   //
		jsSN = f.sname.value;
		if (jsSN.length == 0 || (!vchars(jsSN))){
			document.getElementById("cell_sn").style.border = "1px dotted #ff0000";
			//document.getElementById("err_sn").innerHTML = "Surname not valid!";
			bIsValidForm = false;
		}
		else
		{
			 f.sname.value = filterComma(jsSN);
                        jsSN = f.sname.value;
			document.getElementById("cell_sn").style.border = "";
			//document.getElementById("err_sn").innerHTML = "";
		}
		
		//   ***   Check Email Address   ***   //
		jsEM = f.email.value;
		if ((jsEM.length < 8) || (jsEM.indexOf(".") == -1) || (jsEM.indexOf("@")< 2) || (!vchars(jsEM)))
		{
			document.getElementById("cell_em").style.border = "1px dotted #ff0000";
			//document.getElementById("err_em").innerHTML = "Invalid Email Address";
			bIsValidForm = false;
		}
		else
		{
			f.email.value = filterComma(jsEM);
			document.getElementById("cell_em").style.border = "";
			//document.getElementById("err_em").innerHTML = "";
		}

		//   ***   Check Confirmation Email   ***   //
		jsCEM = f.confirmemail.value;
		if (jsCEM != jsEM)
		{
			document.getElementById("cell_cem").style.border = "1px dotted #ff0000";
			//document.getElementById("err_cem").innerHTML = "This confirmation email does not match the email given above!";
			bIsValidForm = false;
		}
		else
		{
			f.confirmemail.value = filterComma(jsCEM);
			document.getElementById("cell_cem").style.border = "";
			//document.getElementById("err_cem").innerHTML = "";
		}	

		//   ***   Check Company Name   ***   //
		//var jsComName = f.Company.value
		//if (jsComName.length == 0 || (!vchars(jsComName))){
		//	document.getElementById("cell_comname").style.border = "1px dotted #ff0000";
		//	document.getElementById("err_comname").innerHTML = "Company not valid!";
		//	bIsValidForm = false;
		//}
		//else
		//{
		//	f.Company.value = filterComma(jsComName);
		//	document.getElementById("cell_comname").style.border = "";
		//	document.getElementById("err_comname").innerHTML = "";
		//}
		
		//   ***   Check Company Name   ***   //
		jsCompName = filterComma(f.Company.value);

		//   ***   Check Phone   ***   //
		jsPH = f.Phone.value;
		if (jsPH.length == 0 || (!vdigits(jsPH))){
			document.getElementById("cell_ph").style.border = "1px dotted #ff0000";
			//document.getElementById("err_ph").innerHTML = "Contact number not valid or not entered!";
			bIsValidForm = false;
		}
		else
		{
			f.Phone.value = filterComma(jsPH);
			document.getElementById("cell_ph").style.border = "";
			//document.getElementById("err_ph").innerHTML = "";
		}
		
		//   ***   Check Country, State, Employees   ***   //
		jsCountry = f.Country.value;
		var jsCountIdx = f.Country.selectedIndex;
		if (jsCountIdx == 0){
			document.getElementById("cell_country").style.border = "1px dotted #ff0000";
			//document.getElementById("err_country").innerHTML = "Country must be selected";
			bIsValidForm = false;
		}
		else
		{
			document.getElementById("cell_country").style.border = "";
			//document.getElementById("err_country").innerHTML = "";
		}
		
		jsState = f.State.value;
		var jsStateIdx = f.State.selectedIndex;
		if (jsStateIdx == -1){
			document.getElementById("cell_state").style.border = "1px dotted #ff0000";
			//document.getElementById("err_state").innerHTML = "State must be selected";
			bIsValidForm = false;
		}
		else
		{
			document.getElementById("cell_state").style.border = "";
			//document.getElementById("err_state").innerHTML = "";
		}
		
		jsEmployees = f.Employees.value;
		var jsEmployeesIdx = f.Employees.selectedIndex;
		if (jsEmployeesIdx == 0){
			document.getElementById("cell_employees").style.border = "1px dotted #ff0000";
			//document.getElementById("err_employees").innerHTML = "Employees must be selected";
			bIsValidForm = false;
		}
		else
		{
			document.getElementById("cell_employees").style.border = "";
			//document.getElementById("err_employees").innerHTML = "";
		}
		
                jsYBBC = f.ybbc.value;
		if (jsYBBC.length == 0 || (!vchars(jsYBBC))){
			document.getElementById("cell_ybbc").style.border = "1px dotted #ff0000";
			bIsValidForm = false;
		}
		else
		{
			f.ybbc.value = filterComma(jsYBBC);
                        jsYBBC = f.ybbc.value;
			document.getElementById("cell_ybbc").style.border = "";
		}


		if (!bIsValidForm){
			alert("Please, fix all errors marked in red!");
			//return false;
		}
		else
		{
			//document.frm.action = "http://www.maus.com/form/softwarereg/softwaredownloadreg.asp";
			//document.frm.submit();
			//alert("Before process download");
			EmailDetails();
			StoreDetailsIntoTXT();
			if(f.subscribe.checked){
				StoreDetailsIntoDB();
			}
			window.location.href = "http://www.maus.com/download_software.html";
		}
}

function SelectCountry2()
{
	var str;
	
	if(document.frm.Country.selectedIndex == 1 )
	{
		str="<select name=\"State\">";
		str=str+"<option value=\"NSW\" selected>NSW</option>";
		str=str+"<option value=\"VIC\">VIC</option>";
		str=str+"<option value=\"QLD\">QLD</option>";
		str=str+"<option value=\"WA\">WA</option>";
		str=str+"<option value=\"SA\">SA</option>";
		str=str+"<option value=\"ACT\">ACT</option>";
		str=str+"<option value=\"TAS\">TAS</option>";
		str=str+"<option value=\"NT\">NT</option>";
		str=str+"</select>";
		
		document.getElementById("StateList").innerHTML = str;
	}
	else
	{
		str="<select name=\"State\">";
		//str=str+"<option value=\"No Entry\" selected>Please Select</option>";
		str=str+"<option value=\"Other\" selected>Other</option>";
		str=str+"</select>";
	
		document.getElementById("StateList").innerHTML = str
	}
}
//-->

