
// =============== scoping global variables =================

// off set value for top postion
if (document.layers) top_offset=-3;
if (document.getElementById) top_offset=-10;
if (document.all) top_offset=0;

// off set value for left postion
if (document.layers) left_offset=-5;
if (document.getElementById) left_offset=0;
if (document.all) left_offset=0;


// do not change this group of variables
var TimerID;
var dhtmlBrowser=0;
var ie=0;
var iemac = 0;
if ((document.all) || (document.layers) || (document.getElementById)) dhtmlBrowser=1;
if (document.all) ie=9;
if ((document.all)&&(navigator.appVersion.indexOf("Macintosh")!=-1)) iemac=0;

var layerList = new Array();
var layernames = new Array();
layernames[0] ="layer0child"

var layerParent = new Array();
layerParent[0] ="layer0parent"

var showLayerList = new Array();
var showLayerName = new Array();
showLayerName[0] ="layer0child"

// ================================================================
function makeSlideShow(label,desc,pic,thisLayer,prevLayer,nextLayer,visible) {
	contents = "<table width=405 cellpadding=2 cellspacing=0 border=0>";
	contents += "<tr><td valign=top width=405 align=center><img src='images/" + pic + "' border=0></td></tr>";
	contents += "<tr><td valign=top width=405 class=slideshow><b>" + label + "</b></td></tr>";
	contents += "<tr><td height=120 class=slideshow valign=top>" + desc + "</td></tr>";
	contents += "<tr><td valign=bottom align=center class=navoff>";
	if (prevLayer != "")
		contents += "<a href='javascript: do_nothing();' OnClick=\"ShowLayerHandler(0,'" + thisLayer + "'); ShowLayerHandler(1,'" + prevLayer + "');\" class=nav><img src='/images/btn_back.gif' border=0></a>";
	else
		contents += "<img src='/images/btn_back_off.gif' border=0>";
	if (nextLayer != "")
		contents += "<a href='javascript: do_nothing();' OnClick=\"ShowLayerHandler(0,'" + thisLayer + "'); ShowLayerHandler(1,'" + nextLayer + "');\" class=nav><img src='/images/btn_next.gif' border=0></a>";
	else
		contents += "<img src='/images/btn_next_off.gif' border=0>";

	
	contents += "</td>"; //end photo column
	contents += "</tr>";
	contents += "</table>";
	//createLayer(name,parent,left, top, width, height, visible, content,menuType)
	createLayer(thisLayer, thisLayer, 290, 160, 410 , 800, visible, contents, "Slide Show");
}

function createLayer(name,parent,left, top, width, height, visible, content,layerType) {
	
 
  var layer;
  left += left_offset;
  top += eval(top_offset +'-ie-iemac')

  if (layerType == "Slide Show") {
  	var z = showLayerList.length;
  	showLayerList[z] = name;
 	showLayerName[z+1] = name;
	zindex = z;
  }
  else {
   	var z = layerList.length;
 	layerList[z] = name;
  	layerParent[z+1] = parent;
  	layernames[z+1] = name;
	zindex = z + 30;
  }

	
  if ( (document.all) || (document.getElementById) ) {
  //  top+=8;
	left-=1;
    document.writeln('<div id="' + name + '" style="position:absolute; overflow:none; left:' + left + 'px; top:' + top + 'px; width:' + width + 'px; height:' + height + 'px;' + ' visibility:' + (visible ? 'visible;' : 'hidden;') + ' z-index:' + zindex + '">');
    document.writeln(content);
    document.writeln('</div>');
  }

  else if (document.layers) {
    document.writeln('<layer name="' + name + '" left=' + left + ' top=' + top + ' width=' + width + ' height=' + height +  ' visibility=' + (visible ? '"show"' : '"hide"') + ' z-index=' + z + '>');
    document.writeln(content);
    document.writeln('</layer>');
    layer = getLayer(name);
    layer.width = width;
    layer.height = height;
  }

   
  else {}

  clipLayer(name, 0, 0, width, height);
}

function clipLayer(name, clipleft, cliptop, clipright, clipbottom) {

  var layer = getLayer(name);

  if (document.layers) {
    layer.clip.left   = clipleft;
    layer.clip.top    = cliptop;
    layer.clip.right  = clipright;
    layer.clip.bottom = clipbottom;
  }
  if (document.all)
    layer.clip = 'rect(' + cliptop + ' ' +  clipright + ' ' + clipbottom + ' ' + clipleft +')';
}

function getLayer(name) {
	
  // Returns A onMouseOver="subroll(1);" onMouseOut="subroll(0);" handle to the named layer.
  if (document.layers)
    return(document.layers[name]);
  else if (document.all) {
  	layer = eval('document.all.' + name + '.style');
    return(layer);
  }
  else if (document.getElementById)
  {
  	//layer = eval('document.getElementById(' + name + ')style');
	elm = eval("document.getElementById('" + name + "')");
    return(elm.style);   
  }
  else
    return(null);
}

function ShowLayerHandler(roll_on, layerName)
{
  if (roll_on)
    showLayer(layerName);
  else
	hideLayer(layerName);
}


function layerHandler(roll_on, layerName)
{
  layerIndex = getLayerIndex(layerName)
  
  if (roll_on)
  {
    clearTimeout(TimerID);
    hideparents(layerIndex);
    hideChild(layerIndex)
    showLayer(layerName);
   
  }
  else
  {
    clearTimeout(TimerID);
    TimerID = setTimeout('hideparents(0)', 800);
  }
}

function showLayer(name) {
	
  var layer = getLayer(name);
 
  if (document.layers) layer.visibility = "show";	
  if (document.all || document.getElementById) layer.visibility = "visible";
}

function hideLayer(name) {

  var layer = getLayer(name);

  if (document.layers) layer.visibility = "hide";
  if (document.all || document.getElementById) layer.visibility = "hidden";
}

function hideparents(exceptThis)
{

  parentName = layerParent[exceptThis];
  layerName = layernames[exceptThis];
  
  // keep showing parent layers
  if ( exceptThis > 1)
  {
	for (i = 1; i < layernames.length; i++ )
	{
		layerName = layernames[i];		
		(layerName != parentName) ? hideLayer(layernames[i]) : parentName = layerParent[i];
	}
  }
  
  else
  {
	for (i = 1; i < layernames.length; i++)
	{		
		if (exceptThis != i ) hideLayer(layernames[i]);
	}
  }
}

function subroll(mouse_on,lName)
{
  
  if (mouse_on)  {
	// get index of this layer
	layerIndex = getLayerIndex(lName)
	
	// show the whole tree
	showLayerTree(layerIndex);	
		
    clearTimeout(TimerID); 
  }
  else  {
	clearTimeout(TimerID);
    TimerID = setTimeout('hideparents(0)', 600); 
    
  }
}

function getLayerIndex(layerName)
{
	for (i=1; i < layernames.length;i++)                               
	{                                                                  
		if ( layernames[i] == layerName	) layerIndex = i         
	} 
	return layerIndex;	
}

function getChildIndex(layerIndex)
{
	layerName = layernames[layerIndex];
	for (i=1; i < layernames.length;i++)                               
	{                                                                  
		if ( layerParent[i] == layerName && i!= layerIndex )  childIndex = i         
	} 
	return childIndex;	
}

function hideChild(layerIndex)
{
	childIndex = 0;
        
    layerName = layernames[layerIndex];    
	                                                                
	//find child layer Index
	childIndex = getChildIndex(layerIndex)
	if (childIndex != 0) hideLayer(layernames[childIndex]);	
}

function getLayerTree(layerIndex)
{
	layerName = layernames[layerIndex];
	layerList = "'" + layerName + "'";
	
	parentName = layerParent[layerIndex];
    
    while (layerName != parentName)
    {
		layerList += ",'" + parentName + "'";
		layerName = parentName;
		newIndex = getLayerIndex(layerName)
		parentName = layerParent[newIndex];
    }    
    return (layerList);  
}

function showLayerTree(layerIndex)
{
	// get layer tree		
	layersToKeep = getLayerTree(layerIndex);	
	
	for (i=1; i<layernames.length;i++)
	{
		layerName = layernames[i];
		str = "'" + layerName + "'";
		
		layersToKeep.indexOf(str) < 0 ? hideLayer(layerName) : showLayer(layerName);
	}
}

function changecolor(divName, newcolor){
			
	if(document.layers) {// browser="NN4"; 
		//e = eval("document.getElementById('" + divName + "')")
		document.layers[divName].bgColor = newcolor;
	} 

	if(document.all) { // browser="IE"; 
		e = eval("document.all." + divName)
		e.style.backgroundColor = newcolor; 
	}

	if(!document.all && document.getElementById) { // browser="NN6+ or IE5+ if you're willing to dump the !document.all stuff"; 
		e = eval("document.getElementById('" + divName + "')")
		e.style.backgroundColor = newcolor; 
		
	}

}
function do_nothing() {  } 