function returnObjById( id )
{
    if (document.getElementById)
        var returnVar = document.getElementById(id);
    else if (document.all)
        var returnVar = document.all[id];
    else if (document.layers)
        var returnVar = document.layers[id];
    return returnVar;
}

/*function drop(id, container) {
    node=returnObjById(id);
	node.style.display='block';
}

function shrink(id) {
    node=returnObjById(id);
	node.style.display='none';
}
*/

//=======================
//
// Merging Image Slideshow
//
// http://www.astral-consultancy.co.uk/cgi-bin/hunbug/doco.cgi?11530
//
//=======================

var slideshowMergeAnimate = new Array();
var slideshowMergeTimer   = new Array();
var slideshowMergeCount   = new Array();
var slideshowMergeImages  = new Array();
var slideshowMergeIndex   = new Array();
var slideshowMergeDir	  = new Array();

//======================

function slideshowMerge(id,cl,imageArray,fadeInterval,holdTime, w, h)
{

  for(i=0;i<imageArray.length;i++)
  {
    var imgLoad = new Image();
    imgLoad.src = imageArray[i];
  }

  if(cl)
    cl = ' class="'+cl+'"';

  if (imageArray.length == 1) {
  	imageArray[1]=imageArray[0];
  	imageArray[2]=imageArray[0];
  } else if (imageArray.length == 2) {
    imageArray[2]=imageArray[0];
  }
  
  document.write('<div id="'+id+'"'+cl+' style="position:relative">');
  document.write('<img id="'+id+'img1" src="'+imageArray[1]+'" width="'+w+'" height="'+h+'" style="position:absolute; top:0px; left:0px;" onload="slideshowMergeRun(\''+id+'\')"/>');
  document.write('<img id="'+id+'img2" src="'+imageArray[0]+'" width="'+w+'" height="'+h+'" style="position:absolute; top:0px; left:0px;"/>');
  document.write('<img id="'+id+'img3" src="'+imageArray[0]+'" width="'+w+'" height="'+h+'" style="position:absolute; top:0px; left:0px;"/>');
  document.write('<img id="'+id+'img4" src="'+imageArray[0]+'" width="'+w+'" height="'+h+'" style="position:absolute; top:0px; left:0px;"/>');
  document.write('</div>');

  var obj4 = returnObjById(id+'img4');
  obj4.style.opacity=.6;
  obj4.style.filter = "alpha(opacity=60)";
  
  slideshowMergeCount[id]   = 0;
  slideshowMergeImages[id]  = imageArray;
  slideshowMergeAnimate[id] = 'run';
  slideshowMergeTimer[id]   = setInterval('slideshowMergeAnimation(\''+id+'\',\''+holdTime+'\');',fadeInterval);

}

//======================

function slideshowMergeAnimation(id,holdTime)
{
  var rpts=20;
  if(slideshowMergeAnimate[id]=='run')
  {
    var obj1 = returnObjById(id+'img1');
    var obj2 = returnObjById(id+'img2');
    var obj3 = returnObjById(id+'img3');

    var opa  = slideshowMergeCount[id]%(rpts/2);

    if(opa==0)
    {  
      if(obj1.src)
      {
//        slideshowMergeAnimate[id] = 'hold';
//        
        obj3.src = obj2.src;setTimeout('slideshowMergeRun(\''+id+'\')',holdTime);
        obj2.src = obj1.src;
        obj3.style.display = 'block';
      }
    }
    else if(opa==1)
    {
//      slideshowMergeAnimate[id] = 'load';
	  imgIdx=(Math.floor(slideshowMergeCount[id]/(rpts/2))%slideshowMergeImages[id].length)+3;
	  if (imgIdx>slideshowMergeImages[id].length) {
	  	imgIdx=2;
	  } else if (imgIdx == slideshowMergeImages[id].length) {
	    imgIdx=1;
	  }
      obj1.src = slideshowMergeImages[id][imgIdx];
    }
      
	var stage=(100-(opa*(100/rpts)))-50;
//    obj1.style.opacity = (opa/100).toString();
//    obj1.style.filter  = "alpha(opacity="+opa.toString()+")";
    obj3.style.opacity = (stage/100).toString();
    obj3.style.filter  = "alpha(opacity="+stage.toString()+")";
	if (stage < 50) {
		obj2.style.opacity = ((stage+50)/100).toString();
		obj2.style.filter = "alpha(opacity="+(stage+50).toString()+")";
	} else {
		obj2.style.opacity=1;
		obj2.style.filter = "alpha(opacity=100)";
	}
     
    slideshowMergeCount[id]++;
    
    if(slideshowMergeCount[id]==(slideshowMergeImages[id].length*rpts))
      slideshowMergeCount[id]=0;
  }
//  alert ("opa-"+opa+" 3-"+obj3.style.opacity+" 2-"+obj2.style.opacity+" idx-"+obj1.src);
}

//======================

function slideshowMergeRun(id)
{
  slideshowMergeAnimate[id] = 'run';
}

//======================
//======================
function slideshowMerge2(id, imageArray, fadeInterval, fadePct, fadeHold, w, h)
{
// id - Slideshow div id
// imageArray - array of images for show
// fadeInterval - speed at which slides are faded
// fadePct - what percent fade happens each fadeInterval
// fadeHold - what percent fade should we stop at
// w - image width
// h - image height

  for(i=0;i<imageArray.length;i++)
  {
    var imgLoad = new Image();
    imgLoad.src = imageArray[i];
  }

  document.write('<div id="'+id+'" style="position:relative">');
  for (i=0; i<imgArray.length;i++) {
	  document.write('<img id="'+id+'img'+i+'" src="'+imageArray[(imgArray.length-i-1)]+'" width="'+w+'" height="'+h+'" style="position:absolute; top:0px; left:0px;"');
	  if (i==0) {
	  	document.write(' onload="slideshowMergeRun(\''+id+'\')"');
	  }
	  document.write('/>');
  }
  document.write('</div>');
  
  slideshowMergeCount[id]   = 0;
  slideshowMergeImages[id]  = imageArray;
  slideshowMergeIndex[id] = imageArray.length-1;
  slideshowMergeDir[id] = "down";
  slideshowMergeTimer[id] = setInterval('slideshowMergeAnimation2(\''+id+'\', '+fadePct+', '+fadeHold+');',fadeInterval);
}

//-----------------

function slideshowMergeAnimation2(id, fadePct, fadeHold)
{

	var obj=new Array();
	for (i=0;i<slideshowMergeImages[id].length;i++) {
	    obj[i] = returnObjById(id+'img'+i);
	}

    var opa  = slideshowMergeCount[id]%(100/fadePct);
    var stage= 0;
	
    if (slideshowMergeDir[id] == "down" )
    {
	  stage=(100-(opa*fadePct));

      obj[slideshowMergeIndex[id]].style.opacity = (stage/100).toString();
      obj[slideshowMergeIndex[id]].style.filter  = "alpha(opacity="+stage.toString()+")";
	  
//	  if (stage < (100-Math.floor(fadeHold / 2)) && slideshowMergeIndex[id] > 1) {
//	    obj[slideshowMergeIndex[id]-1].style.opacity = ((stage+(fadePct*Math.floor(fadeHold/2)))/100).toString();
//        obj[slideshowMergeIndex[id]-1].style.filter  = "alpha(opacity="+(stage+(fadePct*Math.floor(fadeHold/2))).toString()+")";
//	  }

      if(stage<=fadeHold || (opa==(100/fadePct)-1))
      {  
       // start on next image

	  	slideshowMergeIndex[id]-=1;
		if (slideshowMergeIndex[id] < 1) {
		  slideshowMergeIndex[id]=2;
		  slideshowMergeDir[id]="up";
		}
  	  	slideshowMergeCount[id]=-1;
	  }
	} else {
	  stage=(opa*(fadePct))+fadeHold;
  
      obj[slideshowMergeIndex[id]].style.opacity = (stage/100).toString();
      obj[slideshowMergeIndex[id]].style.filter  = "alpha(opacity="+stage.toString()+")";
	
//	  if (stage > 100-Math.floor(fadeHold / 2) && (slideshowMergeIndex[id] < slideshowMergeImages[id].length-2)) {
//	    obj[slideshowMergeIndex[id]+1].style.opacity = ((fadeHold+(stage-(100-Math.floor(fadeHold/2))))/100).toString();
//        obj[slideshowMergeIndex[id]+1].style.filter  = "alpha(opacity="+(fadeHold+(stage-(100-Math.floor(fadeHold/2)))).toString()+")";
//	  }

	  if (stage > 100 || (opa==(100/fadePct)-1)) {
	    // start on next image
		slideshowMergeIndex[id]+=1;
		if (slideshowMergeIndex[id] >= slideshowMergeImages[id].length) {
		  slideshowMergeIndex[id]=slideshowMergeImages[id].length-1;
		  slideshowMergeDir[id]="down";
		}
  	  	slideshowMergeCount[id]=-1;
	  }
	}
      
//    obj1.style.opacity = (opa/100).toString();
//    obj1.style.filter  = "alpha(opacity="+opa.toString()+")";
   
    slideshowMergeCount[id]++;
    
//    if(slideshowMergeCount[id]==(slideshowMergeImages[id].length*10))
//      slideshowMergeCount[id]=0;

//  if (!confirm("dir-"+slideshowMergeDir[id]+" opa-"+opa+" idx-"+slideshowMergeIndex[id]+" stage-"+stage+" img-"+obj[slideshowMergeIndex[id]].src)) {
//  	clearInterval(slideshowMergeTimer[id]);
//  }
}


//=====================================


startList = function() {
  	navRoot = returnObjById("block-menu-menu-sidebar-links");
  	for (i=0; i < navRoot.childNodes.length; i++) {
		checkKids(navRoot.childNodes[i]);
	}
	navRoot = returnObjById("navlist");
	for (i=0; i < navRoot.childNodes.length; i++) {
		node = navRoot.childNodes[i];
		if (node.nodeName=="LI") {
			if (document.all&&document.getElementById) {
				node.onmouseover=function() {
					this.className+=" over";
				}
				node.onmouseout=function() {
				  this.className=this.className.replace(" over", "");
				}
  			}
			for (j=0; j < node.childNodes.length; j++) {
				subnode=node.childNodes[j];
				if (subnode.nodeName == "UL") {
					subnode.className+=" dropdown";
					if (node.id == "programs") {
						subnode.className+=" scroll";
					}
				}
			}
  		}
	}
			
}

function checkKids(node) {
	if (node.nodeName=="LI") {
		if (node.className.search(/last/) < 0) {
 			node.innerHTML+= "<hr/>";
		}
	} else if (node.hasChildNodes()) {
		for (x=0; x < node.childNodes.length; x++) {
			subnode=node.childNodes[x];
			checkKids(subnode);
		}
	}
}
	
window.onload=startList;