//110608
/************ don't modify below this line *********
 *************  Version: OnExit 7.2 - Custom *******
 ****** Copyright 2001-2008 ForeseeResults, Inc****/
var popupURL = "//www.foreseeresults.com/survey/display";	//do not change this url
var FSRImgURL= "//www.foreseeresults.com/survey/FSRImg"; 	//do not change this url
var CSURL= "//www.foreseeresults.com/survey/processCPP"; 	//do not change this url
var OTCImgURL = "//controller.foreseeresults.com/fsrSurvey/OTCImg";
var fullURL="";
var winOptions = "toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=1,height=1,top=4000,left=4000";
var ckAlreadyShown = triggerParms["ascookie"];
var ckLoyaltyCount = triggerParms["lfcookie"];
var pageVisited	=0;
var surveyPresentedBy = "normal";
var dcQString="";
var fsrTrackerImg;
var OTCImg;
var FSRImg;
var surveyProcessCont = 1;
var newDt;
var currTime;	
var runningscout=null;
var scoutTracker=null;
var trackerFromClick = false;
var fsrAbort=false;
var hParent = window.opener;
var tempURL= null;
var oeCounter=1;
var persistentExpires = new Date();
persistentExpires.setTime(persistentExpires.getTime() + (triggerParms["rw"]*60*1000));
var detect = navigator.userAgent.toLowerCase();
var version= navigator.appVersion.toLowerCase();
var fsr_aol= ((detect.indexOf("aol") >=0) || (detect.indexOf("america online browser") >=0)) ? 1 : 0;
var fsr_opera = (detect.indexOf("opera") >=0) ? 1 : 0;
var fsr_NS = ((detect.indexOf("netscape") >=0) || (detect.indexOf("firefox") >=0)) ? 1 : 0;
var fsr_NS8=(detect.indexOf("netscape/8") >=0) ? 1 : 0;	
var fsr_NS70=(detect.indexOf("netscape") >= 0 && detect.indexOf("7.0") >= 0) ? 1 : 0;
var fsr_NS62=(detect.indexOf("netscape") >= 0 && detect.indexOf("6.2") >= 0) ? 1 : 0;
var fsr_mac= (navigator.platform.indexOf("Win32") < 0) ? 1 : 0;
var fsr_safari=(detect.indexOf("safari") >=0) ? 1 : 0;
var fsr_ie=(detect.indexOf("msie")>=0 && version.indexOf("win") != -1) ? 1 :0;
var fsr_sp2=(navigator.appMinorVersion && navigator.appMinorVersion.toLowerCase().indexOf('sp2') != -1) ? 1 : 0
if (fsr_ie && fsr_sp2) triggerParms["sMode"] = 0;
var flash_version= 4;
var canFlashPlay=0;
var PROCESS_RSID=1;	/*action id to generate respondent*/
var PROCESS_CPP=2;	/*action id to save CPPs*/
var xPosition="CENTER";   	//enter "CENTER", "LEFT", or "RIGHT" for horizontal positioning
var yPosition="CENTER";    	//enter "CENTER", "TOP", or "BOTTOM" for vertical positioning
var pin_it = "false";
/* FOR MSIE BASED BROWSERS ONLY - detect Flash Plugin & Version*/
if (fsr_ie && triggerParms["flashDetect"] == 1) {
document.write('<SCR' + 'IPT LANGUAGE=VBScript\> \n');
document.write('on error resume next \n');
document.write('canFlashPlay = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & flash_version)))\n');
document.write('</SCR' + 'IPT\> \n');
}
function cppUrlPatch(s) {
	var translated = "";
	if (s==null) return translated;
	var i; 
	var found = 0;
	for(i = 0; (found = s.indexOf(':', found)) != -1; ) {
		translated += s.substring(i, found) + "|";
		i = found + 1;
		found++;
	}
	translated += s.substring(i, s.length);
	return translated;
}
function specialEscape(str) {
	var translated = "";
	if (str==null) return translated;
	var i; 
	var found = 0;
	for(i = 0; (found = str.indexOf('+', found)) != -1; ) {
		translated += str.substring(i, found) + "%2B";
		i = found + 1;
		found++;
	}
	translated += str.substring(i, str.length);
	return translated;
}
/** Event Listener generic functions **/
function fsrAttachEvent(obj, evt, fnc, useCapture){
	if (fnc == null || obj == null) return true;
	if (obj.addEventListener && document.addEventListener) {
		obj.addEventListener(evt,fnc,useCapture);	/*W3C DOM*/
	}
	else if (obj.attachEvent) {
		obj.attachEvent("on"+evt,fnc);	/*IE DOM Model*/
	}
	else {
		/**otherwise not supported by major browsers - disable event listener mode**/
		return false;
	}
	return true;
} 
function ForeCStdGetCookie (name) {
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen) {
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg) {
			return ForeCStdGetCookieVal (j);
		}
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0) {
			break;
		}
	}
	return null;
}
function ForeCStdSetCookie (name, value) {
	var argv = ForeCStdSetCookie.arguments;
	var argc = ForeCStdSetCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	document.cookie = name + "=" + value +
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
	((path == null) ? "" : ("; path=" + path)) +
	((domain == null) ? "" : ("; domain=" + domain)) +
	((secure == true) ? "; secure" : "");
}
function ForeCStdGetCookieVal(offset) {
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1) {
		endstr = document.cookie.length;
	}
	return document.cookie.substring(offset, endstr);
}
function fsrOnUnload(){
	if (triggerParms["oeMode"] == 1 && fsrReadCookie(ckAlreadyShown) == null) {
		if (ForeCStdGetCookie('currentURL') != null && ForeCStdGetCookie('currentURL') != 'blank') {
			fsrWriteCookie('previousURL',escape(ForeCStdGetCookie('currentURL')));
		}
		ForeCStdSetCookie('currentURL', 'blank', null,'/',triggerParms['domain']);
		
		/** MultiTabs Fix - New code  added to decrease the Tab Window Counts **/
		var iTotal = fsrReadCookie("isAlive");
    	if (iTotal==null) iTotal=0; else iTotal--;
    	fsrWriteCookie('isAlive', iTotal);		
	}
	//commenting for Mcafee - 3/31/08 - now dropping this cookie separately
	//if (triggerParms["oeMode"] == 1 && fsrReadCookie(ckAlreadyShown) == null) {
	//	if (fsrReadCookie('currentURL') != null || fsrReadCookie('currentURL') != 'blank') {
	//		fsrWriteCookie('previousURL',escape(fsrReadCookie('currentURL')));
	//	}
	//	fsrWriteCookie('currentURL', 'blank');
	//}
}
function fsrOnUnloadTracker(){
	if(triggerParms["dhtmlWinRep"] == 0) {
		fsrWriteCookie(triggerParms["scout_chk"],"ScoutClosed");
	}
}
function setFSRSurveyCookie() {
		fsrWriteCookie(ckAlreadyShown, 'true');
}
function getURLParameters(paramName) {
	try {
	var sURL = window.document.URL.toString();		
	if (sURL.indexOf("?") == -1 || paramName==null) return "";
	var arrParams = sURL.split("?");			
	var arrURLParams = arrParams[1].split("&");		
	for (var i=0;i<arrURLParams.length;i++)
	{
	    var sParam =  arrURLParams[i].split("=");
	    if (paramName.toLowerCase()==sParam[0].toLowerCase()){
	       	return unescape(sParam[1]);
	    }
	}
	} catch (e) {}
	return "";

}
function sizeWindow(w,h) {
	/**important xp2 fix - do not change these lines below**/
	window.moveTo(self.screen.width/2 - w/2,self.screen.height/2 - h/2);
	window.resizeTo(w,h);
}
function fsrIsCookieEnabled() {
	var cookieEnabled=(navigator.cookieEnabled)? true : false;
	/*if not IE4+ nor NS6+*/
	if (typeof navigator.cookieEnabled=="undefined" && !cookieEnabled){ 
		document.cookie="testcookie";
		cookieEnabled=(document.cookie.indexOf("testcookie")!=-1)? true : false;
	}
	return cookieEnabled;
}
function isOnExcludeList(){
	hParent = window.opener;
	var parentURLPath="";
	if (hParent != null ){parentURLPath = hParent.location.pathname;}	
	else {parentURLPath = window.parent.location.pathname;}
	if(excludeList.length == 0) {
		return false;
	}
	/* can still reach the parent - check if on excludeList*/
	for(wlKey in excludeList) {
		if (parentURLPath.indexOf(excludeList[wlKey]) != -1) {
	 		scoutTracker = fsrReadCookie(triggerParms["scout_chk"]);
	 		/** don't exclude if tracker is open, let it override**/
		    if (scoutTracker!=null) {return false;}	
			return true;
		}
	}
	return false;
}
function setVisualSciencesId(theURL) {
	var VisualSciencesId = fsrReadCookie("v1st");
	if(VisualSciencesId != null && VisualSciencesId != "")
	{
		triggerParms["cpp_4"] = "VisualSciencesId:" + escape(VisualSciencesId);	
	}
}
function setOmnitureId(theURL) {
	var OmnitureId = fsrReadCookie("s_foreSeeId");
	if(OmnitureId != null && OmnitureId != "")
	{
		triggerParms["cpp_0"] = "OmnitureId:" + escape(OmnitureId);	
	}
}
function checkFlashParms(tagName){
	tagName = tagName.toLowerCase();
	for(key in flashTagList) {
		if(tagName.indexOf(flashTagList[key]) != -1) {
			return true;
		}
	}
	return false;
}
function fsr_detectFlash(){
	if (fsr_ie){
	    /** For IE Compatible browsers **/
	    var obj = document.all.tags("OBJECT");
	    for (var e=0; e<obj.length;e++){
			for (var d=0; d<obj[e].attributes.length;d++){
				if ((obj[e].attributes[d].name).toLowerCase() == "classid") {
					if (checkFlashParms(obj[e].attributes[d].value)){
						return true;
					}
					else {
						return false;
					}
				}
			}
	    }
	}					    
	else{
	    /** For Netscape Compatible browsers **/
	    for (var e=0; e<document.embeds.length;e++){
			if (checkFlashParms(document.embeds[e].src)) {
				return true;
			}
	    }
	}
	return false;
}
function isValidFlash(){
   if (triggerParms["flashDetect"]==1){
        if (fsr_detectFlash()){
			var fsr_opera75 = (detect.indexOf("opera 7.54u1") >=0) ? 1 : 0;
			if (fsr_NS)
				flash_version=7;	
			if (fsr_mac)
				flash_version=8;	
			/** FOR MOZILLA BASED BROWSERS - detect flash plugin & version **/
			var plugin=(navigator.mimeTypes&&navigator.mimeTypes["application/x-shockwave-flash"]?navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin:0);
			if (plugin && parseInt(plugin.description.substring(plugin.description.indexOf(".")-1))>=flash_version) 
			{ canFlashPlay=1; }
			if ((plugin ==0 || plugin==null) && !canFlashPlay){
				triggerParms["displayMode"]=1;		
	   		}
			else {
				/** Skip dhtml invite for the following browsers:
				 ** For Opera ver 7.5 and below and 
				 ** All Netscape Browsers with flash ver < 7
				 ** Mac Browsers with flash 7 and below
				 ** Reason: possible bug in browser or with flash player using wmode
				 ** Show Flash for all other browsers with flash >=4
				 ** Supports IE5+,AOL7+,AOLExplorer,MAC,OPERA8+,FF,NS7+
				 **/
				if ((fsr_NS && canFlashPlay) || (!fsr_opera75 && canFlashPlay)){
					if (triggerParms["displayMode"] != 2){
						return true;		
					}
				}
				triggerParms["displayMode"]=2;		
			}
		}
   }
   if (triggerParms["displayMode"] >0){
   	triggerParms["dhtmlDelay"]= 1000;	
	return true;
   }
   return false;
}
function oeImgProc() {
	if(triggerParms["compliant508"] == 1) { showDHTMLWin(); }
	else {setTimeout("showDHTMLWin();", triggerParms["dhtmlDelay"],"JavaScript");}
}
function fsrShowSurvey(){
	if(dcQString == "") { oeImgProc(); }
	else {
		newDt   = new Date();
		currTime= newDt.getTime(); 
		FSRImg = new Image();
		FSRImg.onerror = imgErrorProc;
		FSRImg.onload = imgOnloadProc;
		FSRImg.src = FSRImgURL + "?" + dcQString + "&uid="+ currTime;	
	}
}
function imgOnloadProc() {
	if(surveyProcessCont == 1 && FSRImg.width == 3) { oeImgProc(); }
  	return true;
}
function imgErrorProc() {
	surveyProcessCont = 0;
	return true;
}
function otcOnloadProc() {
	if(surveyProcessCont == 1 && OTCImg.width == 3) { fsrShowSurvey(); }
	else { surveyProcessCont = 0; }
  	return true;
}
function otcErrorProc() {
	fsrShowSurvey();
	return true;
}
function fsrSendReq(actId) {
	var midVal= (triggerParms["mid"] == null) ? triggerParms["sid"] : specialEscape(escape(triggerParms["mid"]));
	if (actId==PROCESS_RSID) {
		CSURL += "?actionId="+ actId +"&mid="+ midVal;
	}
	else if (actId==PROCESS_CPP) {
		CSURL += "?actionId="+ actId +"&mid="+ midVal + fsrGetCPP();
	}	
	fsrTrackerImg = new Image();
 	fsrTrackerImg.onerror = fsrOnImgError;
 	fsrTrackerImg.onload = fsrOnImgLoad;
 	newDt   = new Date();
 	currTime= newDt.getTime(); 
 	fsrTrackerImg.src = CSURL + "&uid="+ currTime;
}
function fsrOnImgLoad(){
	if(fsrTrackerImg.width >= 5) {window.close();}
}
function fsrOnImgError() {
}
function fsrSetFilter() {
	fullURL += "&sid=" + triggerParms["sid"];
	if (triggerParms["patternType"] != null && (triggerParms["patternType"].toUpperCase()).indexOf("URL") != -1) {
		fullURL += "&pattern="+ cppUrlPatch (window.location.href);
	}
	else if (triggerParms["patternType"] != null && (triggerParms["patternType"].toUpperCase()).indexOf("CK=") != -1) {
		var pos = triggerParms["patternType"].indexOf("=");
		var cookieValue = fsrReadCookie(triggerParms["patternType"].substring(pos+1));
		fullURL += "&pattern="+ cppUrlPatch(cookieValue);
	}
	else if (triggerParms["patternType"] != null && (triggerParms["patternType"].toUpperCase()) != null && triggerParms["patternType"].length >0) {
		fullURL += "&pattern="+ escape(triggerParms["patternType"]);
	}	
}
function fsrSetFullURL() {
	fullURL = popupURL + "?" + "width=" + triggerParms["width"] + "&height=" + triggerParms["height"] +
		"&cid=" + specialEscape(escape(triggerParms["cid"]));
	if (triggerParms["mid"] != null) 
		fullURL += "&mid=" + specialEscape(escape(triggerParms["mid"]));
	if (triggerParms["omb"] != null) {
		fullURL += "&omb=" + escape(triggerParms["omb"]);
	}
	if ((triggerParms["cmetrics"] ) != null) {
		fullURL += "&cmetrics=" + escape(triggerParms["cmetrics"]);
	}
	if (triggerParms["olpu"] == 1) {
		fullURL += "&olpu=1";
	}
	if ((triggerParms["dcUniqueId"]) != null) {
		fullURL += "&dcUniqueId=" + escape(triggerParms["dcUniqueId"]);
	}
	if ((triggerParms["midexp"] ) != null) {
		fullURL += "&ndc=1&fsexp=5256000&midexp=" + triggerParms["midexp"];
	}
	if (triggerParms["sMode"] != null && arguments.length==0) {
		fullURL += "&sMode="+ triggerParms["sMode"];
	}
	if (triggerParms["sid"] != null && triggerParms["mid"] == null) {fsrSetFilter();}
}
function getCPPString(){
	var cppString="";
	for(paramKey in triggerParms) {
	     if(paramKey.substring(0,3) == "cpp"){
		  cppString += "&" + paramKey + "=" + escape(triggerParms[paramKey]);
	     }
	}
	return cppString;
}
function fsrGetCPP(){
	var pageCount = fsrReadCookie(ckLoyaltyCount);
	/**remove extra count that gets incremented by tracker**/
	/**if (pageCount != null && fsrReadCookie(triggerParms["scout_chk"]) != null) {
	 	pageCount = (pageCount==1 || triggerParms["dLF"] <=1) ? pageCount : pageCount-1; 
	   }	
	*/
	/**in case user exit or change Parent URL quickly - tracker may not get the Parent URL therefore we set the userURL to surveyTracker's URL**
	try {
	if (triggerParms["cpp_1"] == null || typeof(triggerParms["cpp_1"]) == 'undefined') {	
		if (triggerParms["userURL"] == 1) {
			if (triggerParms["oeMode"] == 0){
				triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (window.opener.location.href);
			}
			else {
				if (fsrReadCookie('previousURL') != null && arguments.length == 0 && triggerParms["nLF"] == null)
					triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (fsrReadCookie('previousURL'));
				else {
					if (fsrReadCookie('currentURL') == 'blank') triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (fsrReadCookie('previousURL'));
					else triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (fsrReadCookie('currentURL'));
				}
			}
		}
	}
	} catch(e){triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (window.location.href);}
	**/
	if (pageCount == null) {pageCount = 1;}
	if (triggerParms["capturePageView"] == 1) {
		triggerParms["cpp_2"] = "PageView:"+ pageCount; 
	}
	var sMode=triggerParms["sMode"];
	if (triggerParms["sMode"] == null) {sMode=0};
	triggerParms["cpp_3"] = "Browser:OE_Mode"+ triggerParms["oeMode"] +";Survey_Mode"+ sMode +";" + cppUrlPatch (detect) + ";" + triggerParms["captureTriggerVersion"] + ";" + getURLParameters('surveypresented');
	var counter=4;
	if (triggerParms["visualScienceId"] == 1) {
		counter=5;
		setVisualSciencesId(fullURL);
	}
	if (triggerParms["omnitureId"] == 1) {
		setOmnitureId(fullURL);
	}
	for(paramKey in triggerParms) {
		if(paramKey.substring(0,5) == "oecpp"){
			var value = triggerParms[paramKey];
			var session = fsrReadCookie(value);
			if (session != null) {
				triggerParms["cpp_"+ counter] = value.substring(8,value.length) + ":" + cppUrlPatch (session);
				counter++;	
			}
		}
	}	
	return getCPPString();
}
function fsrShowIFrameSurvey() {
	fsrSendReq(PROCESS_CPP);
	setFSRSurveyCookie();
	document.getElementById("trackerWin").style.visibility = "hidden";
	document.getElementById("FSRSurveyWin").style.visibility = "visible";
	sizeWindow(triggerParms["width"],triggerParms["height"]);
	return true;
}
function popSurvey(){
	if (triggerParms["sMode"] == 1) {
		if (triggerParms["olpu"] == 0) this.blur();
		else this.focus();
		fsrShowIFrameSurvey();
	}
	else {
		if(!oePoll()) {window.close();}
	}
	fsrAbort=true; /**used to abort tracker code which is running in a loop**/
}
function popSurveyLF(){
	if (triggerParms["sMode"] == 1) {
		if (triggerParms["olpu"] == 0) this.blur();
		else this.focus();
		fsrShowIFrameSurvey();
	}
	else {
		if(!oePoll(true)) {window.close();}
	}
	fsrAbort=true; /**used to abort tracker code which is running in a loop**/
}
function isParentClosed(){
	try {if (window.opener.closed){return true;}}
	catch (e) {return true;}
	return false;
}
function retryScout(){
	if (oeCounter<triggerParms["scout_retry"]) {
		oeCounter++;
		return true;
	}
	/** additional false positive check to see if its the same domain+protocol exist then continue checking**/
	try {
	  if (triggerParms["oeMode"] == 1) {
	      hParent = window.opener;
	      if (triggerParms["showException"] != null) (alert("MODE-1 Domain Check:"+ hParent.location.hostname + "/"+ triggerParms["domain"]));
	      if (triggerParms["domain"] == null || typeof(triggerParms["domain"]) == "undefined") { triggerParms["domain"] = window.location.hostname;}
	      if ((hParent.location.hostname).indexOf(triggerParms["domain"]) != -1 ) {
			if (oeCounter >1) {oeCounter=1;}
			if (!isParentClosed()) return true;
	      }
	  }
	} catch (e) {
		/** AS PART OF MCAFEE REQUIREMENT - **
		 ** SHOW SURVEY EVEN IF IN THE SAME DOMAIN WITH CURRENT_URL COOKIE BLANK **
		 ** Updated 3/3/08 **/
		//return true;
	}	
	/****************************************/
	popSurvey();
	return false;
}
function updateParentURL(){
try {
	if (triggerParms["userURL"] == 1) {
		if (triggerParms["oeMode"] == 0){
			hParent = window.opener;
			triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (hParent.location.href);
		}
		else {
			if (fsrReadCookie('previousURL') != null && arguments.length == 0 && triggerParms["nLF"] == null)
				triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (fsrReadCookie('previousURL'));
			else {
				if (ForeCStdGetCookie("currentURL") == 'blank') triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (fsrReadCookie('previousURL'));
				else triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (ForeCStdGetCookie('currentURL'));
			//commenting for Mcafee - 3/31/08 - now dropping this cookie separately		
			//	if (fsrReadCookie('currentURL') == 'blank') triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (fsrReadCookie('previousURL'));
			//	else triggerParms["cpp_1"] = "userURL:"+ cppUrlPatch (fsrReadCookie('currentURL'));
			}
		}
	}
} catch (e) {errortrap();}	
}
function updateLoyaltyFactor() {
   var currentURL=null;
   if (triggerParms["oeMode"] == 0){
   	hParent = window.opener;
   	currentURL= hParent.location.href;/*throws exception in OnExit condition*/
   }
   else if (triggerParms["oeMode"] == 1){
   	currentURL = ForeCStdGetCookie('currentURL');
   	//commenting for Mcafee - 3/31/08 - now dropping this cookie separately
   	//currentURL = fsrReadCookie('currentURL');
   }
   if (currentURL != tempURL) {  
    if ((currentURL != 'blank' && tempURL != 'blank') || currentURL != null){
		var stickyCounter =  fsrReadCookie(ckLoyaltyCount);
		if (stickyCounter == null) {stickyCounter = 1;}
		else {if (arguments.length == 0){stickyCounter++;}}
		fsrWriteCookie(ckLoyaltyCount,stickyCounter);
	}
   }
   tempURL=currentURL;
}
function javaUpdate(){
	updateParentURL();
	/*updateLoyaltyFactor();*/
	if((triggerParms["nLF"]) != null) {	
		var lfCounter = fsrReadCookie(ckLoyaltyCount);
		if(lfCounter >= triggerParms["nLF"]) {popSurveyLF();}
	}
}
function javaTimeout(){
try {
	javaUpdate();
	if (triggerParms["oeMode"] == 0) {
		hParent = window.opener;
		if (this.document.domain != hParent.document.domain) {
			if (retryScout() && !fsrAbort) setTimeout ( "javaTimeout();", triggerParms["scout_delay"], "JavaScript" );
		}
		else if (!fsrAbort) {
			setTimeout ( "javaTimeout();", triggerParms["scout_delay"], "JavaScript" );
		}
	}
	else {
		checkDomain();
	}
} catch (e) {errortrap();}	
}
function checkDomain(){
		/** MultiTabs Fix - New code  added to check Tab Window Counts and pop only if tab counter = 0**/
		if (ForeCStdGetCookie("currentURL") == 'blank' && fsrReadCookie("isAlive") == 0){
		//commenting for Mcafee - 3/31/08 - now dropping this cookie separately
		//if (fsrReadCookie('currentURL') == 'blank'){	
			hParent = window.opener;
			fsrWriteCookie('fsr_retry', oeCounter);
			/*do not use hParent.closed - causes problem in NS/FF*/
			if (hParent == null) {oeCounter = triggerParms["scout_retry"]};
			/*updateLoyaltyFactor(true);*/
			if (fsr_ie && isParentClosed()){
				/*Issue with IE and Google Popupblocker
				 *Blocks onUnload on closing of window or browser
				 *By default, pop survey with or w/o any popup blockers*/
				 updateParentURL(true);/*get currentURL instead of previousURL*/
				 popSurvey();
				 return false;
			}				
			if (retryScout() && !fsrAbort) {
				 setTimeout ( "javaTimeout();", triggerParms["scout_delay"], "JavaScript" );
			}
		}
		else {
			/**resetting retry counter to avoid false positive due to delay in page loading**/
			if (oeCounter >1) {oeCounter=1;}
			if (!fsrAbort) setTimeout ( "javaTimeout();", triggerParms["scout_delay"], "JavaScript" );
		}
}
function errortrap(msg,url,line){
	/*for debugging purpose*/
	if (triggerParms["showException"] != null) alert("FSR Exception checking\n:"+ msg +"\n"+url+"-"+line);
	if (triggerParms["oeMode"] == 0){
		hParent = window.opener;
		if (hParent == null || (fsr_ie && isParentClosed())){ oeCounter = triggerParms["scout_retry"]};
		if (retryScout() && !fsrAbort) setTimeout ( "javaTimeout();", triggerParms["scout_delay"], "JavaScript" );
	}
	else {
		checkDomain();
	}
	return true;
}
function showDHTMLWin(){
	if((runningscout != null && !runningscout.closed && fsr_aol==false) || scoutTracker != null){return;}
	surveyPresentedBy = "dhtml";
	if(document.all) {
		document.all.FSRInviteWin.style.visibility = 'visible';
	}			
	else if(document.getElementById) {
		document.getElementById("FSRInviteWin").style.visibility = 'visible';		
	}	
}
function FSRInviteAct(actFlag) {
	if(actFlag == '1') {
	 	openTrackerWin();
	}
	else {
		fsrWriteCookie(triggerParms["scout_chk"], "ScoutClosed");
	}
	if(document.all) {document.all.FSRInviteWin.style.visibility = 'hidden';}	
	else if(document.getElementById) {document.getElementById("FSRInviteWin").style.visibility = 'hidden';}
}
function loadWait(){
	document.write("<B>Survey is loading. Please wait...</B>");
}
function oePoll() {
	if (fsrReadCookie(triggerParms["scout_chk"]) == null) {window.close();}
	else {
	var randNum = Math.random()*100;
	var stickyCounter = fsrReadCookie(ckLoyaltyCount);
	var alreadyShown = fsrReadCookie(ckAlreadyShown);
	if (alreadyShown == null && (arguments.length ==1 || stickyCounter != null)) {
		if(arguments.length ==1 || stickyCounter >= triggerParms["dLF"]) {
		    if(randNum <= triggerParms["spE"]) {
				fsrSetFullURL(1);
				fullURL += fsrGetCPP();
				setFSRSurveyCookie();
				/******** loadWait() Not used for sMode=1 OR NETSCAPE 8+ ONLY *********/					
				if (arguments.length ==0 && triggerParms["sMode"] == 0 && !fsr_NS8) { loadWait();}
				var myPopUp = window.open(fullURL, "SurveyWindowInformative",winOptions);
				if(myPopUp == null || myPopUp.closed) {return false;}
				if (triggerParms["olpu"] == 0) myPopUp.blur();
				else myPopUp.focus();
				return true;
			}				
		}	
		pageCount++;
		fsrWriteCookie(ckLoyaltyCount,pageCount);
	}
	}
	return false;
}
function fsrSetDivPos() {
	var xWidth;var yWidth;
	if (window.innerHeight) {
		/**used by Mozilla based browsers and Safari **/
		xWidth = window.innerWidth; yWidth = window.innerHeight;
	} else if (document.documentElement.clientHeight > 0) {
		/**used by IE based browsers **/
		xWidth = document.documentElement.clientWidth; yWidth = document.documentElement.clientHeight;
	} else {
		/**used by AOL Explorer **/
		xWidth = document.body.clientWidth; yWidth = document.body.clientHeight;
	}
	if (xPosition == "CENTER") {triggerParms["dhtmlLeft"] = (xWidth/2) - (triggerParms["dhtmlWidth"]/2) - 100;}
	else if (xPosition == "LEFT") {triggerParms["dhtmlLeft"] = 10;}
	else if (xPosition == "RIGHT") {triggerParms["dhtmlLeft"] = (xWidth) - (triggerParms["dhtmlWidth"]) - 30;}
	if (yPosition == "CENTER") {triggerParms["dhtmlTop"] = (yWidth/2) - (triggerParms["dhtmlHeight"]/2) + 50 ;}
	else if (yPosition == "TOP") {triggerParms["dhtmlTop"] = 10;}
	else if (yPosition == "BOTTOM") {triggerParms["dhtmlTop"] = (yWidth) - (triggerParms["dhtmlHeight"]) - 30;}
}
function fsrCreateInvite(type, divId, dLeft, dTop, dWidth, dHeight, dVisible, frameId, fWidth, fHeight, fScroll, frameSrc) {
	if (type==1) {/*when opening Invite*/
		fsrSetDivPos();
		dLeft = triggerParms["dhtmlLeft"];
		dTop = triggerParms["dhtmlTop"];
	}
	var oBody = document.getElementsByTagName("BODY")[0];
	if (oBody==null || typeof(oBody) == "undefined") {
		return false;
	}	
	var oDiv = document.createElement("div");
	oDiv.id = divId;
	oDiv.style.position = "absolute";
	oDiv.style.left = dLeft +"px";
	oDiv.style.top = dTop +"px";
	if (type==0) {/*when opening Tracker*/
		oDiv.style.width=dWidth +"%";;
		oDiv.style.height=dHeight +"%";
	}
	oDiv.style.border = "0";
	oDiv.style.visibility = dVisible;
	oDiv.style.zIndex = triggerParms["dhtmlIndex"];
	oBody.appendChild(oDiv);
	var divEl  = document.getElementById(divId);
	var oFrame = document.createElement("iframe");
	oFrame.id  = frameId;
	oFrame.src = frameSrc;
	if (type==1) {/*when opening Invite*/
		oFrame.width=fWidth +"px";
		oFrame.height=fHeight +"px";
	}
	else {
		oFrame.width=fWidth + "%";
		oFrame.height=fHeight + "%";
	}
	oFrame.frameBorder = "0";
	oFrame.scrolling = fScroll;
	divEl.appendChild(oFrame);
	return true;
}
function openTrackerWin(){
	var sl = (screen.width-triggerParms["trackerWidth"])/2;
	var st = (screen.height-triggerParms["trackerHeight"])/2;
	var winOpts = "top=" + st + ",left=" + sl + ",width=" + triggerParms["trackerWidth"] + ",height=" + triggerParms["trackerHeight"] + ",resizable=1,toolbar=0,location=0,statusbar=0,menubar=0";
	if (triggerParms["sMode"] == 1) { winOpts += ",scrollbars=0";}
	else {winOpts += ",scrollbars=1";}
	var rNum = 0.0;
	if(arguments.length == 1) {rNum = arguments[0];}		
	scoutTracker = fsrReadCookie(triggerParms["scout_chk"]);

	if (scoutTracker == null) {
		/**** Checking dLF & spL before opening ScoutTracker ***/
		if(fsrCheckPageVisited() >= triggerParms["dLF"] && rNum <= triggerParms["spL"]) {
		   if (triggerParms["displayMode"] ==3 && arguments[0] >0) {return 0;}
		   if (triggerParms["sMode"] == 1) {fsrSendReq(PROCESS_RSID);}	/*generate RSID when new tracker opens*/
		   runningscout = window.open(triggerParms["trackerURL"]+"?mid="+ escape(triggerParms["mid"]) + "&surveypresented="+surveyPresentedBy, "SurveyWindowInformative", winOpts);
		}
		else {return 1;}
	} else {	
		/*dont show dhtml or open scout again if already surveyed or mid is same or if one scout closes another scout or user closes scout or dhtml*/
		if ((fsrReadCookie(ckAlreadyShown) != null) || scoutTracker == triggerParms["mid"]){return 1;}
		//removed this check --> (scoutTracker == 'ScoutClosed' ||) from above if clause - as of 7/28/08
		/*otherwise override scout tracker with another MID - ignore spL once tracker is open */
		if (fsrReadCookie('pin') == null || fsrReadCookie('pin') == 'false') {
			if (triggerParms["sMode"] == 1) {fsrSendReq(PROCESS_RSID);}	/*generate RSID when new tracker opens*/
			runningscout = window.open(triggerParms["trackerURL"]+"?mid="+ escape(triggerParms["mid"]) + "&surveypresented="+surveyPresentedBy, "SurveyWindowInformative", winOpts);
		}
		if (pin_it == "true") fsrWriteCookie("pin","true"); 
	}	
	if((trackerFromClick == true || arguments.length == 0) && runningscout != null && !runningscout.closed) {
		/**hide behind when opening through DHTML Invite or Click event **/
		runningscout.blur();
	}
	window.parent.focus();
	return 0;
}
function openFSRTracker() {	
		/** MultiTabs Fix - New code  added to increment Tab Window Counts **/
		var iTotal= fsrReadCookie("isAlive");
		if (iTotal==null)iTotal=1; else iTotal++;
		fsrWriteCookie('isAlive', iTotal);    	

		fsrCheckPageVisited(1);
		fsrSetClientVars();		
		var alreadyShown = fsrReadCookie(ckAlreadyShown);
		var excludeBrowserFlag = fsr_NS62 || fsr_opera;
		if(excludeBrowserFlag || triggerParms["displayMode"] == 0 || alreadyShown!=null || fsrReadCookie(triggerParms["scout_chk"]) == 'ScoutClosed' || !fsrIsCookieEnabled() || isOnExcludeList()) {return;}
		trackerFromClick = false;
		if(arguments.length >0 && arguments[1] == true) {trackerFromClick = true;}

		/** set page MID/LF based on Page URL **/
		fsrSetMID();
		var rNum = Math.random()*100;
		var scoutFlag = openTrackerWin(rNum);
		if (fsr_aol) {
		  try{ /*aolToolbar and yahoo popupblocker fix*/
		    runningscout.focus();
		    scoutFlag=1;
		  } catch (e){scoutFlag=0;}
		}
		/** detect flash with valid browser and player version**/
		if(!trackerFromClick && !fsr_NS70 && (scoutFlag==null || scoutFlag == 0) && isValidFlash() && triggerParms["displayMode"] != 2) {
			if(document.getElementById || document.all) {
				if (fsr_NS8) triggerParms["dhtmlHeight"] = triggerParms["dhtmlHeight"] + 15;
				if (runningscout == null) {
					if (fsrOnLoadFlag==1) {
						if (!fsrCreateInvite("1", "FSRInviteWin", triggerParms["dhtmlLeft"], triggerParms["dhtmlTop"], 100, 100, "hidden", "cframe", triggerParms["dhtmlWidth"], triggerParms["dhtmlHeight"], "NO", triggerParms["dhtmlURL"])) {fsrWriteCookie("FSRDivCreated", "false"); return;}					
					}
					else {
						document.write("<div id=\"FSRInviteWin\" style=\"position:absolute; left:" + triggerParms["dhtmlLeft"]+"px; top:"+ triggerParms["dhtmlTop"]
                        + "px; z-index:"+triggerParms["dhtmlIndex"]+"; border:0; overflow:hidden; visibility:hidden;\">"
                        + "<iframe id=\"cframe\" src="+"\""+ triggerParms["dhtmlURL"]+"\" FrameBorder=0 Scrolling=NO width="+triggerParms["dhtmlWidth"]+" height="+triggerParms["dhtmlHeight"]+"></iframe></div>");
					}
				}
				if ((triggerParms["midexp"] ) != null) {
					dcQString = "ndc=1&midexp=" + triggerParms["midexp"] + "&mid=" + specialEscape(escape(triggerParms["mid"]));
					if(triggerParms["dcUniqueId"]!=null) { dcQString += "&dcUniqueId=" + specialEscape(escape(triggerParms["dcUniqueId"])); }						
				}
				surveyProcessCont = 1;
				var newDt   = new Date();
				var currTime= newDt.getTime(); 
				OTCImg = new Image();
				OTCImg.onerror = otcErrorProc;
				OTCImg.onload = otcOnloadProc;
				OTCImg.src = OTCImgURL + "?protocol=" + window.location.protocol + "&uid="+ currTime;	
			}
		}
}
function closeTrackerWin() {
    scoutTracker = fsrReadCookie(triggerParms["scout_chk"]);
    if (scoutTracker!=null && scoutTracker != "ScoutClosed") {
		var trackerWin = window.open(triggerParms["trackerURL"],"SurveyWindowInformative");
	    if (trackerWin != null && !trackerWin.closed) {trackerWin.close();}
    }
}
function fsrCheckPageVisited() {
	var stickyCounter = fsrReadCookie(ckLoyaltyCount);
 	if (stickyCounter == null) stickyCounter = 0;
 	/**don't drop or increment LFCookie when pageCounter<=1 or continue button is clicked from Invite dhtml ***/
 	if (arguments.length==1 && triggerParms["dLF"] >=1) {
 		stickyCounter++;
 		fsrWriteCookie(ckLoyaltyCount, stickyCounter);
 	}
 	return stickyCounter;
}
/*************************************************/
/**** CUSTOM FUNCTIONALITY ADDED FOR MCAFEE ******/
/**** Updated: 02/27/08 **************************/
/**** ONE Cookie Wrapper Code ********************/
function fsrFindCookieVal(ckVal, name){
	if (ckVal == null || typeof ckVal == "undefined" || name==null) return null;
	var ckParams = ckVal.split(triggerParms["fsrCkSeparator"]);
	for (var i=0; i<ckParams.length; i++) {
		var ckValues = ckParams[i].split(triggerParms["fsrParmSeparator"]);
		if (name.toLowerCase()==ckValues[0].toLowerCase()){ return unescape(ckValues[1]);}
	}
	return null;
}
function fsrReplaceCookieVal(ckVal, name, value){
	if (ckVal == null || typeof ckVal == "undefined") return "";
	var replaceCkValue = "";
	var ckParams = ckVal.split(triggerParms["fsrCkSeparator"]);
	for (var i=0; i<ckParams.length; i++) {
		var ckValues = ckParams[i].split(triggerParms["fsrParmSeparator"]);
		replaceCkValue += ckValues[0];
		if (name.toLowerCase()==ckValues[0].toLowerCase()){
			var newCkValue = ckValues[1].replace(ckValues[1], value);
            ckValues[1] = newCkValue;
		}
		if (ckValues[1] != null) {
			replaceCkValue += triggerParms["fsrParmSeparator"] + ckValues[1];
		}
	    if (i+1 < ckParams.length) {
    	    replaceCkValue += triggerParms["fsrCkSeparator"];
		}	
	}
	return replaceCkValue;
}
function fsrReadCookie(paramName){
	var ckVal = ForeCStdGetCookie(triggerParms["FSRCookie"]);
	return fsrFindCookieVal(ckVal, paramName);
}
function fsrWriteCookie(parmName, parmValue){
	if (fsrReadCookie(ckAlreadyShown) == 'true') return;
	if (parmName == null || parmValue == null || typeof(parmValue) == "undefined") return;
	if (parmValue.length==0) return;
	if (parmName == triggerParms["scout_chk"])	{ parmValue = escape(parmValue);}	/*only for MID's we meed to encode the == signs*/
	var ckVal = (ForeCStdGetCookie(triggerParms["FSRCookie"]) == null) ? "" : ForeCStdGetCookie(triggerParms["FSRCookie"]);
	var isParamExists=false;
	if (ckVal.indexOf(parmName) != -1) {
		ckVal = fsrReplaceCookieVal(ckVal, parmName, parmValue);
		isParamExists=true;
	}
	if (!isParamExists) {
		if (ckVal.length>0) ckVal += triggerParms["fsrCkSeparator"];
		ckVal += parmName + triggerParms["fsrParmSeparator"] + parmValue;
	}
	(triggerParms["npc"]==0 && parmName == ckAlreadyShown) ? ForeCStdSetCookie(triggerParms["FSRCookie"], ckVal , persistentExpires, '/',triggerParms['domain']) : ForeCStdSetCookie('FSRCookie', ckVal , null ,'/',triggerParms['domain']);
}
function fsrCallCookieTimer(){
	/**Avoiding False Positive Pops using multiple tabs in browsers**/ 
	if (fsrReadCookie(ckAlreadyShown) != null) {return;}
	ForeCStdSetCookie('currentURL', escape(window.location.href) , null, '/',triggerParms['domain']);
	//fsrWriteCookie('currentURL', escape(window.location.href));
	setTimeout("fsrCallCookieTimer()", 1000, "JavaScript");
}	
function fsrDropMode1Cookie(){
	if (triggerParms["oeMode"] == 1 && fsrReadCookie(ckAlreadyShown) == null) {
		if (fsr_ie)	fsrAttachEvent(window, "beforeunload", fsrOnUnload, false);
		else fsrAttachEvent(window, "unload", fsrOnUnload, false);
		/**commented for now - not working in McAfee **/
    	//setTimeout("fsrCallCookieTimer()", 1000, "JavaScript");		
	   	//now dropping currentURL session cookie as a second cookie for McAfee
		/**commented as of 8/25/08  - dropping currentURL cookie separately by calling fsrDropCookie.js **/
	   	//ForeCStdSetCookie('currentURL', escape(window.location.href) , null, '/',triggerParms['domain']);
	}
}
function fsrSetMID(){
	hParent = window.opener;
	var parentURLPath="";
	if (hParent != null ){parentURLPath = hParent.location.pathname;}	
	else {parentURLPath = window.location.pathname;}
	for(var key in midLookupTable) {
		if ((parentURLPath.toLowerCase()).indexOf(key.toLowerCase()) != -1) {
			var lookupParams = midLookupTable[key].split(":");
			/*override mid and spL*/
			triggerParms["spL"] = lookupParams[0];
			triggerParms["mid"] = lookupParams[1];
			if (lookupParams.length == 3) pin_it = lookupParams[2];			
			return true;
		}
	}
	/*use default trigger parameters*/
	return false;
}
function fsrSetClientVars(){
	var cid = getURLParameters(fsr_cpp);
	if (fsrReadCookie(triggerParms["oecpp_cid1"]) != null) {
		if (cid!=null && cid !='0' && cid.length>0)	fsrWriteCookie(triggerParms["oecpp_cid2"], cid);
	}
	else {
		if (cid!=null && cid !='0' && cid.length>0)	fsrWriteCookie(triggerParms["oecpp_cid1"], cid);
	}
}
function openFSRSurveyLink() {	
	fsrSetClientVars();
	closeTrackerWin();
	var tp =(self.screen.width/2 - 350);
	var lf =(self.screen.height/2);
	winOptions = "toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,top="+tp+",left="+lf+",width="+triggerParms["width"]+ ",height="+ triggerParms["height"];
	if (!oePoll(true)) { alert("Sorry, but you have already clicked on this link.")};
}
/********************************/
/**calling foresee survey code **/
/********************************/
try {
	var fsrOnLoadFlag=1;
	if (window.name!="SurveyWindowInformative") {
		fsrDropMode1Cookie();
		if (window.location.href.toLowerCase().indexOf("processorder.asp") != -1) {
			fsrOnLoadFlag=0;
			fsrWriteCookie('pin','false');
			openFSRTracker();
		}
		else {
			if (!fsrAttachEvent(window, "load", openFSRTracker, false)) openFSRTracker();
		}
	}
} catch(e) {}