///////////////////////////////////////////////////////////////////////////////
var debug = null;
var eMarketingSiteTitle = "GE Healthcare";
var eMktPrefix = "GEH";
var domain = ".gehealthcare.com";
//var path = "/Consulting_and_Safety_Training_Campaign/en_US/";
var currentSegmentCookieName = eMktPrefix + "CurrentSegment";
var visitorCookieName = "VisitorID";
// add array of segments: var segments = {};
var segmentId;
var segmentName;
var trackingCode;
var siteVersion;
var backURL;
var formFilledOut;
var contentRequest;
var contentFile;
var requestedContact;
var visitorId;


///////////////////////////////////////////////////////////////////////////////
// Generic Static Functions
///////////////////////////////////////////////////////////////////////////////

// This function will return either 'a' or 'b' depending upon the current millisecond time if it is even or odd.
function getRandomSiteVersion() {
  var today = new Date();
  today.setTime(today.getTime());
  if ((today.getTime() % 2) == 0) {
    return "a";
  } else {
    return "b";
  }
}

// This function when called will delay your JS for the perscribed number of milliseconds
function wasteSomeTime(millis) {
	var date = new Date();
	var curDate = null;
	do {
		curDate = new Date();
	} while (curDate - date < millis);
} 

function Querystring(qs) { // optionally pass a querystring to parse
	this.params = {};
	this.get=Querystring_get;
	
	if (qs == null) {
		qs = location.search.substring(1,location.search.length);
	}

	if (qs.length == 0) {
		return;
	}

	qs = qs.replace(/\+/g, ' ');
	var args = qs.split('&');
	
	for (var i = 0; i < args.length; i++) {
		var pair = args[i].split('=');
		var name = unescape(pair[0]);
		
		var value = (pair.length == 2)  ? unescape(pair[1]) : name;
		
		this.params[name] = value;
	}
}

function Querystring_get(key, default_) {
	var value = this.params[key];
	return (value != null) ? value : default_;
}


function getVisitorId() {
	visitorId = getVisitorCookie();
	if (visitorId == null || visitorId == "") {
		visitorId = generateVisitorId();
		setVisitorCookie();
	}
	return visitorId;
}

function getVisitorCookie() {
	return getCookie(visitorCookieName);
}

function setVisitorCookie() {
	if (visitorId != null) {
		setCookie(visitorCookieName, visitorId);
	}
}

function generateVisitorId() {
	// Get the milisecond time stamp
	// append .
	// append a random 4 digits
	var d = new Date();
	var result = new String(d.getTime());
	result = result + ".";
	var rand = new String(Math.random());
	return result + rand.substring(0,6).substring(2);
}

function financingOffer() {
	contentRequest = "financing";
	contentFile = "";
	
	setSegmentCookie();
	window.location = "./information.html";
}

// This function will trigger the Omniture call
function optInFormInit() {
	s.pageName=segmentName + " Opt in Form";
	s.server="";
	s.channel="";
	s.pageType="";
	s.prop1=siteVersion;//site version
	s.prop2=segmentName;//segment
	s.prop3=visitorId;//visitor id
	s.prop4="";
	s.prop5="";
	/* Conversion Variables */
	s.campaign="";
	s.state="";
	s.zip="";
	s.events="event1";//event1 Opt-In Form init, 2 OptForm sub, 3 req form init, 4 req form sub, 5 fin form init, 6 fin form sub
	s.products="";
	s.purchaseID="";
	s.eVar1="";
	s.eVar2="";
	s.eVar3=siteVersion;//site version
	s.eVar4=segmentName;//segment
	s.eVar5=visitorId;//visitor ID
	s.eVar6="initiated";//Opt-In Form
	s.eVar7="";//Request Form
	s.eVar8="";//Finance Form
	/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
	var s_code=s.t();if(s_code)document.write(s_code);//-->
}

function contains(a, obj) {
  var i = a.length;
  while (i--) {
    if (a[i] === obj) {
      return true;
    }
  }
  return false;
}

function prepopulateVideoSalesForm() {
	// array of fields
	var fields = new Array("VisitorID", "First Name", "Last Name", "Email", "Phone", "Zip Code", "Country");
	
	// set the data in the form
	// get the conetent data from cookie
	var formData = getContentFormData();
	if (formData) {
		//Split data into name/value pairs
		var pairs = formData.split("&");
		var i = 0;
		for (i = 0; i < pairs.length; i++) {
			
			var pair = pairs[i].split("=");
			if (pair[1] != null && pair[1] != "") {
				if (pair[0] != null && pair[0] != "") {
					
					if (contains(fields, pair[0])) {
						// Also set the proper country in the drop down
						if (pair[0] == "Country") {
							setDefaultSelection(document.getElementById("sai_country"), pair[1]);
						}
						
						var elem = document.getElementById(pair[0]);
						if (elem) {
							elem.value = pair[1];
						}
					}
					
				}
			}
			
		}
	}
}

function processVideoSalesForm() {
	parseSegmentCookie();

	//1. Populate Country Hidden Field
	var countryText = document.getElementById("sai_country").options[document.getElementById("sai_country").selectedIndex].value;
	document.getElementById("Country").value = countryText;
	document.getElementById("version").value = siteVersion;
	document.getElementById("segment").value = segmentId;
	if (trackingCode != null) {
		document.getElementById("TrackingCode").value = trackingCode;
	}
	document.getElementById("VisitorID").value = visitorId;

	//2. Validate Fields
	var errors = validateForm();
	if (errors == "") {
		//4a. condense form data
		var data = condenseFromData();
		//4b. store data in cookie
		setContentFormData(data);

		var returl = ((document.URL).split("//"))[1];
		i = returl.lastIndexOf("/");
		if (i > -1) {
			returl = "http://" + returl.substring(0, i+1) + "thankyou.html";
		}
		document.getElementById("returnURL").value = returl;
		
		//3. submit form
		document.salesForm.submit();
		wasteSomeTime(3000);

		//4. send to thank you page
  	window.location=returl;
	} else {
		//3. send error alert if the form is not proper
		var msg = "Please fill in all the required fields and resubmit.\n\nMissing:\n" + errors;
		alert(msg);
	}
}


function exitLink(link, contentType) {
	trackDownload(link, link.name);
	window.open(link.name);
}

///////////////////////////////////////////////////////////////////////////////
// Segment Cookie Functions
///////////////////////////////////////////////////////////////////////////////


function setNewsletterFormData(data) {
	setFormDataCookie("newsletter", data);
}

function setContentFormData(data) {
	setFormDataCookie("content", data);
}

function setFormDataCookie(formType, data) {
	if (formType != null && data != null) {
		var cookie = getFormDataCookie();
		var cookieValues;
		
		// Get the cookie if it exists to overwrite
		if (cookie != null) {
			cookieValues = cookie.split("|");
		} else {
			cookieValues = new Array("newsletter","", "content","");
		}
		if (formType == "content") {
			cookieValues[3] = data;
		} else {
			cookieValues[1] = data;
		}
		
		// Write the cookie out with updated data
		var cookieVal = cookieValues[0] + "|" + cookieValues[1] + "|" + cookieValues[2] + "|" + cookieValues[3]; 
		setCookie(eMktPrefix + "uf_data", cookieVal);
	}
}

function setCurrentSegmentCookie() {
  if (segmentId != null) {
    setCookie(currentSegmentCookieName, segmentId);
  }
}

function getCurrentSegmentCookie() {
  return getCookie(currentSegmentCookieName);
}

function getFormDataCookie() {
  return getCookie(eMktPrefix + "uf_data");
}

function getNewsletterFormData() {
	return getFormData("newsletter");
}

function getContentFormData() {
	return getFormData("content");
}

function getFormData(formType) {
  var cookie = getFormDataCookie();
	if (cookie != null) {
		cookieValues = cookie.split("|");
		if (formType == "content") {
			return cookieValues[3];
		} else {
			return cookieValues[1];
		}
	}
	return "";
}

function getSegmentCookie(id) {
  return getCookie(eMktPrefix + id);
}

function setSegmentCookie() {
  var cookieValue = segmentName + "~~" + siteVersion + "~~" + backURL + "~~";
  if (formFilledOut == "true") {
    cookieValue = cookieValue + "true~~";
  } else {
    cookieValue = cookieValue + "false~~";
  }
	
  if (contentRequest != null)  {
    cookieValue = cookieValue + contentRequest + "~~";
  } else {
		cookieValue = cookieValue + "~~";
	}
	
	if (requestedContact != null && requestedContact == true) {
		cookieValue = cookieValue + "true~~";
	} else {
		cookieValue = cookieValue + "false~~";
	}
  
  if (contentFile != null)  {
    cookieValue = cookieValue + contentFile;
  }
	
  setCookie(eMktPrefix + segmentId, cookieValue);
	if(trackingCode) {
		setCookie(eMktPrefix + "TrackingCode", trackingCode);
	}
}

function parseSegmentCookie() {
  if (segmentId != null) {
    var cookie = getSegmentCookie(segmentId);
    // If one exists set version to their setting
    if (cookie != null) {
      var cookieValues = cookie.split("~~");
      if (cookieValues.length == 8) {
        segmentName = cookieValues[1];
        siteVersion = cookieValues[2];
        backURL = cookieValues[3];
        formFilledOut = cookieValues[4];
        contentRequest = cookieValues[5];
				if (cookieValues[6] == "true") {
					requestedContact = true;
				} else {
					requestedContact = false;
				}
        contentFile = cookieValues[7];
      }
			// this was before adding Omniture Tracking Code
      if (cookieValues.length == 7) {
        segmentName = cookieValues[0];
        siteVersion = cookieValues[1];
        backURL = cookieValues[2];
        formFilledOut = cookieValues[3];
        contentRequest = cookieValues[4];
				if (cookieValues[5] == "true") {
					requestedContact = true;
				} else {
					requestedContact = false;
				}
        contentFile = cookieValues[6];
      }
    }
  }
	
	// Set the page's tracking code variable
	if (trackingCode == null || trackingCode == "") {
		getOmnitureTrackingCode();
	}
}

function isFormFilledOut() {
	if (getContentFormData() == "") {
		return false;
	} else {
		return true;
	}
}

///////////////////////////////////////////////////////////////////////////////
// Generic Cookie Functions
///////////////////////////////////////////////////////////////////////////////

function setCookie(name, value) {
  var cText = name + "=" + escape(value) + "; path=/; expires=" + genCookieExpiry(730);
  document.cookie = cText;
}

function getCookie(name) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split(";");
	var a_temp_cookie = "";
	var cookie_name = "";
	var cookie_value = "";
	var b_cookie_found = false; // set boolean t/f default f
	
	for (i = 0; i < a_all_cookies.length; i++) {
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split("=");
		
		
		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, "");
	
		// if the extracted name matches passed name
		if (cookie_name == name) {
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if (a_temp_cookie.length > 1) {
				cookie_value = unescape(a_temp_cookie[1].replace(/^\s+|\s+$/g, ""));
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = "";
	}
	if (!b_cookie_found) {
		return null;
	}
}

function genCookieExpiry(days) {
  if (days == null) {
    days = 365;
  }
  var today = new Date();
  today.setTime(today.getTime());
  var msec = days * 1000 * 60 * 60 * 24;
  var expires_date = new Date(today.getTime() + (msec));
  
  return expires_date.toGMTString();
}


function condenseFromData() {
	var data = "";
	var ftt = true;
	var f = document.forms[1];
	for (var i = 0; i < f.length; i++) {
		if (ftt) {
			ftt = false;
		} else {
			data += "&";
		}
		// Ensure that you only add the checked boxes
		if ((f.elements[i].name == "Communications Opt-In" || 
				 f.elements[i].name == "Immediate Contact") && 
				!f.elements[i].checked) {
			// skip it, don't add it to the cookie data stream!
//		} else if (f.elements[i].name == "contentFile") {
//			// don's scrub it just put it in!
//			data += f.elements[i].name + "=" + scrubData(f.elements[i].value);
		} else {
			data += f.elements[i].name + "=" + scrubData(f.elements[i].value);
		}
	}
	return data;
}

function scrubData(data) {
	if (data != null) {
		data.replace(/:/g, "");
		data.replace(/|/g, "");
		data.replace(/\?/g, "");
		data.replace(/&/g, "");
		data.replace(/=/g, "");
		data.replace(/</g, "");
		data.replace(/>/g, "");
	}
	return data;
}



///////////////////////////////////////////////////////////////////////////////
// Form Functions
///////////////////////////////////////////////////////////////////////////////

function updateContactForm() {
	var contactBox = document.getElementById("Immediate Contact");
	if (contactBox) {
		if (contactBox.checked) {
			// make the proper form fields required
			var x;
			x = document.getElementById("PhoneInfo");
			if (x) {
				x.className = "unhidden";
			}
			x = null;
			x = document.getElementById("validate-phone1");
			if (x) {
				x.className = "hidden";
			}
			x = null;
			x = document.getElementById("validate-phone2");
			if (x) {
				x.className = "unhidden";
			}
			x = null;
			x = document.getElementById("validate-besttime1");
			if (x) {
				x.className = "hidden";
			}
			x = null;
			x = document.getElementById("validate-besttime2");
			if (x) {
				x.className = "unhidden";
			}
			x = null;
			x = document.getElementById("validate-interest1");
			if (x) {
				x.className = "hidden";
			}
			x = null;
			x = document.getElementById("validate-interest2");
			if (x) {
				x.className = "unhidden";
			}
			x = null;
		} else {
			var x;
			x = document.getElementById("PhoneInfo");
			if (x) {
				x.className = "hidden";
			}
			x = null;
			x = document.getElementById("validate-phone1");
			if (x) {
				x.className = "unhidden";
			}
			x = null;
			x = document.getElementById("validate-phone2");
			if (x) {
				x.className = "hidden";
			}
			x = null;
			x = document.getElementById("validate-besttime1");
			if (x) {
				x.className = "unhidden";
			}
			x = null;
			x = document.getElementById("validate-besttime2");
			if (x) {
				x.className = "hidden";
			}
			x = null;
			x = document.getElementById("validate-interest1");
			if (x) {
				x.className = "unhidden";
			}
			x = null;
			x = document.getElementById("validate-interest2");
			if (x) {
				x.className = "hidden";
			}
			x = null;
		}
	}
}

function OtherSpecialitySelected() {
	val = document.getElementById("GEAreaOfInterest").options[document.getElementById("GEAreaOfInterest").selectedIndex].value;
	if (val == "Other") {
		document.getElementById("OtherSpecialty").className = "unhidden";
	} else {
		document.getElementById("OtherSpecialty").className = "hidden";
	}
}


function processNewsletterForm() {
	contentRequest = "eNewsletter";
	//1. Validate Fields
	var errors = validateForm();
	if (errors =="") {
		//2. Populate dynamic fields
		addHiddenFieldData();
		//3a. condense form data
		var data = condenseFromData();
		//3b. store data in cookie
		setNewsletterFormData(data);
		//5. submit form
		document.form1.submit();
		//4. send Omniture data
		
		s.pageName=segmentName + " Opt In Thank You";
		s.server="";
		s.channel="";
		s.pageType="";
		s.prop1=siteVersion;//site version
		s.prop2=segmentName;//segment
		s.prop3=visitorId;//visitor id
		s.prop4="";
		s.prop5="";
		/* Conversion Variables */
		s.campaign="";
		s.state="";
		s.zip="";
		s.products="";
		s.purchaseID="";
		s.events="event2";//event1 Opt-In Form init, 2 OptForm sub, 3 req form init, 4 req form sub, 5 fin form init, 6 fin form sub
		s.eVar1="";
		s.eVar2="";
		s.eVar3=siteVersion;//site version
		s.eVar4=segmentName;//segment
		s.eVar5=visitorId;//visitor ID
		s.eVar6="submitted";//Opt-In Form
		s.eVar7="";//Request Form
		s.eVar8="";//Finance Form
		/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
		var s_code=s.t();if(s_code)document.write(s_code);
		
		//6. send to thank you page
		alert("Thank you for your interest.");
	} else {
		var msg = "Please fill in all the required fields and resubmit.\n\nMissing:\n" + errors;
		alert(msg);
	}
}


function processContentForm() {
	parseSegmentCookie();
	//1. Validate Fields
	var errors = validateForm();
	if (errors == "") {
    	formFilledOut = "true";
    	setSegmentCookie();
		//2. Populate dynamic fields
		addHiddenFieldData();
		//4a. condense form data
		var data = condenseFromData();
		//4b. store data in cookie
		setContentFormData(data);
		
		var returl = ((document.URL).split("//"))[1];
		i = returl.lastIndexOf("/");
		if (i > -1) {
			returl = "http://" + returl.substring(0, i+1) + backURL;
		}
		
		//3. submit form
		document.form1.submit();
		wasteSomeTime(3000);
		
		//4. send Omniture data
		if (contentRequest == "financing") {
		  s.pageName=segmentName + " Finance Request Thank You";
		  s.eVar7="";//Request Form
		  s.eVar8="submitted";//Finance Form
		  s.events="event6";//event1 Opt-In Form init, 2 OptForm sub, 3 req form init, 4 req form sub, 5 fin form init, 6 fin form sub
		} else if (contentRequest == "brochureRequest") {
		  s.pageName=segmentName + " Brochure Request Thank You";
		  s.eVar7="submitted";//Request Form
		  s.eVar8="";//Finance Form
		  s.events="event4";//event1 Opt-In Form init, 2 OptForm sub, 3 req form init, 4 req form sub, 5 fin form init, 6 fin form sub
		} else {
		  s.pageName=segmentName + " Info Request Thank You";
		  s.eVar7="submitted";//Request Form
		  s.eVar8="";//Finance Form
		  s.events="event4";//event1 Opt-In Form init, 2 OptForm sub, 3 req form init, 4 req form sub, 5 fin form init, 6 fin form sub
		}
		s.server="";
		s.channel="";
		s.pageType="";
		s.prop1=siteVersion;//site version
		s.prop2=segmentName;//segment
		s.prop3=visitorId;//visitor id
		s.prop4="";
		s.prop5="";
		/* Conversion Variables */
		s.campaign="";
		s.state="";
		s.zip="";
		s.products="";
		s.purchaseID="";
		s.eVar1="";
		s.eVar2="";
		s.eVar3=siteVersion;//site version
		s.eVar4=segmentName;//segment
		s.eVar5=visitorId;//visitor ID
		s.eVar6="";//Opt-In Form
		/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
		var s_code=s.t();if(s_code)document.write(s_code);
		
		if (contentRequest != "financing" && contentRequest != "brochureRequest" && contentFile != null && contentFile != "") {
			//6. track file download
			trackDownload(null, contentFile);
			//7. deliver the file
			var str = contentFile;
			contentFile = null;
			setSegmentCookie();
			window.location=str;
		} else {
			alert("Thank you for your interest.");
			//6. send to thank you page (no file requested)
	    	window.location=returl;
		}
	} else {
		var msg = "Please fill in all the required fields and resubmit.\n\nMissing:\n" + errors;
		alert(msg);
	}
}


function validateForm() {
	var errors = "";
	var countryText = document.getElementById("sai_country").options[document.getElementById("sai_country").selectedIndex].value;
	if (document.getElementById("First Name").value == "") {
		errors += "First Name\n";
	}
	if (document.getElementById("Last Name").value == "") {
		errors += "Last Name\n";
	}
	if (countryText == "none") {
		errors += "Country\n";
	}
	if (document.getElementById("Email").value == "") {
		errors += "Email\n";
	}

	// Extra Validation for video form
	if (document.getElementById("FormType").value == "video") {
	  if (document.getElementById("Zip Code").value == "") {
	    errors += "Postal Code\n";
	  }
	  if (document.getElementById("Phone").value == "") {
	    errors += "Phone Number\n";
	  }
	}
	
	// Extra Validation for long form
	if (document.getElementById("FormType").value == "long") {
		
		// clinical specialty
	  if (!document.getElementById("GEAreaOfInterest").selectedIndex || 
				document.getElementById("GEAreaOfInterest").selectedIndex == 0) {
	    errors += "Clinical Specialty\n";
	  } else {
			if (document.getElementById("GEAreaOfInterest").options[document.getElementById("GEAreaOfInterest").selectedIndex].value == "Other") {
				// other specialty (if cs is other)
				if (document.getElementById("Clinical Specialty").value == "") {
					errors += "Other Speciality\n";
				}
			}
		}
		
	  if (document.getElementById("Zip Code").value == "") {
	    errors += "Postal Code\n";
	  }
		
		// Add contact info if contact request was asked for
		if(document.getElementById("Immediate Contact").checked) {
		  if (document.getElementById("Phone").value == "") {
		    errors += "Phone Number\n";
		  }
		  if (!document.getElementById("Best Time").selectedIndex || 
					document.getElementById("Best Time").selectedIndex == 0) {
		    errors += "Best Time to Call\n";
		  }
		}
	}
	
	return errors;
}

function addHiddenFieldData() {
	var countryText = document.getElementById("sai_country").options[document.getElementById("sai_country").selectedIndex].value;
	document.getElementById("Country").value = countryText;

	if (document.getElementById("sai_state") != null) {
	  var stateText = document.getElementById("sai_state").options[document.getElementById("sai_state").selectedIndex].value;
	  document.getElementById("State").value = stateText;
	}
	
	if (document.getElementById("GEAreaOfInterest") != null) {
		var dataString = "";
		// run through the select box and append any of the selected areas of interest
		var sel = document.getElementById("GEAreaOfInterest");
		for (i=0; i < sel.length; i++) {
			if (sel.options[i].selected == true) {
				if (dataString != "") {
					dataString = dataString + ";";
				}
				dataString = dataString + sel.options[i].value;
			}
		}
		document.getElementById("GEHAreaOfInterest").value=dataString;
	}
	
	document.getElementById("version").value = siteVersion;
	document.getElementById("ContentRequested").value = contentRequest;
	document.getElementById("segment").value = segmentId;
	if (trackingCode != null) {
		document.getElementById("TrackingCode").value = trackingCode;
	}
	document.getElementById("VisitorID").value = visitorId;
	
	// If this was a financing request set the return URL to the previous page
	var url = ((document.URL).split("//"))[1];
	if (contentRequest == "financing" || contentRequest == "brochureRequest") {
		i = url.lastIndexOf("/");
		if (i > -1) {
			url = "http://" + url.substring(0, i+1) + backURL;
		}
	}
	
	document.getElementById("returnURL").value = url;
}


function prepopulateForm() {
	// get the conetent data from cookie
	var formData = getContentFormData();
	if (formData) {
		//Split data into name/value pairs
		var pairs = formData.split("&");
		var i = 0;
		for (i = 0; i < pairs.length; i++) {
			var pair = pairs[i].split("=");
			if (pair[1] != null && pair[1] != "") {
				if (pair[0] != null && pair[0] != "") {
					// handle the selection / drop down boxes
					if (pair[0] == "Salutation") {
						setDefaultSelection(document.getElementById("Salutation"), pair[1]);
					} else if (pair[0] == "State") {
						setDefaultSelection(document.getElementById("sai_state"), pair[1]);
					} else if (pair[0] == "Country") {
						setDefaultSelection(document.getElementById("sai_country"), pair[1]);
					} else if (pair[0] == "Best Time") {
						setDefaultSelection(document.getElementById("Best Time"), pair[1]);
					} else if (pair[0] == "GEAreaOfInterest") {
						//Skip do nothing
					} else if (pair[0] == "GEHAreaOfInterest") {
						var dataString = pair[1];
						var interests = dataString.split(";");
						for (j = 0; j < interests.length; j++) {
							var sel = document.getElementById("GEAreaOfInterest");
							for (k=0; k < sel.length; k++) {
								if (sel.options[k].value == interests[j]) {
									sel.options[k].selected = true;
								}
							}
							
							
							
						}
					// handle the check boxes
					} else if (pair[0] == "Immediate Contact" && pair[1] != "") {
						document.getElementById("Immediate Contact").checked = true;
						var x;
						x = document.getElementById("validate-phone1");
						if (x) {
							x.className = "hidden";
						}
						x = null;
						x = document.getElementById("validate-phone2");
						if (x) {
							x.className = "unhidden";
						}
						x = null;
						x = document.getElementById("validate-besttime1");
						if (x) {
							x.className = "hidden";
						}
						x = null;
						x = document.getElementById("validate-besttime2");
						if (x) {
							x.className = "unhidden";
						}
						x = null;
						x = document.getElementById("validate-interest1");
						if (x) {
							x.className = "hidden";
						}
						x = null;
						x = document.getElementById("validate-interest2");
						if (x) {
							x.className = "unhidden";
						}
						x = null;
					} else if (pair[0] == "Communications Opt-In" && pair[1] != "") {
						document.getElementById("Communications Opt-In").checked = true;
					} else {
						// at this point it should be a text field now
						var elem = document.getElementById(pair[0]);
						if (elem) {
							elem.value = pair[1];
						}
					}
				}
			}
		}
	}
}

function setDefaultSelection(selectObj, value) {
	if (selectObj != null && value != null) {
		var opts = selectObj.options;
		var j = 0;
		var done = false;
		while (!done && j < opts.length) {
			if (opts[j].value == value) {
				done = true;
				selectObj.selectedIndex = j;
			}
			j++;
		}
	}
}



///////////////////////////////////////////////////////////////////////////////
// Asset Retrieval Functions
///////////////////////////////////////////////////////////////////////////////

function retrieveContent(link, contentType) {
	// set content type requested
  parseSegmentCookie();
	contentRequest = contentType;
  setSegmentCookie();
	// track interest "open"
  triggerOmnitureEvents("open", false);
	if (isFormFilledOut() || contentRequest == "contact") {
		// track download
		trackDownload(link, link.name);
		// deliver the file
		link.href = link.name;
	} else {
		// populate filename
		contentFile = link.name;
	  setSegmentCookie();
		// send to form
		link.href = "information.html";
	}
}

function stripDirectory(path) {
	var i = path.lastIndexOf("/");
	if (i > -1) {
		return path.substr(i+1);
	} else {
		return path;
	}
}

///////////////////////////////////////////////////////////////////////////////
// Omniture Functions
///////////////////////////////////////////////////////////////////////////////

// This function pulls the Omniture tracking code out of the query string if it exists
function getOmnitureTrackingCode() {
	// Look at current query string
	var qs = new Querystring();
	var tc = qs.get("cid");
	if (tc != null && tc != "") {
		trackingCode = tc;
	} else {
	  tc = qs.get("src");
		if (tc != null && tc != "") {
			trackingCode = tc;
		} else {
			// Now if the query string did not have it check the cookie
	    var cookie = getCookie(eMktPrefix + "TrackingCode");
	    // If one exists set version to their setting
	    if (cookie != null && cookie != "" && cookie != "undefined") {
				trackingCode = cookie;
			}
		}
	}
}

//TODO fill this in
function triggerOmnitureEvents(a, b) {
	//TODO populate this function when ready for Omniture
}


function trackDownload(link, filename) {
	// Determine if it is a download or exit link
	var l = segmentId + "_" + siteVersion + "_" + contentRequest + ":" + stripDirectory(filename);
	if (filename.indexOf("assets/") > -1) { // it's a file download
		s.tl(link, "d" , l);
	} else { // it is an external link
		s.tl(link, "e" , l);
	}
}
