// free to use as long as this copyright notice stays intact
// copyright 2001 Jeff Rouyer and Eddie Traversa
// eddies site http://dhtmlnirvana.com/
// jeff's site http://www.htmlguru.com/ 

function Is() {
  agent       = navigator.userAgent.toLowerCase();
  this.major  = parseInt(navigator.appVersion);
  this.minor  = parseFloat(navigator.appVersion);

  this.ns     = ((agent.indexOf('mozilla')    != -1) &&
                 (agent.indexOf('spoofer')    == -1) &&
                 (agent.indexOf('compatible') == -1) &&
                 (agent.indexOf('opera')      == -1) &&
                 (agent.indexOf('webtv')      == -1) &&
                 (agent.indexOf('hotjava')    == -1) &&
                 (agent.indexOf('msie 7.')	  == -1))

  this.ns4    = (this.ns && (this.major      ==  4) && (agent.indexOf('msie 7.') == -1));
  this.ns6    = (this.ns && (this.major      >=  5));

  this.ie     = ((agent.indexOf("msie")      != -1) &&
                 (agent.indexOf("opera")     == -1));

  this.ie4    = (this.ie && (this.major      ==  4) &&
                (agent.indexOf("msie 4")     != -1));

  this.ie5    = (this.ie && (this.major      ==  4) &&
                (agent.indexOf("msie 5.")    != -1) &&
                (agent.indexOf("msie 5.5")   == -1) &&
                (agent.indexOf("mac")        == -1));

  this.iem5   = (this.ie && (this.major      ==  4) &&
                (agent.indexOf("msie 5.")    != -1) &&
                (agent.indexOf("mac")        != -1));

  this.ie55   = (this.ie && (this.major      ==  4) &&
                (agent.indexOf("msie 5.5")   != -1));

  this.ie6    = (this.ie && (this.major      ==  4) &&
                (agent.indexOf("msie 6.")    != -1));

  this.ie7	  = (agent.indexOf("msie 7.")  != -1 || agent.indexOf("msie 8.") != 1);

  this.nsdom  = (this.ns4  || this.ns6);
  this.ie5dom = (this.ie5  || this.iem5   || this.ie55);
  this.iedom  = (this.ie4  || this.ie5dom || this.ie6 || this.ie7);
  this.w3dom  = (this.ns6  || this.iem5
                           || this.ie55
                           || this.ie6
                           || this.ie7);
/*                           
	var str = "";
	str += "agent = " + agent + "\n";
	str += "this.major = " + this.major + "\n";
	str += "this.minor = " + this.minor + "\n";
	str += "this.ns = " + this.ns + "\n";
	str += "this.ns4 = " + this.ns4 + "\n";
	str += "this.ns6 = " + this.ns6 + "\n";
	str += "this.ie4 = " + this.ie4 + "\n";
	str += "this.ie5 = " + this.ie5 + "\n";
	str += "this.iem5 = " + this.iem5 + "\n";
	str += "this.ie55 = " + this.ie55 + "\n";
	str += "this.ie6 = " + this.ie6 + "\n";
	str += "this.nsdom = " + this.nsdom + "\n";
	str += "this.ie5dom = " + this.ie5dom + "\n";
	str += "this.iedom = " + this.iedom + "\n";
	str += "this.w3dom = " + this.w3dom + "\n";
	alert(str);
*/	
}

var is = new Is();

function getMyHeight()
{
	var h = 1000;
	if (is.iem5)
	{
		h = 1000;
	}
	else if (is.iedom)
	{
		h = document.body.scrollHeight;
	}
	else if (is.nsdom)
	{
		h = document.body.offsetHeight;
	}

	return h;
	//var str = "document.body.scrollHeight = " + document.body.scrollHeight;
	//str+= "\ndocument.body.offsetHeight = " + document.body.offsetHeight;
	//str+= "\nwindow.innerHeight = " + window.innerHeight;
}

function setFrameHeight(height)
{
	setLayerHeight(getLayer("THE_LAYER"), height);
}

function getLayer(id) 
{
	if(is.ns4) 
	{
		this.obj             = document[id];
	} 
	else if(is.ie4 || is.ie5)
	{
		this.obj             = document.all[id].style;
	} 
	else if(is.w3dom)
	{
		this.obj             = document.getElementById(id).style;
	}

	return this.obj;
}

function setLayerHeight(obj,height) 
{
	if(is.ns4) 
	{
		obj.clip.bottom = height;
	} 
	else 
	{
		obj.height      = (is.w3dom) ? height + "px" : height;
	}
}




