var sRetString;

function flagError(err) {
	//alert("error on page")
	sError = ""
	for (var i in err) sError = sError + i + '=' + err[i] + '&';
	//alert(sError);
	sURL = '/lib/500.asp?Errortype=Javascript&' + sError
	var request = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");
	request.open("GET", sURL, true);
	request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
	request.send(null);
}

function ajaxFunction(url,sFunction){
 	try {
		var sRetString="";
		var request = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");
 		request.open("GET", url, true);
        request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
		request.onreadystatechange = function(){
			if (request.readyState == 4 && request.status == 200) {
                       if (request.responseText){
						sRetString=request.responseText;
						eval(sFunction);
                    }
               }
        }
        request.send(null);
	} catch(err) {
		flagError(err)
	}
}


function cf_formsubmit(oform) {
	try {
		sURL="/lib/widgets/contactform/action.php?";
		sURL+="txtaction=sendform";
		sURL+="&cf_name="+oform.cf_name.value;
		sURL+="&cf_phone="+oform.cf_phone.value;
		sURL+="&cf_email="+oform.cf_email.value;
		sURL+="&cf_state="+oform.cf_state[oform.cf_state.selectedIndex].value;
		sURL+="&cf_message="+oform.cf_message.value;
		// Uncommment the line below to debug
		//window.open(sURL); return false;
		ajaxFunction(sURL, "cf_formreturn(sRetString)");
	} catch(err) {
		flagError(err)
	}
}

function cf_formreturn(sString) {
	try {
		oform=document.LPForm;
		aArray=sString.split("|")
		if(aArray[0]=="1") {
			fName=oform.cf_name.value;
			if (fName.indexOf(" ")>=0) {
				aName=fName.split(" ");
				fName=aName[0];
				lName=aName[1];
			} else {
				lName="";
			}
			sPhone=stringFilter(oform.cf_phone.value);
			sURL='/lib/creative/credit/Confirmation2.asp?fname='+fName+'&lname='+lName+'&pp1='+sPhone.substring(0,3)+'&pp2='+sPhone.substring(3,6)+'&pp3='+sPhone.substring(6,10)+'&email='+oform.cf_email.value+'&state='+oform.cf_state[oform.cf_state.selectedIndex].value;
			document.getElementById("LPForm").innerHTML="<h3>Your message has been sent. Thank you!</h3>";
			window.location=sURL;
			//window.location='http://www.rsptrack.com/click.track?CID=30582&AFID=136050&SID=&fname='+fName+'&lname='+lName+'&pp1='+sPhone.substring(0,3)+'&pp2='+sPhone.substring(3,6)+'&pp3='+sPhone.substring(6,10)+'&email='+oform.cf_email.value+'&state='+oform.cf_state[oform.cf_state.selectedIndex].value;
		} else {
			aErrors=aArray[1].split(",");
			sError="Please make sure all fields are filled in. ";
			if(in_array("cf_email", aErrors)) { sError+=" The email address does not appear to be valid. "; }
			if(in_array("cf_phone", aErrors)) { sError+=" The phone does not appear to be valid. "; }
			alert(sError);
		}
	} catch(err) {
		flagError(err)
	}
}

function stringFilter (input) {
	s = input;
	filteredValues = "() -";     // Characters stripped out
	var i;
	var returnString = "";
	for (i = 0; i < s.length; i++) {  // Search through string and append to unfiltered values to returnString.
	var c = s.charAt(i);
	if (filteredValues.indexOf(c) == -1) returnString += c;
	}
	return returnString;
}

function in_array (needle, haystack, argStrict) {
    var key = '', strict = !!argStrict;

    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {
                return true;
            }
        }
    } else {
        for (key in haystack) {
            if (haystack[key] == needle) {
                return true;
            }
        }
    }

    return false;
}