function addEvent( obj, type, fn ) {
  if ( obj.attachEvent ) {
    obj['e'+type+fn] = fn;
    obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
    obj.attachEvent( 'on'+type, obj[type+fn] );
  } else
    obj.addEventListener( type, fn, false );
}
function removeEvent( obj, type, fn ) {
  if ( obj.detachEvent ) {
    obj.detachEvent( 'on'+type, obj[type+fn] );
    obj[type+fn] = null;
  } else
    obj.removeEventListener( type, fn, false );
}

var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init()
addEvent(window,'resize',SetPageFrame);
addEvent(window,'laod',SetPageFrame);


function SetPageFrame()
{	 
		document.getElementById("frPageMain").style.width = GetDocWidth() + "px"
		document.getElementById("frPageMain").style.height= GetDocHeight()- GetElemHeight("Testata") - 32 +"px"
}


function GetDocWidth()
{
        var x = 0;
        if (self.innerHeight)
        {
                x = self.innerWidth;
        }
        else if (document.documentElement && document.documentElement.clientHeight)
        {
                x = document.documentElement.clientWidth;
        }
        else if (document.body)
        {
                x = document.body.clientWidth;
        }
        return x;
}


function GetDocWidthParent()
{
        var x = 0;
        if (parent.self.innerHeight)
        {
                x = parent.self.innerWidth;
        }
        else if (parent.document.documentElement && parent.document.documentElement.clientHeight)
        {
                x = parent.document.documentElement.clientWidth;
        }
        else if (parent.document.body)
        {
                x = parent.document.body.clientWidth;
        }
        return x;
}
 
function GetDocHeight()
{
        var y = 0;
        if (self.innerHeight)
        {
                y = self.innerHeight;
        }
        else if (document.documentElement && document.documentElement.clientHeight)
        {
                y = document.documentElement.clientHeight;
        }
        else if (document.body)
        {
                y = document.body.clientHeight;
        }
        return y;
}

function GetDocHeightParent()
{
        var y = 0;
        if (parent.self.innerHeight)
        {
                y = parent.self.innerHeight;
        }
        else if (parent.document.documentElement && parent.document.documentElement.clientHeight)
        {
                y = parent.document.documentElement.clientHeight;
        }
        else if (parent.document.body)
        {
                y = parent.document.body.clientHeight;
        }
        return y;
}


function GetElemHeight(ElemName){
	var Elem=document.getElementById(ElemName)
	if (Elem){
		//alert('e1'+Elem.offsetHeight)
	return Elem.offsetHeight
	
	}
	else{
		//alert('e1')
		return 0
	}
}
function GetElemHeightByObj(Elem){
	if (Elem){
		//alert('e1'+Elem.offsetHeight)
	return Elem.offsetHeight
	
	}
	else{
		//alert('e1')
		return 0
	}
}

function GetElemWidth(ElemName){
	var Elem=document.getElementById(ElemName)
	if (Elem){
		return Elem.offsetWidth
	}
	else{
		return 0
	}
}

function GetElemWidthByObj(Elem){
	if (Elem){
		return Elem.offsetWidth
	}
	else{
		return 0
	}
}

function GetElements(Obj,TagName,id){
						var elems=Obj.getElementsByTagName(String(TagName).toUpperCase())
						var ArrObj= new Array(); 
						for (var k=0 ;k< elems.length;k++){
						    var idObj=String(elems[k].id)
							if (idObj.toLowerCase()==String(id).toLowerCase()){
								   var Idx=ArrObj.length
								    ArrObj[Idx]=elems[k]						 								 
							}
							
						}
						//alert("ArrObj.length"+ArrObj.length)
						if (ArrObj.length > 0){
							if (ArrObj.length > 1){
								 return  ArrObj
							}
							else{
								 return  ArrObj[0]
							}							
						}
					   
	}

function addEvent( obj, type, fn ) {
  if ( obj.attachEvent ) {
    obj['e'+type+fn] = fn;
    obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
    obj.attachEvent( 'on'+type, obj[type+fn] );
  } else
    obj.addEventListener( type, fn, false );
}
function removeEvent( obj, type, fn ) {
  if ( obj.detachEvent ) {
    obj.detachEvent( 'on'+type, obj[type+fn] );
    obj[type+fn] = null;
  } else
    obj.removeEventListener( type, fn, false );
}