function checkLength(fld) {
	// this function checks if the field has any content. if not: returns 1 and colors. if it does - returns 0 and whitens.
	var myfld = document.comfyFrm[fld] ;
	var myspan = document.getElementById(fld + "Note");
	if (myfld) {
		if (myfld.value.length == 0) {
			myfld.style.background = "#FFF2F2";
			if (myspan) {
				myspan.style.color = "#D73737";
			}
			return(1);
		} else {
			myfld.style.background = "#FFFFFF";
			if (myspan) {
				myspan.style.color = "#BBBBBB";
			}
			return (0);
		}
	}
}

function checkDate(fld) {
	// this function checks if the field has any content. if not: returns 1 and colors. if it does - returns 0 and whitens.
	var myfld = document.comfyFrm[fld] ;
	var myspan = document.getElementById("dateNote");
	if (myfld) {
		if (myfld.value.length == 0) {
			myfld.style.background = "#FFF2F2";
			if (myspan) {
				myspan.style.color = "#D73737";
			}
			return(1);
		} else {
			myfld.style.background = "#FFFFFF";
			if ((document.comfyFrm["days"].value.length != 0) && (document.comfyFrm["months"].value.length != 0) && (document.comfyFrm["years"].value.length != 0)) {
				if (myspan) {
					myspan.style.color = "#BBBBBB";
				}
			}
			return (0);
		}
	}
}

function checkCountry() {
	// this function checks if the selected country is USA, if so adds question about State.
	var countryfld = document.comfyFrm['country'];
	var statesDiv = document.getElementById("statesDiv");
	if (countryfld) {
		if (countryfld.value == "US") {
			statesDiv.style.display = "block";
		} else {
			statesDiv.style.display = "none";
		}
	}
}

function checkSubject() {
	
	var subjectfld = document.comfyFrm['subject'];
	var productDiv = document.getElementById("prodInfo");
	var techDiv = document.getElementById("techInfo");
	var personalDiv = document.getElementById("personalInfo");
	var inquiryDiv = document.getElementById("inquiry");
	if (subjectfld) {
		switch (subjectfld.value) {
			case "General Support":
				faqMessage.style.display = "block";
				productDiv.style.display = "block";
				techDiv.style.display = "none";
				personalDiv.style.display = "block";
				inquiryDiv.style.display = "block";
				break;
			case "Technical Support":
				faqMessage.style.display = "block";
				productDiv.style.display = "block";
				techDiv.style.display = "block";
				personalDiv.style.display = "block";
				inquiryDiv.style.display = "block";
				break;
			case "Retail":
				faqMessage.style.display = "none";
				productDiv.style.display = "block";
				techDiv.style.display = "none";
				personalDiv.style.display = "block";
				inquiryDiv.style.display = "block";
				break;
			case "Website Comments":
				faqMessage.style.display = "none";
				productDiv.style.display = "none";
				techDiv.style.display = "none";
				personalDiv.style.display = "block";
				inquiryDiv.style.display = "block";
				break;
			case "Other":
				faqMessage.style.display = "none";
				productDiv.style.display = "none";
				techDiv.style.display = "none";
				personalDiv.style.display = "block";
				inquiryDiv.style.display = "block";
				break;
			case "":
				faqMessage.style.display = "none";
				productDiv.style.display = "none";
				techDiv.style.display = "none";
				personalDiv.style.display = "none";
				inquiryDiv.style.display = "none";
				break;
		}
	}
}

function testimonialValidate(){
	var f = document.comfyFrm ;
	var errCount = 0;
	
	errCount = errCount + checkLength("testimonial");
	errCount = errCount + checkLength("parent");
	
	if (errCount==0){
		return true;
	}else{
		alert ("Please fill in the required fields");
		return false;
	}
}

function clubValidate(){
	var f = document.comfyFrm ;
	var errCount = 0;
	
	errCount = errCount + checkLength("first");
	errCount = errCount + checkLength("last");
	errCount = errCount + checkLength("country");
	errCount = errCount + checkLength("email");
	
	if (errCount==0){
		return true;
	}else{
		alert ("Please fill in the required fields");
		return false;
	}
}


function mediakitValidate(){
	var f = document.comfyFrm ;
	var errCount = 0;
	
	errCount = errCount + checkLength("name");
	errCount = errCount + checkLength("organization");
	errCount = errCount + checkLength("country");
	errCount = errCount + checkLength("email");
	errCount = errCount + checkLength("phone1");
	errCount = errCount + checkLength("myReq");
	
	if (errCount==0){
		return true;
	}else{
		alert ("Please fill in the required fields");
		return false;
	}
}

function registerValidate(){
	var f = document.comfyFrm ;
	var errCount = 0;
	
	errCount = errCount + checkLength("product");
	errCount = errCount + checkDate("days");
	errCount = errCount + checkDate("months");
	errCount = errCount + checkDate("years");
	errCount = errCount + checkLength("serial");
	errCount = errCount + checkLength("first");
	errCount = errCount + checkLength("last");
	errCount = errCount + checkLength("country");
	errCount = errCount + checkLength("email");
	
	if (errCount==0){
		return true;
	}else{
		alert ("Please fill in the required fields");
		return false;
	}
}

function contactValidate(){
	var f = document.comfyFrm ;
	var errCount = 0;
	var subjectfld = document.comfyFrm['subject'];
	
	if (subjectfld) {
		switch (subjectfld.value) {
			case "genSupport":
				errCount = errCount + checkLength("product");
				errCount = errCount + checkLength("first");
				errCount = errCount + checkLength("last");
				errCount = errCount + checkLength("country");
				errCount = errCount + checkLength("email");
				errCount = errCount + checkLength("country");
				break;
			case "techSupport":
				errCount = errCount + checkLength("product");
				errCount = errCount + checkLength("country");
				break;
			case "retail":
				errCount = errCount + checkLength("product");
				errCount = errCount + checkLength("country");
				break;
			case "website":
				errCount = 0;
				break;
			case "other":
				//no special required fields
				break;
				
		}
	}
	errCount = errCount + checkLength("subject");
	errCount = errCount + checkLength("first");
	errCount = errCount + checkLength("last");
	
	errCount = errCount + checkLength("email");
	errCount = errCount + checkLength("inquiry");
	
	if (errCount==0){
		return true;
	}else{
		alert ("Please fill in the required fields");
		return false;
	}
}

function formTermsCheck() {
	var f = document.comfyFrm ;
	if (f.terms.checked == true) {
		f.submitter.disabled = "";
	} else {
		f.submitter.disabled = true;
	}
}

function CustomerCheckSubject() {
	
	var subjectfld = document.comfyFrm['subject'];
	var productDiv = document.getElementById("prodInfo");
	var techDiv = document.getElementById("techInfo");
	var personalDiv = document.getElementById("personalInfo");
	var inquiryDiv = document.getElementById("inquiry");
	if (subjectfld) {
		switch (subjectfld.value) {
			case "Service" :case "Parenting": case "Stores":
				//faqMessage.style.display = "block";
				productDiv.style.display = "block";
				techDiv.style.display = "none";
				personalDiv.style.display = "block";
				inquiryDiv.style.display = "block";
				break;
			case "Support":
				//faqMessage.style.display = "block";
				productDiv.style.display = "block";
				techDiv.style.display = "block";
				personalDiv.style.display = "block";
				inquiryDiv.style.display = "block";
				break;
			case "":
				//faqMessage.style.display = "none";
				productDiv.style.display = "none";
				techDiv.style.display = "none";
				personalDiv.style.display = "none";
				inquiryDiv.style.display = "none";
				break;
		}
	}
}

function checkOs(){

// check if the client is using a MAC OSX System and display an error div in case  he does
	var os = document.comfyFrm['os'].value;

	var productDiv = document.getElementById("prodInfo");
	var techDiv = document.getElementById("techInfo");
	var personalDiv = document.getElementById("personalInfo");
	var inquiryDiv = document.getElementById("inquiry");
	var macDiv = document.getElementById("macNote");
	var techRecurringDiv  = document.getElementById("techRecurringDiv");

	switch (os) {
			case "Mac OSX":
					//faqMessage.style.display = "block";
					productDiv.style.display = "block";
					techDiv.style.display = "block";
					personalDiv.style.display = "none";
					inquiryDiv.style.display = "none";
					macDiv.style.display = "block";
					techRecurringDiv.style.display = "none";
					
				break;
			default:
					//faqMessage.style.display = "block";
					productDiv.style.display = "block";
					techDiv.style.display = "block";
					personalDiv.style.display = "block";
					inquiryDiv.style.display = "block";
					macDiv.style.display = "none";
					techRecurringDiv.style.display = "block";
				break;
		}

}

function checkProduct(){

// check if the client selected Elmo phone and display a relevant message if he did
	var product = document.comfyFrm['product'].value;

	var productDiv = document.getElementById("prodInfo");
	var techDiv = document.getElementById("techInfo");
	var personalDiv = document.getElementById("personalInfo");
	var inquiryDiv = document.getElementById("inquiry");
	var elmoDiv = document.getElementById("elmoNote");
	var elmoHide = document.getElementById("elmoHide");
	var techRecurringDiv  = document.getElementById("techRecurringDiv");

	switch (product) {
			case "Elmo":
					//faqMessage.style.display = "block";
					productDiv.style.display = "block";
					techDiv.style.display = "none";
					personalDiv.style.display = "none";
					inquiryDiv.style.display = "none";
					elmoDiv.style.display = "block";
					elmoHide.style.display = "none";
					
				break;
			default:
					//faqMessage.style.display = "block";
					productDiv.style.display = "block";
					techDiv.style.display = "block";
					personalDiv.style.display = "block";
					inquiryDiv.style.display = "block";
					elmoDiv.style.display = "none";
					elmoHide.style.display = "block";
					checkLength('product');
				break;
		}

}

function productVersionPopup(){
// opens a popup window dmonstrating how to locate the product version
				new_window=window.open('productversion.html','new_window_1', 'location=0, toolbar=0,status=0,menubar=0,resizable=0,location=0,scrollbars=0,left=200, top=100, width=451, height=425');
				new_window.focus();
}

function checkRecurring(){

	var chkRecurring = document.comfyFrm['chkRecurring'].checked;
	var techWhenDiv = document.getElementById("techWhenDiv");
	
	if (chkRecurring){
		techWhenDiv.style.display = "block";
		}
	else{
		techWhenDiv.style.display = "none";
	}
}

function MaincheckSubject() {

	var subjectfld = document.comfyFrm['subject'];
	//First, Hide All DIVs
		MainHideDivs();
	// Now Expose Divs According to the flow
	if (subjectfld) {
		switch (subjectfld.value) {
		
			case "Support" :case "Press": case "Testemonials": case "Club": case "Registration": 
				
				var currentDiv = document.getElementById(subjectfld.value + "Div");
					currentDiv.style.display = "block";
				break;
				
			case "BusinessDevelopment": 
				
				document.getElementById("CountryDiv").style.display = "block";
				document.getElementById("country").onchange = checkBusinessCountry;
				
				break;
				
			case "InternationalMarketing": 
				document.getElementById("CountryDiv").style.display = "block";
				document.getElementById("country").onchange = checkInternationalCountry;
				break;
				
			case "Website":
				document.getElementById("ContactFormDiv").style.display = "block";
				break;

			case "":
				//MainHideDivs();
				break;
		}
	}
}

function MainHideDivs(){
// ShortCut Functions to hide all the divs in the main contact form ( Relates To : MaincheckSubject(); )

	document.getElementById("SupportDiv").style.display = "none";
	document.getElementById("PressDiv").style.display = "none";
	document.getElementById("TestemonialsDiv").style.display = "none";
	document.getElementById("ClubDiv").style.display = "none";
	document.getElementById("RegistrationDiv").style.display = "none";
	
	document.getElementById("CountryDiv").style.display = "none";
	document.getElementById("InternationalMarketingDiv").style.display = "none";
	document.getElementById("BusinessDevelopmentDiv").style.display = "none";
	document.getElementById("EndDiv").style.display = "none";
	document.getElementById("telephoneDiv").style.display = "none";
	document.getElementById("ContactFormDiv").style.display = "none";
	
}


//Declare Update Div and XML Object Variables : 
var updDiv;
var req;

function loadXMLDoc(url) {
// Generic function to load an xml file to var req
// Seperation is for cross browser operation

	req = false;
    // branch for native XMLHttpRequest object
    if(window.XMLHttpRequest) {
    	try {
			req = new XMLHttpRequest();
        } catch(e) {
			req = false;
        }
    // branch for IE/Windows ActiveX version
    } else if(window.ActiveXObject) {
       	try {
        	req = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) {
        	try {
          		req = new ActiveXObject("Microsoft.XMLHTTP");
        	} catch(e) {
          		req = false;
        	}
		}
    }
	if(req) {
		req.onreadystatechange = processReqChange;
		req.open("GET", url, true);
		req.send("");
	}
}

function processReqChange() {
// Request processing function 
// (Give the xml the time to load)

// only if req shows "loaded"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
		
				document.getElementById(updDiv).style.display = "block";
				document.getElementById(updDiv).innerHTML = req.responseText;
				
        
        } else {
            alert("There was a problem retrieving the XML data:\n" +
                req.statusText);
        }
    }
}


function checkBusinessCountry() {
// Handle The Page when selecting the Business Development Subject
	var countryfld = document.comfyFrm['country'].value;
	if (countryfld!=""){
		document.getElementById("BusinessDevelopmentDiv").style.display = "block";
		document.getElementById("ContactFormDiv").style.display = "block";
		document.getElementById("EndDiv").style.display = "block";
		updDiv = "telephoneDiv";
		loadXMLDoc("/contact/businessPhone.asp?isoCode="+countryfld);
	}
	
	else {
		document.getElementById("BusinessDevelopmentDiv").style.display = "none";
		document.getElementById("telephoneDiv").style.display = "none";
		document.getElementById("EndDiv").style.display = "none";
		document.getElementById("ContactFormDiv").style.display = "none";}

}

function checkInternationalCountry() {
// Handle The Page when selecting the International Marketing Subject
	var countryfld = document.comfyFrm['country'].value;
	if (countryfld!=""){
		document.getElementById("InternationalMarketingDiv").style.display = "block";
		document.getElementById("ContactFormDiv").style.display = "block";
		document.getElementById("EndDiv").style.display = "block";
		updDiv = "telephoneDiv";
		loadXMLDoc("/contact/marketingPhone.asp?isoCode="+countryfld);
	}
	
	else {
		document.getElementById("InternationalMarketingDiv").style.display = "none";
		document.getElementById("telephoneDiv").style.display = "none";
		document.getElementById("EndDiv").style.display = "none";
		document.getElementById("ContactFormDiv").style.display = "none";}

}