var bw = new checkBrowser();


function openNewWindow( url, winName, features )
{
	window.open( url, winName, features );
}

function checkBrowser()
{
	this.ver		= navigator.appVersion;
	this.agent		= navigator.userAgent;
	this.dom		= document.getElementById ? 1 : 0;
	this.opera5		= this.agent.indexOf( "Opera 5" ) > -1;
	this.ie5		= ( this.ver.indexOf( "MSIE 5" ) > -1 && this.dom && ! this.opera5 ) ? 1 : 0;
	this.ie6		= ( this.ver.indexOf( "MSIE 6" ) > -1 && this.dom && ! this.opera5 ) ? 1 : 0;
	this.ie7		= ( this.ver.indexOf( "MSIE 7" ) > -1 && this.dom && ! this.opera5 ) ? 1 : 0;
	this.ie8		= ( this.ver.indexOf( "MSIE 8" ) > -1 && this.dom && ! this.opera5 ) ? 1 : 0;
	this.ie4		= ( document.all && ! this.dom && ! this.opera5 ) ? 1 : 0;
	this.ie			= this.ie4 || this.ie5 || this.ie6 || this.ie7 || this.ie8;
	this.mac		= this.agent.indexOf( "Mac" ) > -1;
	this.ns6		= ( this.dom && parseInt( this.ver ) >= 5 ) ? 1 : 0;
	this.ns4		= ( document.layers && ! this.dom ) ? 1 : 0;
	this.bw			= ( this.ie8 || this.ie7 || this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5 );

	return this;
}

function lib_message( message )
{
	alert( message );
	return false;
}

function lib_obj( obj, nest )
{
	if ( ! bw.bw )
		return lib_message( 'Old browser' );

	nest = ( ! nest ) ? "" : 'document.' + nest + '.';

	this.evnt = bw.dom ? document.getElementById( obj ) :
		bw.ie4 ? document.all[obj] :
		bw.ns4 ? eval( nest + "document.layers." + obj ) :
		0;

	if ( ! this.evnt )
		return lib_message( 'The layer does not exist (' + obj + ')' + '- \nIf your using Netscape please check the nesting of your tags!' );

	this.css	= bw.dom || bw.ie4 ? this.evnt.style : this.evnt;
	this.ref	= bw.dom || bw.ie4 ? document : this.css.document;
	this.x		= parseInt( this.css.left ) || this.css.pixelLeft || this.evnt.offsetLeft || 0;
	this.y		= parseInt( this.css.top ) || this.css.pixelTop || this.evnt.offsetTop || 0;
	this.w		= this.evnt.offsetWidth || this.css.clip.width || this.ref.width || this.css.pixelWidth || 0;
	this.h		= this.evnt.offsetHeight || this.css.clip.height || this.ref.height || this.css.pixelHeight || 0;
	this.c		= 0;	// Clip values.

	if ( ( bw.dom || bw.ie4 ) && this.css.clip )
	{
		this.c	= this.css.clip;
		this.c	= this.c.slice( 5, this.c.length -1 );
		this.c	= this.c.split( ' ' );

		for ( var i = 0; i < 4; i++ )
			this.c[i] = parseInt( this.c[i] );
	}

	this.ct		= this.css.clip.top || this.c[0] || 0;
	this.cr		= this.css.clip.right || this.c[1] || this.w || 0;
	this.cb		= this.css.clip.bottom || this.c[2] || this.h || 0;
	this.cl		= this.css.clip.left || this.c[3] || 0;
	this.obj	= obj + "Object";

	eval( this.obj + "=this" );
	return this;
}

lib_obj.prototype.moveIt = function( x, y )
{
  this.x		= x;
  this.y		= y;
  this.css.left	= x;
  this.css.top	= y;
}

lib_obj.prototype.showIt = function() {
	this.css.visibility = "visible";
}

lib_obj.prototype.hideIt = function() {
	this.css.visibility = "hidden";
}

function lib_doc_size()
{
	//alert( document.body.offsetWidth );
	this.x		= 0;
	this.x2		= bw.ie && document.body.offsetWidth +262 || innerWidth || 0;
	this.y		= 0;
	this.y2		= bw.ie && document.body.offsetHeight -5 || innerHeight || 0;

	if ( ! this.x2 || ! this.y2 )
		return message( 'Document has no width or height' );

	this.x50	= this.x2 / 2;
	this.y50	= this.y2 / 2;

	return this;
}

function positionBackToTop()
{
	if ( footerPosition == 0 )
		return;

	backtotopobj	= new lib_obj( "nachoben" );
	page			= new lib_doc_size();

	if ( bw.ns4 || bw.ns6 )
	{
		scrollOffset		= pageYOffset;
		scrollOffsetLeft	= pageXOffset -133;
	}
	else
	{
		scrollOffset		= document.body.scrollTop;
		scrollOffsetLeft	= document.body.scrollLeft;
	}

//	backtotopobj.moveIt( page.x50 - scrollOffsetLeft, page.y2 - 70 + scrollOffset );
	backtotopobj.moveIt( footerPosition, page.y2 - 70 + scrollOffset );

	if ( scrollOffset > 50 )
		backtotopobj.showIt();
	else
		backtotopobj.hideIt();

	window.setTimeout( "positionBackToTop()", 10 );
}

function ElementWithLink( o, e, url, name, opt )
{
	if ( document.getElementById )
	{
		a	= o.id.substring( 1 );
		p	= "";
		r	= "";
		g	= e.target;

		if ( g )
		{
			t = g.id;
			f = g.parentNode;

			if ( f )
			{
				p = f.id;
				h = f.parentNode;

				if ( h ) r = h.id;
			}
		}
		else
		{
			h = e.srcElement;
			f = h.parentNode;

			if ( f ) p = f.id;

			t = h.id;
		}

		if ( t == a || p == a || r == a )
			return true;

		if ( url )
			window.open( url, name, opt );
		else
		{
			if ( document.getElementById( a ).getAttribute( 'target' ) == '_blank' )
				window.open( document.getElementById( a ).href );
			else if ( document.getElementById( a ).getAttribute( 'onclick' ) != '' && typeof (openWin = document.getElementById( a ).onclick) == "function" )
				openWin();
			else
				top.location.href = document.getElementById( a ).href;
		}
	}// end: if
}// end: function




function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function call_preload() {
  MM_preloadImages('/files/sysimages/klammer_auf.gif','/files/sysimages/klammer_zu.gif')
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
