//cookie
evalVisCookie();
      function evalVisCookie() {
         var userId = getCookie("es_vis_ck");
         if (userId==0) {
            userRnd=Math.floor(Math.random()*10001).toString();
            userTime=new Date;
            userTime=userTime.getTime().toString();
            userId=userTime+"_"+userRnd;
            setCookie("es_vis_ck", userId, 12);
         }
         var userId2 = getCookie("es_session_ck");
         if (userId2==0) {
            userRnd=Math.floor(Math.random()*10001).toString();
            userTime=new Date;
            userTime=userTime.getTime().toString();
            userId2=userTime+"_"+userRnd;
            setCookie("es_session_ck", userId2, 0);
         }
      }
      function getCookie(cookieName) {
         thisCookie = document.cookie.split("; ");
         for (i=0; i<thisCookie.length; i++) {
            if (cookieName == thisCookie[i].split("=")[0]) {
               return thisCookie[i].split("=")[1];
            }
         }
         return 0;
      }
      function setCookie(ckName, ckValue, ckExpiry) {
         //Note that ckExpiry is the number of months unti the cookie should expire
         if (ckExpiry != 0)
         {
            cookieExpire = new Date;
            cookieExpire.setMonth(cookieExpire.getMonth()+ckExpiry);
            cookieExpire = cookieExpire.toGMTString();
            document.cookie = ckName+"="+ckValue+";expires="+cookieExpire+";path=/";
         }else {
            // Added different call since exipry parm was causing probs, even when null.  Left out it was ok
            document.cookie=ckName+"="+ckValue+";path=/";
         }
         return 0;
      }
      // End check for cookies
      leftNavOn = new Array();
      leftNavOff = new Array();
      if(document.images) {
         imgOn = new Image();
         imgOff = new Image();
         imgOn.src = "/PS/fr/common/images/arrow_orange_dn.gif";
         imgOff.src = "/PS/fr/common/images/spacer.gif";
      }
      function navOn(i) {
         if (document.images && document.images[i].complete)
            document.images[i].src = imgOn.src;
      }
      function navOff(i) {
         if (document.images && document.images[i].complete)
            document.images[i].src = imgOff.src;
      }     
//search
var newwinopener;
function checkSearch() {
   if (document.searchForm.queryText.value == "" || document.searchForm.queryText.value == "Entrer votre recherche ici") {
      document.searchForm.queryText.value = "";
      document.searchForm.queryText.focus();
   } else {
      document.searchForm.submit();
   }
}
function checkSearchText() {
   if (document.searchForm.queryText.value == "" || document.searchForm.queryText.value == "Entrer votre recherche ici") {
      document.searchForm.queryText.value = "";
      document.searchForm.queryText.focus();
   } 
}
function checkKey(strUrl,serverOnly) {
if (window.event) {
  if(window.event.keyCode=="13") {
    processSearch(document.searchForm, strUrl, serverOnly);
} } }
function processSearch(whichForm, strUrl, serverOnly) {
  var strSearchType = whichForm.searchFilter.value;
  var strSearchQuery = whichForm.queryText.value;
  var lang = "none";
  var stringInit = "Entrer votre recherche ici";
  strSearchQuery = trimString(strSearchQuery);
  if (strSearchQuery == ''){
  	 whichForm.queryText.value = stringInit;
  }else if (strSearchQuery == stringInit){
  }else {
		switch (strSearchType) {		
				case "1":
					whichForm.action =strUrl+ "/common/search.jsp";
					whichForm.submit();
					break;
				case "2":
					whichForm.action =  serverOnly + "/BusinessSMB/index.jsp?location=search&keyword="+ strSearchQuery;
					whichForm.submit();
					break;
				case "3":
					launch("http://www.bing.com/search?q=" + escape(strSearchQuery) + "&go=&mkt=fr-CA&setlang=SET_NULL&form=QBLH&filt=all&qs=n");
					break;
		}
	}
}
function launch(url){
  if (!newwinopener || newwinopener.closed){
    newwinopener = open(url, "newwinopener", "resizable,menubar,scrollbars,toolbar,location,directories,status,width=700,height=500,left=100,top=100");
  }else if(newwinopener){
    newwinopener.location.replace(url);
  }
}
function trimString(strText)
{
	while (strText.substring(0,1) == ' ' )
	strText = strText.substring(1, strText.length);
	while (strText.substring(strText.length-1,strText.length) == ' ')
	strText = strText.substring(0, strText.length-1);
	return strText;
}     
// validate
var err = 0;
var sendError = true;
var errorMessage = '';
var errorAlertMessage = '';
var emptyFieldMessage = '';
var currentForm = '';
var runReturnValue = 0;
var runFieldValue = 1;
var isValuePackage = false;
var actionValue = '../common/search.jsp';
var numFieldValues = 0;
function submitForm(arg_which) {if(ogncUVal(arg_which)) eval(arg_which[0][1]).submit();}
function submitAdvancedSearch(arg_which) { 
  numFieldValues = 0;
	if (ogncUVal(arg_which)) {
	  if (isValuePackage && numFieldValues > 1) { 
		  location.replace("../productsandservices/ps_1.jsp?section=1&bodycont=productsandservices%2fvalue.jsp&curbody=1"); 
		}else{
		 	if (isValuePackage) {
			   document.theForm.category.value = "";
			}
		document.theForm.action = actionValue;
		eval(arg_which[0][1]).submit();
		}
	}
}
function submitFormOnce(arg_which) {
	if (sendError && ogncUVal(arg_which)) {
		sendError = false;
		eval(arg_which[0][1]).submit();
	}
}
function ogncUVal(VDArray) {
	resetErrs();
	return validateForm(VDArray, false);
}
function resetErrs() {
	err=0;
	errorMessage = '';
	errorAlertMessage = '';
	emptyFieldMessage = '';
	return true;
}
function validateForm(VDArray) {
	currentForm = VDArray[0][1];
	for (x=1; x<VDArray.length; x++) {
		niceName = VDArray[x][1];
		defaultValue = VDArray[x][2];
		for (yc=3; yc<VDArray[x].length; yc++) {
			evaluateFunction(currentForm,VDArray[x],yc);
		}
	}
	if(err>0) {
		if (sendError==true) {
			errorAlertMessage=langString('error0') + "\n\n";
			if (emptyFieldMessage.length > 0) {
				errorAlertMessage=errorAlertMessage + langString('error1') + '\n\n   ' + emptyFieldMessage.substring(0,emptyFieldMessage.length - 2) + "\n\n";
				if (errorMessage.length > 0) {
					errorAlertMessage=errorAlertMessage + langString('error2') + '\n\n';
				}
			}
			if (errorMessage.length > 0) {
				errorAlertMessage=errorAlertMessage+ errorMessage + "\n\n";
			}
			alert(errorAlertMessage);
		}
		sendError=true;
		return false;
	}
	else { sendError=true; return true; }
}
function evaluateFunction(currentForm, arrayItem, itemNo) {
	runIf = false;
	runWhat = new Array();
	runAgainst = new Array();
	runNo = 0;
	functionName = arrayItem[itemNo][0];
	returnValue = null;
	if(functionName=='runIf') {
		runIf = true;
		runWhat[runNo] = arrayItem[itemNo];
		runAgainst[runNo] = runFieldValue;
		runNo++;
	} else {
		functionCall = functionName+'(\''+currentForm+'.elements.'+arrayItem[0]+'\',\''+arrayItem[1]+'\',\''+arrayItem[2]+'\'';
		if(arrayItem[itemNo].length>1) {
			for(ze=1; ze<arrayItem[itemNo].length; ze++) {
				if(arrayItem[itemNo][ze][0] && arrayItem[itemNo][ze][0]=='runIf') {
					runIf = true;
					runWhat[runNo] = arrayItem[itemNo][ze];
					runAgainst[runNo] = runReturnValue;
					runNo++;
				}
				functionCall = functionCall + ',\''+arrayItem[itemNo][ze]+'\'';
			}
		}
		functionCall = functionCall+')';
		returnValue = eval(functionCall);
	}
	if(runIf) {
		for(co=0; co<runNo; co++) {
			if((runAgainst[co]==runReturnValue && returnValue==runWhat[co][1]) || (runAgainst[co]==runFieldValue && getFieldValue(currentForm+'.elements.'+arrayItem[0])==runWhat[co][1])) {
				evaluateFunction.call(this,currentForm,eval(runWhat[co][2]),3);
			}
		}
	}
}
function getFieldValue(arg_whichField) {
	fieldObj = eval(arg_whichField);
	numFieldValues += 1;
	if(fieldObj.type=='select-one' || fieldObj.type=='select-multiple')	{
		if (fieldObj.options[fieldObj.selectedIndex].value == 'valuepackages') { 
				isValuePackage = true;
		}
		return(fieldObj.options[fieldObj.selectedIndex].value);
	} else if(fieldObj.type=='checkbox') {
		if(fieldObj.checked) return true;
		else return false;
	} else if(fieldObj[0] && fieldObj[0].type=='radio') {
		for(var i=0;i<fieldObj.length;i++) {
			if(fieldObj[i].checked) {
				return fieldObj[i].value;
				i=-1;
				return true;
				break;
			}
		}
		if(i!=-1) return false;
	}else if(fieldObj.type=='radio') {
		if(fieldObj.checked) return true; else return false;
	}else { return(fieldObj.value); }
}
function checkEmpty(arg_whichField,arg_niceName,arg_default) {
	fieldValue = getFieldValue(arg_whichField);
	if (isEmpty(fieldValue,arg_default)) {
		err++;
		if (emptyFieldMessage.substring(emptyFieldMessage.lastIndexOf('\n')).length > 60) {
			emptyFieldMessage = emptyFieldMessage + '\n   ';
		}
		emptyFieldMessage = emptyFieldMessage + arg_niceName+', ';
		return true;
	} else { return false; }
}
function isEmpty(arg_value,arg_default) {
	if (arg_value.length==0 || arg_value=='' || (arg_value==false) || (arg_value==arg_default && arg_default!='')) {
		return true;
	} else { return false; }
}
function checkNumeric(arg_whichField,arg_niceName,arg_default) {
	fieldValue = getFieldValue(arg_whichField);
	if (isNaN(fieldValue) && (fieldValue!=arg_default || arg_default=='')) {
		flagError(langString('checkNumeric', arg_niceName));
		return true;
	} else { return false; }
}
function checkAlpha(arg_whichField,arg_niceName) {
	fieldValue = getFieldValue(arg_whichField);
	regEx = /(\d+)|(^\s+)/;
	if ((fieldValue.length>0) && (regEx.test(fieldValue))) {
		flagError(langString('checkAlpha', arg_niceName));
		return true;
	} else { return false; }
}
function checkAlphaNumeric(arg_whichField,arg_niceName) {
	fieldValue = getFieldValue(arg_whichField);
	regEx = /\W+/;
	if ((fieldValue.length>0) && (regEx.test(fieldValue))) {
		flagError(langString('checkAlphaNumeric', arg_niceName));
		return true;
	} else { return false; }
}
function checkLength(arg_whichField,arg_niceName,arg_default,arg_length) {
	fieldValue = getFieldValue(arg_whichField);
	if (fieldValue.length!=eval(arg_length) && (fieldValue!=arg_default || arg_default=='')) {
		flagError(langString('checkLength', arg_niceName, arg_length));
		return true;
	} else { return false; }
}
function checkMinLength(arg_whichField,arg_niceName,arg_default,arg_length) {
	fieldValue = getFieldValue(arg_whichField);
	if (fieldValue.length < eval(arg_length) && (fieldValue!=arg_default || arg_default=='')) {
		flagError(langString('checkMinLength', arg_niceName, arg_length));
		return true;
	} else { return false; }
}
function checkValidDate(arg_whichField,arg_niceName,arg_default,arg_otherNiceName,singleField,arg_month,arg_day,arg_year) {
	dErr=0;
	if (singleField=='true') {
		fieldValue = getFieldValue(arg_whichField);
		ms = arg_month.split(',');
		ds = arg_day.split(',');
		ys = arg_year.split(',');
		varMonth=fieldValue.substring(ms[0],ms[1]);
		varDay=fieldValue.substring(ds[0],ds[1]);
		varYear=fieldValue.substring(ys[0],ys[1]);
	} else {
		varMonth=getFieldValue(currentForm+'.elements.'+arg_month);
		varDay=getFieldValue(currentForm+'.elements.'+arg_day);
		varYear=getFieldValue(currentForm+'.elements.'+arg_year);
	}
	if ((varMonth>=0 && varDay>=0 && varYear>=0) ||
		(varMonth.length>0 && varDay.length>0 && varYear.length>0) &&
		(fieldValue!=arg_default || arg_default=='')) {
		if (isNaN(varYear) || isNaN(varMonth) || isNaN(varDay)) dErr=1;
		if (varYear<1900 || varYear>2051) dErr=1;
		if (varMonth<1 || varMonth>12) dErr=1;
		if (varDay<1 || varDay>31) dErr=1;
		if (varMonth==4 || varMonth==6 || varMonth==9 || varMonth==11) {
			if (varDay==31) dErr=1;
		}
		if (varMonth==2) {
			var g=parseInt(varYear/4);
			if (isNaN(g)) dErr=1;
			if (varDay>29) dErr=1;
			if (varDay==29 && ((varYear/4)!=parseInt(varYear/4))) dErr=1;
		}
		if (dErr==1) flagError(langString('checkValidDate', arg_otherNiceName));
	}
}
function checkAge(arg_whichField,arg_niceName,arg_default,arg_otherNiceName,validAge,arg_month,arg_day,arg_year) {
	varMonth=getFieldValue(currentForm+'.elements.'+arg_month);
	varDay=getFieldValue(currentForm+'.elements.'+arg_day);
	varYear=getFieldValue(currentForm+'.elements.'+arg_year);
	if (varMonth>=0 && varDay>=0 && varYear>=0) {
		if (!isAge(0,0,parseFloat(validAge),arg_month,arg_day,arg_year)) {
			flagError(langString('checkAge', arg_otherNiceName, validAge));
		}
	}
}
function isAge(ageMonth,ageDay,ageYear,arg_month,arg_day,arg_year) {
	varMonth=getFieldValue(currentForm+'.elements.'+arg_month);
	varDay=getFieldValue(currentForm+'.elements.'+arg_day);
	varYear=getFieldValue(currentForm+'.elements.'+arg_year);
	var testDate = new Date(parseFloat(varYear) + ageYear, parseFloat(varMonth) - 1 + ageMonth, parseFloat(varDay) + ageDay);
	var theYear = new Date().getYear();
	if (theYear < 1900) {theYear = theYear + 1900;}
	var todayDate = new Date(theYear, new Date().getMonth(), new Date().getDate());
	if (testDate <= todayDate) {return true;} else { return false; }
}
function checkCanadianPostal(arg_whichField,arg_niceName,arg_default) {
	fieldValue = getFieldValue(arg_whichField);
	if(isNotCanadianPostal(fieldValue)) {
		flagError(langString('zipPostal', arg_niceName));
		return true;
	} else { return false; }
}
function isNotCanadianPostal(arg_value) {
	regEx = /[a-zA-Z][0-9][a-zA-Z][0-9][a-zA-Z][0-9]/;
	if((arg_value.length>0) && (!(regEx.test(arg_value)))) {
		return true;
	} else { return false; }
}
function checkEmail(arg_whichField,arg_niceName,arg_default) {
	fieldValue = getFieldValue(arg_whichField);
	if(isEmail(fieldValue)) {
		flagError(langString('checkEmail', arg_niceName));
		return true;
	} else { return false; }
}
function isEmail(arg_value) {
	var regEx1 = /^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
	if((arg_value.length>0) && (!regEx1.test(arg_value))) {
		return true;
	} else { return false; }
}
function checkAmericanZip(arg_whichField,arg_niceName,arg_default) {
	fieldValue = getFieldValue(arg_whichField);
	if ((fieldValue.length>0) && (((fieldValue.length!=5) && (fieldValue.length!=9)) || isNaN(fieldValue))) {
		flagError(langString('zipPostal', arg_niceName));
		return true;
	} else { return false; }
}
function checkLow(arg_whichField,arg_niceName,arg_default,arg_low) {
	fieldValue = getFieldValue(arg_whichField);
	if ((fieldValue.length>0) && (isNaN(fieldValue) || (parseFloat(fieldValue) < parseFloat(eval(arg_low))))) {
		flagError(langString('checkLow', arg_niceName, arg_low));
		return true;
	} else { return false; }
}
function checkHigh(arg_whichField,arg_niceName,arg_default,arg_high) {
	fieldValue = getFieldValue(arg_whichField);
	if ((fieldValue.length>0) && (isNaN(fieldValue) || (parseFloat(fieldValue) > parseFloat(eval(arg_high))))) {
		flagError(langString('checkHigh', arg_niceName, arg_high));
		return true;
	} else { return false; }
}
function checkPassword(arg_whichField,arg_niceName,arg_default,arg_checkAgainst,arg_minLength) {
	password1=getFieldValue(arg_whichField);
	password2=getFieldValue(arg_checkAgainst);
	if(password1!=password2) {
		flagError(langString('checkPasswordMatch'));
		return true;
	} else { return false; }
	if(password1.length<arg_minLength || password2.length<arg_minLength) {
		flagError(langString('checkPasswordLength',arg_minLength));
		return true;
	} else { return false; }
}
function flagError(arg_errorText) {
	errorMessage=errorMessage+'   '+arg_errorText+'\n';
	err++;
}
function throwError(errorText) {
	flagError(errorText);
}
function clearDefault(arg_whichField, arg_defaultValue) {
	if (arg_whichField.value == arg_defaultValue) { arg_whichField.value=""; }
}
function langString(stringNumber) {
	if (stringNumber == 'error0') {
		return 'Sorry, the form could not be submitted yet. Please correct the following fields and re-enter.';
	}
	if (stringNumber == 'error1') {
		return 'The following fields cannot be left empty:';
	}
	if (stringNumber == 'error2') {
		return 'Additionally:';
	}
	if (stringNumber == 'checkNumeric') {
		return 'The '+langString.arguments[1]+' field must be a number';
	}
	if (stringNumber == 'checkAlpha') {
		return 'The '+langString.arguments[1]+' field must contain only alpha characters (a-Z)';
	}
	if (stringNumber == 'checkAlphaNumeric') {
		return 'The '+langString.arguments[1]+' field must contain only alpha or number characters';
	}
	if (stringNumber == 'checkLength') {
		return 'The '+langString.arguments[1]+' field must be '+langString.arguments[2]+' characters long';
	}
	if (stringNumber == 'checkMinLength') {
		return 'The '+langString.arguments[1]+' field must be at least '+langString.arguments[2]+' characters long';
	}
	if (stringNumber == 'checkValidDate') {
		return 'The '+langString.arguments[1]+' field is not a proper date';
	}
	if (stringNumber == 'checkAge') {
		return 'The '+langString.arguments[1]+' must be at least '+langString.arguments[2]+' years old';
	}
	if (stringNumber == 'zipPostal') {
		return 'The '+langString.arguments[1]+' field does not appear to be in the correct format';
	}
	if (stringNumber == 'checkLow') {
		return 'The '+langString.arguments[1]+' field must be higher than '+langString.arguments[2];
	}
	if (stringNumber == 'checkHigh') {
		return 'The '+langString.arguments[1]+' field must be lower than '+langString.arguments[2];
	}
	if (stringNumber == 'checkEmail') {
		return 'The '+langString.arguments[1]+' field is not a valid email address';
	}
	if (stringNumber == 'checkPasswordMatch') {
		return 'The Password fields do not match';
	}
	if (stringNumber == 'checkPasswordLength') {
		return 'Your password must be greater then '+langString.arguments[1]+' characters';
	}
}//end
function callLogout(varOne, varTwo) {
	hiddenIframe.document.forms[0].action= varOne + "SessionLogout.aspx?region=nb&lang=fr";
	hiddenIframe.document.forms[0].submit();
	document.searchForm.action = varTwo + "/CustomerLogOutAction.do";
	document.searchForm.submit();
}
function openSizedPopup(l,n,w,h) {
  var location = l;
  var pagename = n;
  var width    = w;
  var height   = h;
  var winprops = "";
  var left     = (screen.width - width) / 2;
  var top      = (screen.height - height) / 2;
  winprops = 'height='+h+',width='+w+',top='+top+',left='+left+',scrollbars=no,statusbar=no,resizable=no';
  win = window.open(location, pagename, winprops);
  if (parseInt(navigator.appVersion) >= 4) {
    win.window.focus();
  }
}
function openSizedPopupResizable(l,n,w,h) {
  var location = l;
  var pagename = n;
  var width    = w;
  var height   = h;
  var winprops = "";
  var left     = (screen.width - width) / 2;
  var top      = (screen.height - height) / 2;
  winprops = 'height='+h+',width='+w+',top='+top+',left='+left+',scrollbars=no,statusbar=no,resizable=yes';
  win = window.open(location, pagename, winprops);
  if (parseInt(navigator.appVersion) >= 4) {
    win.window.focus();
  }
}
function openWindow(mypage,myname,w,h,scroll) {
   LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
   TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
   settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable=no'
   popup = window.open(mypage, myname, settings)
}
//surveyscript
var popunder = "/PS/fr/home/aliantsurvey_f.jsp";
var windowprops = "width=800, height=550, directories=no, fullscreen=no, location=no, addressbar=no, toolbar=no, menubar=no, scrollbars=yes, status=no, resizable=no";
var aliantcookie = document.cookie;
var acceptedCookie = 0;
var invitedCookie = 0;
function getSurveyCookie(name) {
	var result = 0;
	result = document.cookie.indexOf(name);
	if (result == -1) {return -1;} else { return 0;}
}
function loadpopunder() {
	popUnderWindow = window.open(popunder, "surveyWindow", windowprops);
	popUnderWindow.blur();
	window.focus();
}
function createSurveyCookie(name,value,expiresAfterXDays) {
	var date = new Date();
	date.setTime(date.getTime()+(expiresAfterXDays*24*60*60*1000));
	var expires = "; expires="+date.toGMTString();
	document.cookie = name+"="+value+expires+"; path=/";
}
function survayScriptCall(){
   invitedCookie = getSurveyCookie("AliantWebSurvey_Invited");
   acceptedCookie = getSurveyCookie("AliantWebSurvey_Accepted");
   if ((invitedCookie == -1)  && (acceptedCookie == -1)) {
      createSurveyCookie('AliantWebSurvey_Invited', 'Invited', 30);
      loadpopunder();
      if (window != top) {
         top.location.href = location.href;
      }
   }
}