/* Image Swap */

var sImgPath = "/bcparks/_bcparks_templates/images/";


function init() {
	//set default font size
	ChangeFontSize(0);

	if (document.URL.indexOf("parkpgs")>0) {
		//loadScript("/bcparks/common_files/scripts/parkInfo.js");
		var isParkPage = true;
	}
	
	//execute ParkInfo script
	if (isParkPage) {
	//	alert("test");
	//  readParkInfo();
	}

		
}








function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}


function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

MM_preloadImages(sImgPath + 'fap_byfacility-on.gif',sImgPath + 'fap_byalpha-on.gif',sImgPath + 'fap_bylocation-on.gif',sImgPath + 'nav-global-home-on.gif',sImgPath + 'nav-global-thingstodo-on.gif',sImgPath + 'nav-global-preservingourlegacy-on.gif',sImgPath + 'nav-global-discovery-on.gif',sImgPath + 'nav-global-ourfuture-on.gif',sImgPath + 'nav-global-bcparksoffice-on.gif',sImgPath + 'interior-fap_facil-activ-o.gif',sImgPath + 'interior-fap_listing-o.gif',sImgPath + 'interior-fap_location-o.gif',sImgPath + 'nav-global-home-on.gif',sImgPath + 'nav-global-thingstodo-on.gif',sImgPath + 'nav-global-preservingourlegacy-on.gif',sImgPath + 'nav-global-discovery-on.gif',sImgPath + 'nav-global-ourfuture-on.gif',sImgPath + 'nav-global-bcparksoffice-on.gif');








// Begin Changes Made by FWen 
// available set of font sizes for global (wrapper) adjustment
var cstArrySizeNms = new Array("0.52em", "0.58em", "0.65em", "0.715em", "0.78em");
// available set of font sizes by ID for adjustment separately
var cstArrySizeByIDs = new Object();
// index of cstArrySizeByIDs (such as "content") corresponds to the element ID to be adjusted
cstArrySizeByIDs["header"] = new Array("0.94em","0.97em","1em","1.03em","1.06em");
//cstArrySizeByIDs["content"] = new Array("0.5em","0.8em","1.1em","1.4em","1.7em");
cstArrySizeByIDs["content"] = new Array("0.9em","0.95em","1.1em","1.15em","1.2em");

// plus minus toggle image name and ID
var cstArrySizerImgs = new Object();
// Array member declared as (<normal_img_name>,<grey_img_name>,<anchor_tag_id>)
// original code seems to be wrong in ordering of plus/minus img names, swap them
cstArrySizerImgs["plus"] = new Array("textsizer-plus-off.gif","textsizer-plus.gif","sizer_plus");
cstArrySizerImgs["minus"] = new Array("textsizer-minus-off.gif","textsizer-minus.gif","sizer_minus");

var cstArryTagNms = new Array("BODY");
var cstStrCookieNm = "SiteBaseFontSize";
function ChangeFontSize(intDelta){
    if(!document.getElementsByTagName || !document.getElementById) return;
        document.getElementById("textsizer").style.display="block";
    // set current font size
    var intCurrSize = parseInt(getCookie(cstStrCookieNm));
    if( isNaN(intCurrSize) ) {
        // If cookie is invalid and delta is 0, no change needed
        if(intDelta == 0) return;
        intCurrSize =  Math.floor(cstArrySizeNms.length/2);
    }
    // set target font size
    intCurrSize += intDelta;
    intCurrSize = Math.max(0, Math.min(cstArrySizeNms.length-1,intCurrSize));
    if (intCurrSize == Math.floor(cstArrySizeNms.length/2)){
        intCurrSize = Number.NaN;
    }
    var tagNm, tagEle;
    
    // set target font size by tag name
    var strCurrSize = (isNaN(intCurrSize)?null:cstArrySizeNms[intCurrSize]);
    for(var i=0; i<cstArryTagNms.length;i++){
        var collEles = document.getElementsByTagName(cstArryTagNms[i]);
        for(var j=0;j<collEles.length;j++){
            collEles[j].style.fontSize = strCurrSize;
        }
    }
    
    // set target font size by ID
    for(var eleNm in cstArrySizeByIDs){
        var ele = document.getElementById(eleNm);
        if(ele == null) continue;
        ele.style.fontSize = (isNaN(intCurrSize)?null:cstArrySizeByIDs[eleNm][intCurrSize]);
    }
    
    // grey out image if necessary
    if(intCurrSize == cstArrySizeNms.length-1){
        // grey out plus img
        DoGreyOut("plus",0);
        
    }
    else if(intCurrSize == 0){
        // grey out minus img
        DoGreyOut("minus",0);
    }
    else{
        DoGreyOut("plus",1);
        DoGreyOut("minus",1);
    }
    
    // set cookie
    setCookie(cstStrCookieNm,(isNaN(intCurrSize)?null:intCurrSize));
}

function DoGreyOut(PlusOrMinus, isReset){
    var sizerEle = document.getElementById(cstArrySizerImgs[PlusOrMinus][2]);
    if(sizerEle == null) return;
    sizerEle.style.cursor = (isReset)?"":"default";
    if(sizerEle.getElementsByTagName("IMG").length == 0) return;
    var strSrc = sizerEle.getElementsByTagName("IMG")[0].src;
    strSrc = strSrc.substring(0,strSrc.lastIndexOf("/")+1)+cstArrySizerImgs[PlusOrMinus][isReset];
    sizerEle.getElementsByTagName("IMG")[0].src = strSrc;
}
// End Changes Made by FWen



function setCookie(name, value, expires, path){
        document.cookie= name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ("; path=/" );
}

function getCookie(name){
        var dc = document.cookie;
        var prefix = name + "=";
        var begin = dc.indexOf("; " + prefix);
        if (begin == -1){
                begin = dc.indexOf(prefix);
                if (begin != 0) return null;
        }else{
                begin += 2;
        }
        var end = document.cookie.indexOf(";", begin);
        if (end == -1){
                end = dc.length;
        }
  return unescape(dc.substring(begin + prefix.length, end));
}










//--==Global Image Preload==--
function imgPreloadGlobal() {
	var i = new Number();
	var ir = new Number(); //Rollover Image Counter
	var iLastSlash = new Number();
	var imgFile = new String();
	var aRollImg = new Array();
	var srcOn = new String();
	var srcOff = new String();
	ir = 0; //number of rollover images

	if (document.images) {
		for (i in document.images) {
			if (document.images[i].src) {
				imgFile = document.images[i].src.substr(document.images[i].src.lastIndexOf("/")+1);
				if (imgFile.indexOf("_off.")>1) {
					ir++;
					aRollImg[ir-1] = document.images[i];
					aRollImg[ir-1].id = "r" + ir;
				}
			}
		}
	}
}




	var sPath="/bcparks/images/buttons/";
	
	//Image Preload Configuration
  	//Array of image file names
	var iImgs=4; //Set number of logo images
	var arrimg=new Array(iImgs-1);
	var ia = 1;
	arrimg[0]="btn_email_off.gif";
	arrimg[1]="btn_email_on.gif";
	arrimg[2]="btn_highwaycam_180_off.gif";
	arrimg[3]="btn_highwaycam_180_on.gif";
	
	//******************************

	//Preload Images
	var imgtmp=new Image();
	for (i=0;i<=arrimg.length-1;i++)
		imgtmp.src=sPath+arrimg[i];
	
	//Image RollOver
	function setImg2(img,status) {
	  var iIndex=0;
		var oImg=document.getElementById(img);
		var imgFullPath=oImg.src;
		var lSlash=imgFullPath.lastIndexOf("/");
		var imgFile=imgFullPath.substr(lSlash+1);
		if (status=="off")
		  imgFile=imgFile.replace("_on.","_off.");
		if (status=="on")
		  imgFile=imgFile.replace("_off.","_on.");
		var sNewImg=sPath + imgFile;
		oImg.src=sNewImg;
		} 	
	function setImg(img,status) {
		var iIndex = 0;
		var oImg = document.getElementById(img); //create image object
		var sSrc = oImg.src; //full image source path
		var sImgPath = sSrc.substring(0,sSrc.lastIndexOf("/")+1); //location of image
		var sImgFile1 = sSrc.substr(sSrc.lastIndexOf("/")+1); //input image file name
		if (status == "off")
			var sImgFile2 = sImgFile1.replace("_on.","_off.");
		if (status == "on")
			var sImgFile2 = sImgFile1.replace("_off.","_on.");
		var sNewSrc = sImgPath + sImgFile2;
		oImg.src = sNewSrc;
	}		

//--==Script Loader==--
function loadScript(sURL) {
  var oS = document.createElement("script");
  oS.type = "text/javascript";
  oS.src = sURL;
  document.getElementsByTagName("head")[0].appendChild(oS);
}


//--==Globally Controlled Park Info==--
//load the parkInfo script if current page is within the 'parkpgs' folder
if (document.URL.indexOf("parkpgs")>0) {
 // loadScript("/bcparks/common_files/scripts/parkInfo.js");
	var isParkPage = true;
}
	
	