var isNS4 = (document.layers) ? true : false;
var isIE4 = (document.all && !document.getElementById) ? true : false;
var isIE5 = (document.all && document.getElementById) ? true : false;
var isNS6 = (!document.all && document.getElementById) ? true : false;


function GetLayer(name)
{
	if(isNS4) 					return	(document.layers[name]);
	else if(isIE4) 				return 	(eval("document.all."+name));
	else if(isIE5 || isNS6) 	return 	(document.getElementById(name));
}

function SetLayerName(name,newname)
{
	var layer = GetLayer(name);
	if(isNS4)							layer.name=newname;
	else if(isIE4 || isIE5 || isNS6)	layer.style.id=newname;
}

function GetLayerName(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.name);
	else if(isIE4 || isIE5 || isNS6)	return(layer.style.id);
}

function HideLayer(name) 
{
	var layer = GetLayer(name);
	if(isNS4)							layer.visibility="hide";
	else if(isIE4 || isIE5 || isNS6)	layer.style.visibility="hidden";
}

function ShowLayer(name) 
{
	var layer = GetLayer(name);
	if(isNS4)							layer.visibility="show";
	else if(isIE4 || isIE5 || isNS6)	layer.style.visibility="visible";
}

function MoveLayer(name, x, y)
{
	var layer = GetLayer(name);
	if(isNS4)							layer.moveTo(x, y);
	else if(isIE4 || isIE5 || isNS6)
	{
		layer.style.left= x;
		layer.style.top=y;
	}
}


function MoveLayer2(layer,x, y)
{
	if(isNS4)							layer.moveTo(x, y);
	else if(isIE4 || isIE5 || isNS6)
	{
		layer.style.left= x;
		layer.style.top=y;
	}
}

function ClipLayer(name, clipleft, cliptop, clipright, clipbottom)
{
	var layer = GetLayer(name);
	if(isNS4)
	{
		layer.clip.left   = clipleft;
		layer.clip.top    = cliptop;
		layer.clip.right  = clipright;
		layer.clip.bottom = clipbottom;
	}
	else if(isIE4 || isIE5 || isNS6) return(layer.style.clip = 'rect(' + cliptop + ' ' +  clipright + ' ' + clipbottom + ' ' + clipleft +')');
}

function SetLayerBgColor(name,bgcolor)
{
	var layer=GetLayer(name);
	if(isNS4)							layer.bgColor=bgcolor;
	else if(isIE4 || isIE5 || isNS6)	layer.style.backgroundColor=bgcolor;
	return true;
}

function ReplaceLayerContent(name, content)
{
	var layer = GetLayer(name);
	if(isNS4)
	{
		layer.document.open();
		layer.document.write(content);
		layer.document.close();
	}
	else if(isIE4 || isIE5 || isNS6) layer.innerHTML=content;
}

function GetLayerRelativeLeft(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.pageX);
	else if(isIE4 || isIE5 || isNS6)	return(layer.offsetLeft);
	return(null);
}

function GetLayerRelativeTop(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.pageY);
	else if(isIE4 || isIE5 || isNS6)	return(layer.offsetTop);
	return(null);
}

function GetLayerAbsoluteLeft(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.left);
	else if(isIE4 || isIE5 || isNS6)	return(layer.style.left.replace("px","")*1);
	return(null);
}

function GetLayerAbsoluteTop(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.top);
	else if(isIE4 || isIE5 || isNS6)	return(layer.style.top.replace("px","")*1);
	return(null);
}

function GetLayerRight(name)
{
	return(GetLayerAbsoluteLeft(name)*1 + GetLayerWidth(name)*1);
}
function GetLayerBottom(name) 
{
	return(GetLayerAbsoluteTop(name)*1 + GetLayerHeight(name)*1);
}

function SetLayerWidth(name,width)
{
	var layer = GetLayer(name);
	if(isNS4)							layer.width=width;
	else if(isIE4 || isIE5 || isNS6)	layer.style.width=width;
}

function SetLayerHeight(name,height)
{
	var layer = GetLayer(name);
	if(isNS4)							layer.height=height;
	else if(isIE4 || isIE5 || isNS6)	layer.style.height=height;
}

function GetLayerWidth(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.width);
	else if(isIE4 || isIE5 || isNS6)	return((layer.style.width.replace("px",""))*1);
    return(null)
}

function GetLayerHeight(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.height);
	else if(isIE4 || isIE5 || isNS6)	return((layer.style.height.replace("px",""))*1);
	return(null);
}

function GetLayerClipValues(str) 
{
	var clip = new Array();
	var i;
	i = str.indexOf("(");
	clip[0] = parseInt(str.substring(i + 1, str.length), 10);
	i = str.indexOf(" ", i + 1);
	clip[1] = parseInt(str.substring(i + 1, str.length), 10);
	i = str.indexOf(" ", i + 1);
	clip[2] = parseInt(str.substring(i + 1, str.length), 10);
	i = str.indexOf(" ", i + 1);
	clip[3] = parseInt(str.substring(i + 1, str.length), 10);
	return(clip);
}

function GetLayerClipLeft(name) 
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.clip.left);
	else if(isIE4 || isIE5 || isNS6)
	{
		var str=layer.style.clip;
		if(!str) return(0);
		var clip=GetLayerClipValues(layer.style.clip);
		return(clip[3]);
	}
	return(null);
}

function GetLayerClipTop(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.clip.top);
	else if(isIE4 || isIE5 || isNS6)
	{
		var str=layer.style.clip;
		if(!str)	return(0);
		var clip = GetLayerClipValues(layer.style.clip);
		return(clip[0]);
	}
	return(null);
}

function GetLayerClipRight(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.clip.right);
	else if(isIE4 || isIE5 || isNS6)
	{
		var str=layer.style.clip;
		if(!str) return(layer.style.pixelWidth);
		var clip = GetLayerClipValues(layer.style.clip);
		return(clip[1]);
	}
	return(null);
}

function GetLayerClipBottom(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.clip.bottom);
	else if(isIE4 || isIE5 || isNS6)
	{
		var str=layer.style.clip;
		if(!str) return(layer.style.pixelHeight);
		var clip = GetLayerClipValues(layer.style.clip);
		return(clip[2]);
	}
	return(null);
}

function GetLayerClipWidth(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.clip.width);
	else if(isIE4 || isIE5 || isNS6)
	{
		var str=layer.style.clip;
		if(!str) return(layer.style.pixelWidth);
		var clip = GetLayerClipValues(layer.style.clip);
		return(clip[1] - clip[3]);
	}
	return(null);
}

function GetLayerClipHeight(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.clip.height);
	else if(isIE4 || isIE5 || isNS6)
	{
		var str=layer.style.clip;
		if (str)	return(layer.style.pixelHeight);
		var clip = GetLayerClipValues(layer.style.clip);
		return(clip[2] - clip[0]);
	}
	return(null);
}

function SetLayerZIndex(name,zIndex)
{
	var layer = GetLayer(name);
	if(isNS4)							layer.zIndex=zIndex;
	else if(isIE4 || isIE5 || isNS6)	layer.style.zIndex=zIndex;
	return(null);
}

function GetLayerZIndex(name)
{
	var layer = GetLayer(name);
	if(isNS4)							return(layer.zIndex);
	else if(isIE4 || isIE5 || isNS6)	return(layer.style.zIndex);
	return(null);
}

function GetLayerZIndex(name, z)
{
	var layer = GetLayer(name);
	if(isNS4)							layer.zIndex = z;
	else if(isIE4 || isIE5 || isNS6)	layer.style.zIndex = z;
}

function SetTrBgColor(tr, bgcolor)
{
    if (typeof(tr.style) == 'undefined' || typeof(tr.cells) == 'undefined') return false;
    var n_cells=tr.cells.length;
    for(var i=0; i<n_cells; i++) tr.cells[i].bgColor = bgcolor;
    return true;
}

function SetTdBgColor(td, bgcolor)
{
    if (typeof(td.style) == 'undefined') return false;
    td.bgColor=bgcolor;
    return true;
}


