// JavaScript Document
// 
// This doc contains the entire js block including functions
// for Banner Rotation and Rollovers - if it's broken, it's
// probably in here.
//__________________________________________________________

// NAVIGATION MECHANISM _________________________//



sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);




// BANNER MECHANISM _________________________//


			function FlashInstalled()
			{
				result = false;
				if (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"])
				{
					result = navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin;
				}
				else if (document.all && (navigator.appVersion.indexOf("Mac")==-1))
				{
					// IE Windows only -- check for ActiveX control, have to hide code in eval from Netscape (doesn't like try)
					eval ('try {var xObj = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");if (xObj)	result = true; xObj = null;	} catch (e)	{}');
				}
				return result;
			}
			
			function GetFlashHTML(url,width,height)
			{
				var htm = '<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';
				htm += '  codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" ';
				htm += ' WIDTH=' + width + ' HEIGHT=' + height + '>';
				htm += ' <PARAM NAME=movie VALUE="' + url + '"> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#FFFFFF>  '; 
				htm += ' <EMBED src="' + url + '" quality=high bgcolor=#FFFFFF  ';
				htm += ' swLiveConnect=FALSE WIDTH=' + width + ' HEIGHT=' + height;
				htm += ' TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">';
				htm += ' </EMBED></OBJECT>';
				return htm;
			}
			
			function BannerMgr_Switch(imageObj,kind,criteria)
			{
				var banObj = this.GetBanner(kind,criteria);
				if (banObj != null)
				{
					imageObj.src = banObj.imgSrc;
					this.SetAnchorRef(imageObj.name+"Ref",banObj.ref);
				}
			}
			
			function BannerMgr_SetAnchorRef(name,ref)
			{
				for (var i=0;i<document.anchors.length;i++)
				{
					if (document.anchors[i].name == name)
					{
						document.anchors[i].href = ref;
						break;
					}
				}
			}
			
			function BannerMgr_GetBanner(kind, criteriaStr)
			{
				var banArray = this.banners[kind];
				var possibles = new Array();
				var result = null;
				
				for (var i=0;i<banArray.length;i++)
				{
					var criteria = criteriaStr.split(",");
					
					var matches = false;
					for (var j=0;j<criteria.length;j++)
					{
						if ((criteria[j]=="all") || (banArray[i].keywords.indexOf(criteria[j]) >= 0))
						{
							matches = true;
						}
						else
							matches = false;
					}
					if (matches)
						possibles[possibles.length] = banArray[i];
				}
				
				
				if (possibles.length > 0)
				{
					var choice = Math.floor(Math.random()*possibles.length);
					result = possibles[choice];
				}
			
				return result;	
			}
			
			function BannerMgr_Add(kind, keywords, imgSrc, altText, ref, flashSrc)
			{
				var banArray = this.banners[kind];
				var banObj = new Object();
				banObj.name = "ban" + banArray.length;
				banObj.keywords = keywords;
				banObj.imgSrc = imgSrc;
				banObj.altText = altText;
				banObj.ref = ref;
				
				if (arguments.length > 5)
					banObj.flashSrc = flashSrc;
				else
					banObj.flashSrc = null;
				
				banArray[banArray.length] = banObj;
			}
			
			function BannerMgr_WriteBanner(kind,criteria)
			{
				var htm = this.GetBannerHTML(kind,criteria);
				document.write(htm);
			
			}
			
			function BannerMgr_GetBannerHTML(kind,criteria)
			{
				var banObj = this.GetBanner(kind,criteria);
				var wh = this.GetWidthHeight(kind);
				
				var htm = '';
				if (banObj.flashSrc && FlashInstalled())
				{
					htm = GetFlashHTML(banObj.flashSrc+"?link="+banObj.ref,wh.width,wh.height);
				}
				else
				{
					htm += '<a name="' + banObj.name + 'Ref" href="' + banObj.ref + '" target="_blank">';
					htm += '<img name="' + banObj.name + '" src="' + banObj.imgSrc + '" width=';
					htm += wh.width + ' height=' + wh.height + ' onerror="gBannerMgr.Switch(this,' + kind + ',\'local,' + criteria + '\')" ';
					htm += 'alt="' + banObj.altText + '" border=0></a>';
			
					// support for airplane banner
					if (kind==BannerMgr.BAN)
					{
						gBannerName = banObj.name;
						gBannerLinkName = banObj.name;
						gBannerLinkURL = banObj.ref;
					}
				}
			
				return htm;
			}
			
			function BannerMgr_GetWidthHeight(kind)
			{
				var returnObj = new  Object();
				switch(kind)
				{
					case 0:
						returnObj.width = 468;
						returnObj.height = 40;
						break;
					case 1:
						returnObj.width = 88;
						returnObj.height = 31;
						break;
					case 2:
						returnObj.width = 120;
						returnObj.height = 60;
						break;
				}
				return returnObj;		
			}
			
			
			
			function BannerMgr()
			{
				this.banners = new Array( new Array(), new Array(),new Array() );
				// Methods
				this.GetWidthHeight = BannerMgr_GetWidthHeight;
				this.WriteBanner = BannerMgr_WriteBanner;
				this.Add = BannerMgr_Add;
				this.GetBanner = BannerMgr_GetBanner;
				this.SetAnchorRef = BannerMgr_SetAnchorRef;
				this.Switch = BannerMgr_Switch;
				this.GetBannerHTML = BannerMgr_GetBannerHTML;
			}
			BannerMgr.BAN = 0;
			BannerMgr.BTN = 1;
			BannerMgr.BTN2X = 2;
			
			var gBannerMgr = new BannerMgr();
			
			// Regular Size Banner Examples
			// Regular Size Banner Examples
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_yf.gif", "Click here for details", "http://www.youthfriends.org");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_pfc.gif", "Click here for details", "http://www.pfc.org");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_ncadd.gif", "Click here for details", "http://www.recoverycentral.org");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_aim.gif", "Click here for details", "http://www.project-aim.org");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_linc.gif", "Click here for details", "http://www.kclinc.org");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_ccfy.gif", "Click here for details", "http://www.ccfy.org");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_ja.jpg", "Click here for details", "http://middleamerica.ja.org/");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_campfire.gif", "Click here for details", "http://www.kc-campfire.org/");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_fsf.gif", "Click here for details", "http://www.firststepfund.org/");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_harvesters.gif", "Click here for details", "http://www.harvesters.org/");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_efa.gif", "Click here for details", "http://www.efha.org/");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_pe.gif", "Click here for details", "http://www.projectequality.org/");
			gBannerMgr.Add(BannerMgr.BAN, "local", "nonprofits/banner_alcoholscreen.gif", "Click here for details", "http://www.alcoholscreening.org");
			
			var gBannerMgrb = new BannerMgr();
			
			// Regular Size Banner Examples
			// Regular Size Banner Examples
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_yf.gif", "Click here for details", "http://www.youthfriends.org");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_pfc.gif", "Click here for details", "http://www.pfc.org");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_ncadd.gif", "Click here for details", "http://www.recoverycentral.org");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_aim.gif", "Click here for details", "http://www.project-aim.org");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_linc.gif", "Click here for details", "http://www.kclinc.org");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_ccfy.gif", "Click here for details", "http://www.ccfy.org");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_ja.jpg", "Click here for details", "http://middleamerica.ja.org/");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_campfire.gif", "Click here for details", "http://www.kc-campfire.org/");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_fsf.gif", "Click here for details", "http://www.firststepfund.org/");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_harvesters.gif", "Click here for details", "http://www.harvesters.org/");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_efa.gif", "Click here for details", "http://www.efha.org/");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_pe.gif", "Click here for details", "http://www.projectequality.org/");
			gBannerMgrb.Add(BannerMgr.BAN, "local", "../nonprofits/banner_alcoholscreen.gif", "Click here for details", "http://www.alcoholscreening.org");

			

// ROLLOVER MECHANISM _________________________//
			
<!--
			if (document.images) {            // Active Images
						img1on = new Image();      
						img1on.src = "images/links_1_on.gif"; 
						img2on = new Image(); 
						img2on.src = "images/links_2_on.gif";  
						img3on = new Image();
						img3on.src = "images/links_3_on.gif";
						img4on = new Image();
						img4on.src = "images/links_4_on.gif";
						
						img1bon = new Image();      
						img1bon.src = "../images/links_1_on.gif"; 
						img2bon = new Image(); 
						img2bon.src = "../images/links_2_on.gif";  
						img3bon = new Image();
						img3bon.src = "../images/links_3_on.gif";
						img4bon = new Image();
						img4bon.src = "../images/links_4_on.gif";
						
						img100on = new Image();      
						img100on.src = "images/header_login_on.gif";
						img100bon = new Image();      
						img100bon.src = "../images/header_login_on.gif";
						img102on = new Image();      
						img102on.src = "images/hm_login_on.gif";
						img101on = new Image();      
						img101on.src = "images/header_servrequest_on.jpg";
						img101bon = new Image();      
						img101bon.src = "../images/header_servrequest_on.jpg";
						
						img300on = new Image();      
						img300on.src = "images/links_0_on.jpg";
						img300bon = new Image();      
						img300bon.src = "../images/links_0_on.jpg";
						
			
						img1off = new Image(); 
						img1off.src = "images/links_1_off.gif"; 
						img2off = new Image();          
						img2off.src = "images/links_2_off.gif"; 
						img3off = new Image(); 
						img3off.src = "images/links_3_off.gif";
						img4off = new Image();
						img4off.src = "images/links_4_off.gif";
						
						img1boff = new Image(); 
						img1boff.src = "../images/links_1_off.gif"; 
						img2boff = new Image();          
						img2boff.src = "../images/links_2_off.gif"; 
						img3boff = new Image(); 
						img3boff.src = "../images/links_3_off.gif";
						img4boff = new Image();
						img4boff.src = "../images/links_4_off.gif";
						
						img100off = new Image(); 
						img100off.src = "images/header_login_off.gif";
						img100boff = new Image(); 
						img100boff.src = "../images/header_login_off.gif";
						img102off = new Image(); 
						img102off.src = "images/hm_login.gif"; 
						img101off = new Image(); 
						img101off.src = "images/header_servrequest_off.jpg";						
						img101boff = new Image(); 
						img101boff.src = "../images/header_servrequest_off.jpg";
						
						img300off = new Image(); 
						img300off.src = "images/links_0.jpg";
						img300boff = new Image(); 
						img300boff.src = "../images/links_0.jpg";
					}
			
			// Function to 'activate' images.
			function imgOn(imgName) {
					if (document.images) {
						document[imgName].src = eval(imgName + "on.src");
					}
			}
			
			// Function to 'deactivate' images.
			function imgOff(imgName) {
					if (document.images) {
						document[imgName].src = eval(imgName + "off.src");
					}
			}
			// -->
			
			
// SOME SORT OF RESIZING MECHANISM _________________________//			
			

			<!--
			function MM_reloadPage(init) {  //reloads the window if Nav4 resized
			  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
				document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
			  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
			}
			MM_reloadPage(true);
			// -->

			