var ie4 = false
var ie5 = false
var ie55 = false
var ie6 = false
var nn4 = false
var nn6 = false
var opr5 = false
var opr6 = false
var oldn = false
var mac = false
var ie = false
var nn = false
var opr = false
var rech = 'msie'
var lngch = 3


if(navigator.appName.toLowerCase().indexOf('netscape') != -1)
{
	nn = true
	if(parseInt(navigator.appVersion.charAt(0)) >= 4)
	{
		nn4 = true
	}
	if(parseInt(navigator.appVersion.charAt(0)) >= 5)
	{
		nn6 = true
	}
}

if(!document.all && document.getElementById)
{
	nn6 = true
}

if(navigator.appName.toLowerCase().indexOf('microsoft') != -1)
{
	ie = true
	if(parseInt(navigator.appVersion.charAt(0)) >= 4)
	{
		ie4 = true
	}
	fpos = navigator.appVersion.toLowerCase().indexOf(rech)+rech.length+1
	fsub = navigator.appVersion.substring(fpos,fpos+lngch)
	if(parseFloat(fsub) >= 5.0)
	{
		ie5 = true
	}
	if(parseFloat(fsub) >= 5.5)
	{
		ie55 = true
	}
	if(parseFloat(fsub) >= 6.0)
	{
		ie6 = true
	}
}

if(navigator.appName.toLowerCase().indexOf('opera') != -1)
{
	opr = true
	if(parseInt(navigator.appVersion.charAt(0)) >= 5)
	{
		opr5 = true
	}
	if(parseInt(navigator.appVersion.charAt(0)) >= 6)
	{
		opr6 = true
	}
}

if(navigator.appName.toLowerCase().indexOf('microsoft') == -1 && navigator.appName.toLowerCase().indexOf('netscape') == -1)
{
	oldn = true
}

if(navigator.appVersion.toLowerCase().indexOf('macintosh') != -1)
{
	mac = true
}

//-----------------------------------------------------------------

var addr

function alobj(nom,chem,sty)
{
	if(arguments[3] == 'top' || arguments[3] == 'parent')
	{
		prf = 'window.'+arguments[3]+'.'
	}
	else
	{
		prf = ''
	}
	var pprt = ''
	var sprt = ''

	if(nn6 || ie5)
	{
		pprt = 'getElementById("'
		if(sty != 0)
		{
			sprt = '").style'
		}
		else
		{
			sprt = '")'
		}
		chem = ""
	}
	if(ie4 && !ie5)
	{
		pprt = 'all["'
		if(sty != 0)
		{
			sprt = '"].style'
		}
		else
		{
			sprt = '"]'
		}
		chem = ""
	}
	if(nn4 && !nn6) prf = ''
	if(typeof nom == "string")
	{
		addr = eval(prf+chem+"document."+pprt+nom+sprt)
		return addr
	}
}


//-----------------------------------------------------------------

var unit = 'px'

function pempl()
{
	if(nn4 && !nn6)
	{
		pcv = arguments[0].pageY
		pch = arguments[0].pageX
		return
	}
	if(nn6)
	{
		rdecaldoc()
		if(rdecalpv==0)
		{
			pcv = arguments[0].clientY
		}
		else
		{
			pcv = arguments[0].clientY+rdecalpv
		}
		if(rdecalph==0)
		{
			pch = arguments[0].clientX
		}
		else
		{
			pch = arguments[0].clientX+rdecalph
		}
		return
	}
	if(ie4)
	{
		rdecaldoc()
		if(rdecalpv==0)
		{
			pcv = window.event.clientY
		}
		else
		{
			pcv = window.event.clientY+rdecalpv
		}
		if(rdecalph==0)
		{
			pch = window.event.clientX
		}
		else
		{
			pch = window.event.clientX+rdecalph
		}
		return
	}
}

function revtg()
{
	if(nn4)
	{
		objtg = arguments[0].target
		if(nn6)
		{
			if(objtg.nodeName.toLowerCase() == '#text') objtg = getParent(objtg)
		}
	}
	if(ie4)
	{
		objtg = window.event.srcElement
	}
	return objtg
}

function getParent(thisObject)
{
	var thisParent
	var testObject

	if((typeof thisObject).toLowerCase() == 'string') testObject = alobj(thisObject,'',0)
	else testObject = thisObject

	if(ie4)
	{
		thisParent = testObject.parentElement
	}
	else if(nn6)
	{
		thisParent = testObject.parentNode
	}

	return thisParent
}

function addevt(nom,tpevt,fact)
{
	wevobj = alobj(nom,'',0)
	if(ie4)
	{
		wevobj.attachEvent(tpevt,fact)
	}
	if(nn6)
	{
		wevobj.addEventTListener(tpevt,fact,true)
	}
}

function getIframeDoc(nom)
{
	if(arguments[1])
	{
		objifr = alobj(nom,'',0,arguments[1])
	}
	else
	{
		objifr = alobj(nom,'',0)
	}
	if(ie55)
	{
		docifr = objifr.contentWindow.document
	}
	if(nn6)
	{
		docifr = objifr.contentDocument
	}
	return docifr
}

function getIframeWin(nom)
{
	if(arguments[1])
	{
		objifr = alobj(nom,'',0,arguments[1])
	}
	else
	{
		objifr = alobj(nom,'',0)
	}
	if(ie55)
	{
		winifr = objifr.contentWindow
	}
	if(nn6)
	{
		winifr = objifr.contentDocument.defaultView
	}
	return winifr
}

function rdecaldoc()
{
	if(ie4)
	{
		rdecalph = document.body.scrollLeft
		rdecalpv = document.body.scrollTop
		return
	}
	if(nn4)
	{
		rdecalph = window.pageXOffset
		rdecalpv = window.pageYOffset
		return
	}
}

function wdecaldoc(dlft,dtp)
{
	if(arguments[2] == 'top' || arguments[2] == 'parent')
	{
		prf = 'window.'+arguments[2]+'.'
	}
	else
	{
		prf = 'window.'
	}
	if(ie4)
	{
		eval(prf+'document.body.scrollLeft = '+dlft)
		eval(prf+'document.body.scrollTop = '+dtp)
	}
	if(nn4)
	{
		eval(prf+'scrollTo('+dlft+','+dtp+')')
	}
}

//------------------------------------------------------------------

function wtail(nom,chem,wobjh,wobjv)
{
	wtlobj = alobj(nom,chem,1)
	if(ie4 || nn6)
	{
		wtlobj.width = wobjh+unit
		wtlobj.height = wobjv+unit
	}
	if(nn4 && !nn6)
	{
		wtlobj.resizeTo(wobjh,wobjv)
	}
}

function rtail(nom,chem)
{
	rtlobj = alobj(nom,chem,0)
	if(ie4)
	{
		robjh = rtlobj.offsetWidth
		robjv = rtlobj.offsetHeight
		return
	}
	if(nn4 && !nn6)
	{
		robjh = rtlobj.document.width
		robjv = rtlobj.document.height
		return
	}
	if(nn6)
	{
		dh = document.defaultView.getComputedStyle(document.getElementById(nom),null).getPropertyValue('width')
		dv = document.defaultView.getComputedStyle(document.getElementById(nom),null).getPropertyValue('height')
		robjh = parseInt(dh)
		robjv = parseInt(dv)
		return
	}

}

//-----------------------------------------------------------------------

function wempl(nom,chem,wch,wcv)
{
	wemobj = alobj(nom,chem,1)
	if(nn4 && !nn6)
	{
		wemobj.top = wcv
		wemobj.left = wch
	}
	if(ie4)
	{
		wemobj.pixelTop = wcv
		wemobj.pixelLeft = wch
	}
	if(nn6)
	{
		wemobj.top = wcv+unit
		wemobj.left = wch+unit
	}
}

function rempl(nom,chem)
{
	remobj = alobj(nom,chem,1)
	if(nn4 && !nn6)
	{
		rcv = remobj.top 
		rch = remobj.left
		return
	}
	if(ie4)
	{
		rcv = remobj.pixelTop
		rch = remobj.pixelLeft
		return
	}
	if(nn6)
	{
		dh = document.defaultView.getComputedStyle(document.getElementById(nom),null).getPropertyValue('left')
		dv = document.defaultView.getComputedStyle(document.getElementById(nom),null).getPropertyValue('top')
		rch = parseInt(dh)
		rcv = parseInt(dv)
		return
	}
}

function getPosWin()
{
	if(arguments[0])
	{
		objWin = arguments[0]
	}
	else
	{
		objWin = 'window'
	}
	refObj = typeof objWin
	
	if(ie4)
	{
		if(refObj.toLowerCase() == 'string')
		{
			xPosWin = eval(objWin+'.screenLeft')
			yPosWin = eval(objWin+'.screenTop')
		}
		else
		{
			xPosWin = objWin.screenLeft
			yPosWin = objWin.screenTop
		}
	}
	if(nn4)
	{
		if(refObj.toLowerCase() == 'string')
		{
			xPosWin = eval(objWin+'.screenX')
			yPosWin = eval(objWin+'.screenY')
		}
		else
		{
			xPosWin = objWin.screenX
			yPosWin = objWin.screenY
		}
	}
	return
}

//------------------------------------------------------------------------------

function wmontr(nom,chem,tst)
{
	var vue = ""
	var cach = ""
	if (nn4 && !nn6)
	{
		vue = "show"
		cach = "hide"
	}
	else
	{
		vue = "visible"
		cach = "hidden"
	}
	wmtobj = alobj(nom,chem,1)
	if (tst == 0)
	{
		wmtobj.visibility = cach
	}
	else
	{
		wmtobj.visibility = vue
	}
}

function rmontr(nom,chem)
{
	rmtobj = alobj(nom,chem,1)
	rvsb = rmtobj.visibility
	return rvsb
}

function wdisp(nom,chem,tp)
{
	if(ie4 || nn6)
	{
		wdsobj = alobj(nom,'',1)
		switch(tp)
		{
			case 0:
				vds = 'none'
				break
			case 1:
				vds = 'block'
				break
			default:
				vds = 'block'
		}
		wdsobj.display = vds
	}
}

function rdisp(nom,chem)
{
	if(ie4 || nn6)
	{
		rdsobj = alobj(nom,chem,1)
		rdsp = rdsobj.display
		return rdsp
	}
}

//---------------------------------------------------------------------------------

function rdfen()
{
	if(arguments[0] == 'top' || arguments[0] == 'parent')
	{
		prf = 'window.'+arguments[0]+'.'
	}
	else
	{
		prf = 'window.'
	}
	if(ie4)
	{
		dimfh = eval(prf+'document.body.offsetWidth')
		dimfv = eval(prf+'document.body.offsetHeight')
		return
	}
	if(nn4)
	{
		dimfh = eval(prf+'innerWidth')
		dimfv = eval(prf+'innerHeight')
		return
	}
}

function rdfscroll()
{
	if(arguments[0] == 'top' || arguments[0] == 'parent')
	{
		prf = 'window.'+arguments[0]+'.'
	}
	else
	{
		prf = 'window.'
	}
	if(ie4)
	{
		dfh = eval(prf+'document.body.clientWidth')
		dfv = eval(prf+'document.body.clientHeight')
		return
	}
	if(nn4)
	{
		dfh = eval(prf+'innerWidth')
		dfv = eval(prf+'innerHeight')
		return
	}
}


//-----------------------------------------------------------------

function setClip(elemId)
{
	var clipObject = alobj(elemId,'',1)

	if(arguments.length > 1)
	{
		var rectVal = ''

		for(i=1; i<5; i++)
		{
			if(!isNaN(arguments[i]))
			{
				rectVal += arguments[i]+unit
			}
			else if(arguments[i].toLowerCase() == 'auto')
			{
				rectVal += arguments[i].toLowerCase()
			}
			else
			{
				rectVal += 'auto'
			}
			if(i != 4) rectVal += ' '
		}

	}
	else
	{
		rectVal = 'auto auto auto auto'
	}

	clipObject.clip = 'rect('+rectVal+')'
}

