var isNav4 = false 
var isNav5 = false 
var isIE4 = false
if(navigator.appName == "Netscape") {
	if (navigator.appVersion < "5") {
		isNav4 = true;
		isNav5 = false;
	} else if (navigator.appVersion > "4") {
		isNav4 = false;
		isNav5 = true;
   	}
} else {
	isIE4 = true;
}


//----OLD: var ENewsLetterLink = "https://secure.lhplans.com/caa/enewsSubs2.jsp";
var ENewsLetterLink = "https://www.affinityinfo.ca/caa/subscribe_EN.asp";
var EWArea='Public'
//-- Global functions that get called each and everytime a page is loaded....
//---> showFlash("caa_");

function imageSwap(){
    if (document.images){
        for (var x=0;x<imageSwap.arguments.length;x+=2) {
            document[imageSwap.arguments[x]].src = eval(imageSwap.arguments[x+1] + ".src");
        }
    }
}

// ====================== Global JS Functions used by entire CAA application: START =================== -->

function strRight(strBig, strSmall) {
	return strBig.substring( strBig.indexOf(strSmall)+strSmall.length, strBig.length);
}
function strLeft(strBig, strSmall) {
	return strBig.substring( 0, strBig.indexOf(strSmall));
}

function changeObjLabel(forId, message) {
	var objLabels = document.getElementsByTagName("LABEL"); 
	var obj;
	for (var i = 0; i < objLabels.length; i++) {
		if (objLabels[i].htmlFor== forId) { obj = objLabels[i]; break;}
	}
	if (obj) obj.innerHTML = message;
}
function submitonce(theform) {
	if (document.all||document.getElementById){
		for (i=0; i<theform.length; i++){
			var tempobj = theform.elements[i];
			var objType = tempobj.type;
			if(objType!=null && objType!="") objType = objType.toLowerCase();
			switch(objType) {
			case "button":
			case "submit":
			case "reset":
			case "input":
			case "select":			
				tempobj.disabled = true;				
			}
		}
	}
}
function wrongField(field, text,errorSection) {
         if(text != null && text != "")  alert(text);
         if ( errorSection != null && errorSection != "") navSection( errorSection ); 
         if ( field != null)   field.focus();  
         return false;
}
function isNotChecked(field, text, errorSection, focusnum) {
   var l = field.length;
   var i;
   for (i = 0; i < l; i++) {
      if (field[i].checked)  return false;
   }
   if( focusnum != null ) f = eval("field["+focusnum+"]")
   else f=field[0];
   wrongField(f, text, errorSection);
   return true;
}
function isNotSelected(field, text, errorSection, focusnum) {
   var l = field.length;
   var i;
   for (i = 0; i < l; i++) {
      if (field[i].checked)  return false;
   }
   if( focusnum != null ) f = eval("field["+focusnum+"]")
   else f=field[0];
   wrongField(f, text, errorSection);
   return true;
}

function Get_Cookie(name) {
    var start = document.cookie.indexOf(name+"=");
    var len = start+name.length+1;
    if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
    if (start == -1) return null;
    var end = document.cookie.indexOf(";",len);
    if (end == -1) end = document.cookie.length;
    return unescape(document.cookie.substring(len,end));
}
function Set_Cookie(name,value,expires,path,domain,secure) {
        var tmp = name + "=" +escape(value) +
        ( (path) ? " ;path=" + path : " ;path=" +"/") + 
        ( (domain) ? " ;domain=" + domain : "") +
        ( (expires) ? ( " ;expires=" + expires.toGMTString() ) : "") +
        ( (secure) ? " ;secure" : "");
        document.cookie = tmp;
}
function Add_Cookie(name,value,expires,path,domain,secure) {
 var amNum = Get_Cookie( "amNum");
 var tValue;
 if ( amNum == null || amNum == "") tValue = "~"+escape(value)+"~";
 else tValue = "~"+escape(value)+ amNum;
 var tmp = name + "=" + tValue +
 ( (path) ? " ;path=" + path : " ;path=" +"/") + 
 ( (domain) ? " ;domain=" + domain : "") +
 ( (expires) ? ( " ;expires=" + expires.toGMTString() ) : "") +
 ( (secure) ? " ;secure" : "");
 document.cookie = tmp;
}
function Delete_Cookie (name) { 
	var exp = new Date(); 
	exp.setTime (exp.getTime() - 1); 
	var cval = Get_Cookie (name); 
	document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
function setAssoCookie(){
   var parmAssoc = "as";
   var assocCode = associationName;
   curCookie = Get_Cookie( parmAssoc );
   //alert("current cookie :"+curCookie);
   if (assocCode != curCookie){
      // Check to see if an association cookie is already set.
	 // alert("set cookies: " + assocCode);
	Delete_Cookie(parmAssoc);
	Set_Cookie(parmAssoc, assocCode);
	//alert(assocCode);
   }   
}
setAssoCookie();

function gotoSpouseApp(){
	var rtn = "/Can/affinity/afge.nsf/quote?Open&_fn=quote-afc-tl&pd=" + getPageInfo('prdID');
	op(rtn);
}
function launchCAADollarRewards(){
	
	//- Retrieve quote parameters from form and pass to the Rewards form.
	var form = document.forms[0];
	var sGender = form.ap_m_gender.value;
	var nIndex = form.ap_m_dob_dd.selectedIndex;
	sDOB_DD = form.ap_m_dob_dd[nIndex].text;
	var sDOB_MM = form.ap_m_dob_mm.value;
	var sDOB_YY = form.ap_m_dob_yy.value;

	var rtn = "/Can/affinity/afge.nsf/n_apply?openForm&_fn=prewards&from=life&q_prod=" + getPageInfo('prdID');
	rtn = rtn + "&q_gender=" + sGender + "&q_bddd=" + sDOB_DD + "&q_bdmm=" + sDOB_MM + "&q_bdyy=" + sDOB_YY;
	
	op_NewWin(rtn, 640, 600, 'rewards');
}
function op_PrdID(pageurl, lNewWin, winWidth, winHeight, winName){
	var rtn = pageURL + "?open&pd=" + getPageInfo('prdID');
	
	if (lNewWin==true){
		if (winWidth==null | winWidth==""){
			winWidth = 640;
		}
		if (winHeight==null | winHeight==""){
			winHeight = 600;
		}
		if (winName==null | winName==""){
			winName = "win";
		}
	
		op_NewWin( rtn, winWidth, winHeight, winName);
	} else {
		op( rtn );
	}
}
function op_ClubPage(pageurl, lNewWin, winWidth, winHeight, winName){
	as = associationName;
	asLen = as.length;
	asCode = as.substring(as.length-2, as.length);
	
	var rtn = pageurl + "_" + asCode;

	if (lNewWin==null | lNewWin==""){
		lNewWin = false;
	}
	if (lNewWin==true){
		if (winWidth==null | winWidth==""){
			winWidth = 640;
		}
		if (winHeight==null | winHeight==""){
			winHeight = 600;
		}
		if (winName==null | winName==""){
			winName = "win";
		}
	
		openWindow( rtn, winWidth, winHeight, winName);
	} else {
		var rtn = rtn + "?open&as=" + as;
		window.location = rtn;
	}
}
function op_OtherProducts(pageurl){
	as = associationName;
	asLen = as.length;
	asCode = as.substring(as.length-2, as.length);
	
	var rtn = pageurl
	if (asCode=="co"){
		// Overtide for normal EW other products page....
		rtn = "http://www.caasco.com";
		openWindow( rtn, 0, 0, "", true);
		
	} else {
		rtn = rtn + "_" + asCode;
		op(rtn);
	}	
}
function op_Flash(pageurl){
	as = associationName;
	asLen = as.length;
	asCode = as.substring(as.length-2, as.length);
	
	
	var rtn = pageurl
//*-- temp removal: for now, BCAA only wants generic branded flash -- not the one branded with their logo..	
//*--	if (asCode=="ab" | asCode=="qu" | asCode=="bc"){
//*--
	if (asCode=="ab" | asCode=="qu"){
		rtn = rtn + "_" + asCode;
	}
	openCrippledWindow( rtn ,550, 470);
}
function op_EHCSite(){
	as = associationName.toLowerCase();
	if (as.substring(0,2)=="f_"){
	    // For french, remove the "f_" prefix as this is not used on EHC....
	    as = as.substring(2,as.length);
	}
	
        // Build link to EHC Site using assocation code.  For "caa", link is slightly different as it reroutes
        // main splash page and passes no assocID.
	if (as=="caa"){
	    var rtn = EHCSiteLink+"?traceCode=life";
	} else {
	    var rtn = EHCSiteLink+"?assocId="+ as.toUpperCase() + "&traceCode=life";
	}

	window.location = rtn;
}
function op_ENewsLetter(){
	as = associationName.toLowerCase();
	
        // Build link to EHC Site using assocation code -- include lang parm if French...
	//----OLD: var rtn = ENewsLetterLink+"?assocId="+ as.toUpperCase() + "&traceCode=life";
	var rtn = ENewsLetterLink;
	//----removed: no longer need a language flip
	//-*if (as.substring(0,2)=="f_"){
	//-*    rtn = rtn + "&lang=F";
	//-*}
	//----end of removed: no longer need a language flip

//	window.location = rtn;
	openWindow( rtn, 460, 370, 'enews');
}

function getPolicy(lang, planType){
	var as = Get_Cookie('as');
	var plKey;
	var planTypeKey = (planType=='vtc')? 'vtc':'tc';
	var langKey = (lang=='F')? 'fr':'en';
	switch (as) {
	case 'cm':
		plKey = 'cm';
		break;
	default:
		plKey = 'ge';
	}
	var filename = langKey+'.'+plKey+'.'+planTypeKey +'_policy';
	var fURL = '.././lookupfiles/downloadablefile'+filename+'/$file/'+filename+'.pdf';
	//alert(fURL);
	openWindow(fURL);
}
function submitVote(poll_id, fn) {
	var bDone = false;
	var cookie_value = Get_Cookie( "affinity_poll_"+poll_id);
	if ( cookie_value != null && cookie_value != "" && cookie_value.indexOf("Y")>=0) {
		bDone = true;
		querystr = "&poll_id=" + poll_id+"&bDone" //poll has been done already
	}
	if (!bDone) {
		error_msg = "Please make selection(s) before clicking 'Vote' button.";
		form = document.forms[0];
		var fd = eval("form."+fn);

		if (isNotChecked(fd, error_msg)) return false;	
		var sel = "";
		for (i = 0; i < fd.length; i++) {
			if (fd[i].checked) {
				if (sel=="") sel = fd[i].value;
				else sel = sel +"~"+ fd[i].value;
			}
		}	
		var email = form.email;
		querystr = "&poll_id=" + poll_id + "&sel=" + sel + "&" + ( email == null ? "":"&email="+email.value+"&")
		now = new Date();
		expires = new Date( now.getYear()+1, now.getMonth(), now.getDate()); 
		Set_Cookie("affinity_poll_"+poll_id, "Y", expires);
	}

	url = "../../afpolls.nsf/web.vote?OpenAgent"+querystr;
	openWindow( url, 500, 410);
}
function viewResult(poll_id) {
	querystr = "&poll_id=" + poll_id + "&bViewResult"
	url = "../../afpolls.nsf/web.vote?OpenAgent"+querystr;
	openWindow( url, 500, 410);
}
function getChangeForm( form, lang)
{

   if (lang.toLowerCase() == "en"){
      m_association = "Please select your alumni association.";
      m_changetype = "Please select change type(s).";
   }
   else {  //Here should be messages in french
      m_association = "Veuillez choisir votre association d'anciens ÃƒÆ’Ã‚Â©tudiants.";
      m_changetype = "Veuillez choisir le(s) changement(s) ÃƒÆ’Ã‚Â  effectuer.";
   }

   var as;
   var asn;  

   if ( form.AssociationName != null) {
      if (isNotChosen( form.AssociationName, m_association )) return false;
      as = form.AssociationName[form.AssociationName.selectedIndex].value;
      asn = form.AssociationName[form.AssociationName.selectedIndex].text;      
   } else if (associationName != null) {
      as = associationName;
      asn = associationName;
      if ( form.asn != null)  asn = form.asn.value;
   }

  while (asn.indexOf(' ') > 0 ) {   
         asn = asn.replace(" ", "+");
  }

   if (isNotSelected( form.changeType, m_changetype)) return false;   

   var ctp = form.changeType;
   var ct="";
   for ( i=0; i<ctp.length; i++) {
     if ( ctp[i].checked) ct = ct + "~"+ctp[i].value
   }  

   parent.location = "../../affinityforms.nsf/cform?open"+"&tp="+ct+"&as="+as+"&asn="+asn;

}

function showFlash(onlyForPageName){
   var flashDisplayed;
   var showFlash = false;
   var pageName;
   
   // First, check if flash animation has already been displayed via cookie setting...
   flashDisplayed = Get_Cookie( "caa_flash" );
   if (flashDisplayed == null | flashDisplayed == ""){

      if (onlyForPageName == null | onlyForPageName == ""){
         showFlash = true;
      } else {
         // Get the current page name from the query string and see if it matches the allowable pagename that
         // the flash animation can be displayed on.
         browserName = navigator.appName;
	 browserVer = parseInt(navigator.appVersion);
	 
	 if ((browserName == "" ) || (browserName == "Microsoft Internet Explorer" && browserVer < 4)) {
	    queryString = document.location;
	 } else {
	    queryString = document.URL;
	 }
         pageName = queryString.substring( queryString.lastIndexOf("/") + 1, queryString.length );
         if (pageName.indexOf("?")>=0) pageName = strLeft(pageName, "?")

         // Perform a check for both page languages.....
         var onlyForPageNameFR = "f_" + onlyForPageName;

         if (pageName==onlyForPageName | pageName==onlyForPageNameFR){
            showFlash = true;
         }
      }
   
      if (showFlash){
         //- Check language to determine what flash file to load -- english or french.
         var as;
         var asLang;
         var prefix = "";
         as = associationName;
         asLang = as.substring(0,2);
         if (asLang=="f_"){
            prefix = "f_";
         }

         //--- display the flash file now....
         flashFile = "./" + prefix + "caa_flash";
         openWindow( flashFile,600,490);
         Set_Cookie( "caa_flash", "Y" );
      }
   }
}
// ======================= General functions used by entire CAA application: END ===================== -->

//-- HEALTH & DENTAL LINK --//
function openEHC(){
    //var baseURL = "http://www.memberhealthplan.com/caa/intro.jsp"
	var baseURL = "/caa/intro.jsp"
	
    var assoName = associationName.toUpperCase();
    if (assoName.substring(0,2)=="F_"){
    	assoName = assoName.substring(2);
    }    
    
    
    if (assoName!="CAA" & assoName!="CAAMT"){
    	assoName = "?assocId=" + assoName;
    } else {
    	assoName = "";
    }
    
    sURL = baseURL + assoName;
    window.location = sURL;
}

function openEHC_Apply(){
    var mapURL = "http://www.memberhealthplan.com/caa/intro.jsp"
    var applyURL = "http://www.memberhealthplan.com/caa/quotationCT.jsp"

    var assoName = associationName.toUpperCase();
    if (assoName.substring(0,2)=="F_"){
    	assoName = assoName.substring(2);
    }    
    
    
    if (assoName!="CAA" & assoName!="CAAMT"){
    	sURL = applyURL;

    	switch (assoName){
	    case "CAAAB":
	        assoProv = "AB";
		assoPlanID = "000132";
  		break;    
	    case "CAABC":
	        assoProv = "BC";
		assoPlanID = "000121";
  		break;    
	    case "CAACO":
	        assoProv = "ON";
		assoPlanID = "000122";
  		break;    
	    case "CAAMA":
	        assoProv = "MB";
		assoPlanID = "000126";
  		break;    
	    case "CAANE":
	        assoProv = "ON";
		assoPlanID = "000124";
  		break;    
	    case "CAANG":
	        assoProv = "ON";
		assoPlanID = "000125";
  		break;    
	    case "CAASK":
	        assoProv = "SK";
		assoPlanID = "000127";
  		break;    
        }
        
    	assoName = "?assocId=" + assoName;
        assoProv = "&provinceId=" + assoProv;
        assoPlanID = "&webPlanId=" + assoPlanID;
        
    } else {
    	sURL = mapURL;
    	assoName = "";
    	assoProv = "";
    	assoPlanID = "";
    }
    
    sURL = sURL + assoName + assoProv + assoPlanID;
    window.location = sURL;
}


//------ Temporary utility functions: Start -------//
function isJSFileLoaded(){
   alert( "The JS File '_gp.forms.js' has been successfully loaded.");
}
//------ Temporary utility functions: End -------//