//-----------------------------------------------------------------------------
// Allgemeines Objekt
//-----------------------------------------------------------------------------

	function getObjByID(whichID)
	{
		if(document.getElementById)
		{
			// this is the way the standards work
			var obj = document.getElementById(whichID);
		}
		else if(document.all)
		{
			// this is the way old msie versions work
			var obj = document.all[whichID];
		}
		else if(document.layers)
		{
			// this is the way nn4 works
			var obj = document.layers[whichID];
		}
		return obj;
	}

//-----------------------------------------------------------------------------
// Formular-Funktionen
//-----------------------------------------------------------------------------

	function fieldHilite(fldID)
	{
		if(obj = getObjByID(fldID))
		{
			obj.style.backgroundColor = '#FEEEC4';
		}
	}

	function fieldNoHilite(fldID)
	{
		if(obj = getObjByID(fldID))
		{
			obj.style.backgroundColor = '';
		}
	}

	function fieldFocus(fldID)
	{
		if(obj = getObjByID(fldID))
		{
			obj.focus();
		}
	}

	function setHilite(fldID)
	{
		if(obj = getObjByID(fldID))
		{
			obj.style.borderColor = '#FF0000';
		}
	}
	
	function setCheckIcon(fldID,icon,text)
	{
		if(img = document.images['icon_'+fldID])
		{
			img.src = '/img/require_' + icon + '.gif';
			img.alt = text;
		}
	}

	function trim(str) 
	{
		return str.replace(/^\s+/,'').replace(/\s+$/,'');
	}

	function testInput(field,checkType,iconId,defaultIcon)
	{
		if(field.type == 'checkbox')
		{
			value = (field.checked) ? 1 : '';
		}
		else
		{
			value = trim(field.value);
			if(value != field.value) field.value = value;	// Kann nur bei Textfeldern passieren
		}
		
		ok = false;
		
		switch(checkType)
		{
			case 'isset':
				if(value != '') ok = true;
				break;
			case 'email':
				if(is_email(value)) ok = true;
				break;
			case 'plz5ort':
				if(is_plzort(value, 5)) ok = true;
				break;
			case 'plz4ort':
				if(is_plzort(value, 4)) ok = true;
				break;
			case 'numeric_null':
				if(value != '')
				{	
					if(is_numeric(value))
					{ ok = true;
					} 
					else 
					{ defaultIcon = 'must';
					}
				}
				break;
		}
		
		if(ok) 
		{ img = '/img/require_ok.gif';
		}
		else
		{ img = '/img/require_' + defaultIcon + '.gif';
		}
		document.images[iconId].src = img;
	}

	function is_email(s)
	{
		var regex = false;
		var res = false;
		
		if(typeof(RegExp) == 'function')
		{ regex = true;
		}

		if(regex == true)
		{
			reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)' +
												'(\\@)([a-zA-Z0-9\\-\\.]+)' +
												'(\\.)([a-zA-Z]{2,4})$');
			res = (reg.test(s));
		}
		else
		{
			res = (s.search('@') >= 1 &&
							s.lastIndexOf('.') > s.search('@') &&
							s.lastIndexOf('.') >= s.length-5)
		}
		return(res);
	}

	function is_numeric(s)
	{
		var res = true;
		
		if(isNaN(s))
		{ res = false;
		}
		return(res);
	}
	
	function is_artikelnr(s)
	{
		reg = new RegExp('^([0-9\\-\\.\\s]+)$');
		
		if(reg.test(s))
		{ return true;
		}
		
		reg = new RegExp('^([0-9]{6,6})(\\-)([0-9a-zA-Z]{1,2})$');
		
		if(reg.test(s))
		{ return true;
		}
		
		return false;
	}

	function is_plzort(s,laenge)
	{
		var regex = false;
		var res = false;
		
		if(typeof(RegExp) == 'function')
		{ regex = true;
		}
		
		if(regex == true)
		{
			var reg = new RegExp('^[0-9]{' + laenge + '}\\s(.)+');
			res = (s.match(reg));
		}
		return(res);
	}
	
//-----------------------------------------------------------------------------
// allgemeine Funktionen
//-----------------------------------------------------------------------------

	function positionInfo(object) 
	{
		var p_elm = object;

		this.getElementLeft = getElementLeft;
		function getElementLeft() {
			var x = 0;
			var elm;
			if(typeof(p_elm) == "object"){
				elm = p_elm;
			} else {
				elm = document.getElementById(p_elm);
			}
			while (elm != null) {
				x+= elm.offsetLeft;
				elm = elm.offsetParent;
			}
			return parseInt(x);
		}

		this.getElementWidth = getElementWidth;
		function getElementWidth(){
			var elm;
			if(typeof(p_elm) == "object"){
				elm = p_elm;
			} else {
				elm = document.getElementById(p_elm);
			}
			return parseInt(elm.offsetWidth);
		}

		this.getElementRight = getElementRight;
		function getElementRight(){
			return getElementLeft(p_elm) + getElementWidth(p_elm);
		}

		this.getElementTop = getElementTop;
		function getElementTop() {
			var y = 0;
			var elm;
			if(typeof(p_elm) == "object"){
				elm = p_elm;
			} else {
				elm = document.getElementById(p_elm);
			}
			while (elm != null) {
				y+= elm.offsetTop;
				elm = elm.offsetParent;
			}
			return parseInt(y);
		}

		this.getElementHeight = getElementHeight;
		function getElementHeight(){
			var elm;
			if(typeof(p_elm) == "object"){
				elm = p_elm;
			} else {
				elm = document.getElementById(p_elm);
			}
			return parseInt(elm.offsetHeight);
		}

		this.getElementBottom = getElementBottom;
		function getElementBottom(){
			return getElementTop(p_elm) + getElementHeight(p_elm);
		}
	}


//-----------------------------------------------------------------------------
// DHTML-Funktionen
//-----------------------------------------------------------------------------

	function getElementsByClassName(className)
	{
		// Alle Elemente einer bestimmten Klasse ermitteln unabhängig vom Typ
		var allObj, retObj=new Array(), j=0;
		if (document.all)
		{
			allObj=document.all;
		}
		else if (document.getElementsByTagName && !document.all)
		{
			allObj=document.getElementsByTagName("*");
		}
		for (i=0; i<allObj.length; i++)
		{
			if(allObj[i].className==className)
			{
				retObj[j]=allObj[i];
				j++;
			}
		}
		return retObj;
	}

	// Listenspalte ausblenden
	function hideColumn(whichClass)
	{
		var obj = getElementsByClassName(whichClass);
		for (i=0; i<obj.length; i++)
		{
			obj[i].style.display="none";
		}
	}

	// Listenspalte einblenden (oder andere CSS-Klasse)
	function showColumn(whichClass)
	{
		var obj = getElementsByClassName(whichClass);
		for (i=0; i<obj.length; i++)
		{
			obj[i].style.display="block";
		}
	}

//---------------------------------------------------------------------------
// Top-Navigation ein- und ausblenden
//---------------------------------------------------------------------------

	// Navigation kann abgeschaltet werden z.B. bei Popups
	var isNavEnabled = true;
	
	// aktiver Menuepunkt
	var activeNav = 0;
	// timeout
	var t_nav;
	// aktive Grafik
	var activeNavImg = '';
	
	// aktiver Warenkorb
	var activeCart = '';
	// timeout
	var t_cart;

	function showNav(whichID)
	{
		// falls die Navigation abgeschaltet gleich hier beenden
		if(isNavEnabled == false) 
		{ return;
		}

		// timeout ggf. zuruecksetzen
		clearTimeout(t_nav);
		
		// wenn der Menuepunkt noch nicht eingeblendet ist
		if(activeNav != whichID)
		{
			// falls noch ein anderer Menuepunkt geoeffnet ist, diesen ausblenden
			if(activeNav > 0)
			{ 
				hideLayer('topnav'+activeNav);
				getObjByID('img'+activeNav).src = activeNavImg;
			}
			// falls noch der Warenkorb geoeffnet ist, diesen ausblenden
			else if(activeCart != '')
			{
				// timeout ggf. zuruecksetzen
				clearTimeout(t_cart);
		
				hideLayer(activeCart); 
				activeCart = '';
			}

			// aktuellen Menuepunkt merken 
			activeNav = whichID;
			// aktuelle Grafik
			activeNavImg = getObjByID('img'+activeNav).src;

			// Layer mit Zeitverzoegerung einblenden
			t_nav = setTimeout("showLayer('topnav'+activeNav); changeImage('img'+activeNav,'_off.gif','_on.gif');", 300);
		}
	}
	
	function hideNav()
	{
		// falls die Navigation abgeschaltet gleich hier beenden
		if(isNavEnabled == false) 
		{ return;
		}
		
		// timeout ggf. zuruecksetzen
		clearTimeout(t_nav);
		
		// Layer mit Zeitverzoegerung ausblenden
		t_nav = setTimeout("hideLayer('topnav'+activeNav); getObjByID('img'+activeNav).src = activeNavImg; activeNav = 0;", 1000);
	}
	
	function showCart(whichID)
	{
		// falls die Navigation abgeschaltet gleich hier beenden
		if(isNavEnabled == false) 
		{ return;
		}

		// timeout ggf. zuruecksetzen
		clearTimeout(t_cart);
		
		// wenn der Warenkorb noch nicht eingeblendet ist
		if(activeCart != whichID)
		{
			// falls noch ein Menuepunkt geoeffnet ist, diesen ausblenden
			if(activeNav > 0)
			{ 
				// timeout ggf. zuruecksetzen
				clearTimeout(t_nav);
		
				hideLayer('topnav'+activeNav);
				getObjByID('img'+activeNav).src = activeNavImg;
				activeNav = 0;
			}

			// Warenkorb Sichtbarkeit merken 
			activeCart = whichID;
			// Layer mit Zeitverzoegerung einblenden
			t_cart = setTimeout("showLayer(activeCart);", 300);
		}
	}
	
	function hideCart()
	{
		// falls die Navigation abgeschaltet gleich hier beenden
		if(isNavEnabled == false) 
		{ return;
		}
		
		// timeout ggf. zuruecksetzen
		clearTimeout(t_cart);
		
		// Layer mit Zeitverzoegerung ausblenden
		t_cart = setTimeout("hideLayer(activeCart); activeCart='';", 1000);
	}
	
//---------------------------------------------------------------------------
// ASN-Navigation ein- und ausblenden
//---------------------------------------------------------------------------

	function toggleAsnAttributes(wichID)
	{
		// Layer ein- und ausblenden
		toggleLayer(wichID); 
		// Das dazugehoerige Image wechseln
		toggleImage('img_'+wichID,'open','close');
	}

//---------------------------------------------------------------------------
// VorschauBild ein- und aublenden
//---------------------------------------------------------------------------

	function showPreviewImage(whichID, image)
	{
		e = window.event;
		
		var screen_X = 0;
		var screen_Y = 0;

		screen_X = (document.layers) ? e.pageX : e.clientX + document.body.scrollLeft;
		screen_Y = (document.layers) ? e.pageY : e.clientY + document.body.scrollTop;

		if(obj = getObjByID(whichID))
		{
			obj.firstChild.src = image;
			
			obj.style.top =  screen_Y;
			obj.style.left = screen_X;
			obj.style.display = 'block';
		}
	}
	
	function hidePreviewImage(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			obj.firstChild.src = '';
			obj.style.display = 'none';
		}
	}

//---------------------------------------------------------------------------
// Layer ein- und aublenden
//---------------------------------------------------------------------------

	function showLayer(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			obj.style.display = "inline";
		}
	}

	function showLayerBlock(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			obj.style.display = "block";
		}
	}

	function hideLayer(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			obj.style.display = "none";
		}
	}

	function visibleLayer(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			obj.style.visibility = "visible";
		}
	}

	function invisibleLayer(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			obj.style.visibility = "hidden";
		}
	}

	function toggleLayer(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			var st = obj.style.display;
			st2 = (st == "none" || st == "") ? "block" : "none";
			obj.style.display = st2;
		}
	}
	
	function toggleLayerTr(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			var st = obj.style.display;
			st2 = (st == 'none') ? '' : 'none';
			obj.style.display = st2;
		}
	}
	
	function showHideLayer(whichID)
	{
		if(obj = getObjByID(whichID))
		{
			var st = obj.style.display;
			st2 = (st == "hidden" || st == "") ? "visible" : "hidden";
			obj.style.display = st2;
		}
	}
	
	function toggleMultipleLayer(idPrefix,idFrom,idTo)
	{
		for(var i=idFrom; i<=idTo; i++)
		{
			toggleLayer(idPrefix + i);
		}
	}
	
	function toggleMultipleLayerTr(idPrefix,idFrom,idTo)
	{
		for(var i=idFrom; i<=idTo; i++)
		{
			toggleLayerTr(idPrefix + i);
		}
	}
	
	function toggleImage(whichID,img1,img2)
	{
		if(obj = getObjByID(whichID))
		{
			var src = obj.src;

			if(src.indexOf(img1) > 0)
			{ obj.src = src.replace(img1,img2);
			}
			else if(src.indexOf(img2) > 0)
			{ obj.src = src.replace(img2,img1);
			}
		}
	}
	
	function toggleText(whichID,text1,text2)
	{
		if(obj = getObjByID(whichID))
		{
			var html = obj.innerHTML;

			if(html.indexOf(text1) > -1)
			{ obj.innerHTML = html.replace(text1,text2);
			}
			else if(html.indexOf(text2) > -1)
			{ obj.innerHTML = html.replace(text2,text1);
			}
		}
	}
	
	function changeImage(whichID,imgFrom,imgTo)
	{
		if(obj = getObjByID(whichID))
		{
			var src = obj.src;

			if(src.indexOf(imgFrom) > 0)
			{ 
				obj.src = src.replace(imgFrom,imgTo);
			}
		}
	}
	
//---------------------------------------------------------------------------
// Image Slide Show
//---------------------------------------------------------------------------

	var slideRun = false;
	var current = 0;
	
	var slideObj;
	var slideParent;
	var slideImgDefault;
	
	var slideImgNames;
	var slideImgObjects = new Array();
	
	var slideImgNext;
	var slideTimeout;
	
	var slideDirection = 'down';
	
	function slideImageStart(obj,imageString)
	{
		slideObj = obj;
		slideParent = slideObj.parentNode;
		slideImgDefault = slideObj.src;
		
		slideImgNames = imageString.split('|');

		if(slideImgNames.length > 1)
		{
			slideRun = true;
			slideImgNext = slideImgNames[current];

			if(slideImgNext)
			{ slideTimeout = setTimeout(slideImage,300);
			}
		}
	}
	
	function slideImageStop()
	{
		slideRun = false;
		// timeout zuruecksetzen
		clearTimeout(slideTimeout);
		
		// Start Bild
		slideObj.src = slideImgDefault;
		
		slideObj.xOpacity = 100;
		updateOpacity(slideObj);
	}
	
	function slideImage()
	{
		if(!slideObj.xOpacity)
		{ slideObj.xOpacity = 100;
		}

		if(slideObj.xOpacity == 5 && slideDirection == 'down')
		{
			slideDirection = 'up';

			slideObj.src = slideImgNext;
			
			if(current++ == slideImgNames.length-1)
			{ current = 0;
			}
			slideImgNext = slideImgNames[current];
			
			if(slideRun == true)
			{ slideTimeout = setTimeout(slideImage,2);
			}
		}
		else if(slideObj.xOpacity == 100 && slideDirection == 'up')
		{ 
			slideDirection = 'down';

			if(slideRun == true)
			{ slideTimeout = setTimeout(slideImage,1500);
			}
		}
		else
		{
			if(slideDirection == 'down')
			{ slideObj.xOpacity -= 5;
			}
			else
			{ slideObj.xOpacity += 5;
			}
			updateOpacity(slideObj);
			
			if(slideRun == true)
			{ slideTimeout = setTimeout(slideImage,2);
			}
		}
	}
	
	function updateOpacity(obj)
	{
		obj.style.opacity = obj.xOpacity / 100;
		obj.style.MozOpacity = obj.xOpacity / 100;
		obj.style.filter = "alpha(opacity=" + (obj.xOpacity) + ")";
	}


//---------------------------------------------------------------------------

	function help(address)
	{
		window.open(address,'_blank','width=400,height=400,location=no,toolbars=no,status=no,scrollbars=auto');
	}

	function popup(address, w, h, name)
	{
		p = window.open(address, name, 'width='+w+',height='+h+',location=no,toolbars=no,resizable=yes,status=yes,scrollbars=yes');
		p.focus();
	}

	// Zoom = Popup ohne Scrollleisten, 450x450
	function zoom(address)
	{
		p = window.open(address, 'zoombild', 'width=450,height=450,location=no,toolbars=no,resizable=yes,status=no,scrollbars=no');
		p.focus();
	}

	function showTipp(e, whichID)
	{
		var screen_X = 0;
		var screen_Y = 0;
		relativeToMouse = false;

		if (relativeToMouse)
		{
			screen_X = (document.layers) ? e.pageX : e.clientX + document.body.scrollLeft;
			screen_Y = (document.layers) ? e.pageY : e.clientY + document.body.scrollTop;

			screen_X = screen_X + 30;
			screen_Y = screen_Y - 200;
		}
		else
		{
			screen_X = 360;
			screen_Y = 100;
		}

		if (obj = getObjByID(whichID))
		{
			// alert(e.pageX + ', ' + e.clientX + ', ' + obj.style.top + ' > ' + screen_X);
			obj.style.top =  screen_Y;
			obj.style.left = screen_X;
			obj.style.display = "block";
		}

	}

	function ml(n, d)
	{
		a = n + '@' + d;
		s = '<a href="mail' + 'to:' + a + '">' + a + '</a>';
		document.write (s);
	}

	var t_inh;
	function setInhalt(id, txt)
	{
		clearTimeout(t_inh);
		cmd = "document.getElementById('" + id + "').innerHTML = '" + txt + "';";
		t_inh = setTimeout(cmd, 50);
	}

	function allowDecimal(evt, val)
	{
		allowed = '1234567890,';
		evt = (evt) ? evt : ((event) ? event : null);
		if (evt)
		{
			keyCode = evt.keyCode;
			charCode = evt.charCode;

			characterCode = (evt.charCode) ? evt.charCode : evt.keyCode;
			char = String.fromCharCode(characterCode);
			// DEL und TAB in Firefox erlauben
			allow = ((allowed.indexOf(char) >= 0) || (keyCode == 8) || (keyCode == 9));

			// Komma nur ein Mal erlauben
			if ((char == ',') && (val.indexOf(',') >= 0)) allow = false;

			return allow;
		}
	}

	function allowInt(evt)
	{
		allowed = '1234567890';
		evt = (evt) ? evt : ((event) ? event : null);
		if (evt)
		{
			keyCode = evt.keyCode;
			charCode = evt.charCode;
			characterCode = (evt.charCode) ? evt.charCode : evt.keyCode;
			char = String.fromCharCode(characterCode);
			// DEL und TAB in Firefox erlauben
			allow = ((allowed.indexOf(char) >= 0) || (keyCode == 8) || (keyCode == 9));
			return allow;
		}
	}

	function allowIntEnterBlur(obj, evt)
	{
		allowed = '1234567890';
		evt = (evt) ? evt : ((event) ? event : null);
		if (evt)
		{
			keyCode = evt.keyCode;
			charCode = evt.charCode;
			characterCode = (evt.charCode) ? evt.charCode : evt.keyCode;
			char = String.fromCharCode(characterCode);
			if (keyCode == 13) obj.blur();
			// DEL und TAB in Firefox erlauben
			allow = ((allowed.indexOf(char) >= 0) || (keyCode == 8) || (keyCode == 9));
			return allow;
		}
	}

	function allowDate(evt, val)
	{
		allowed = '1234567890.';
		evt = (evt) ? evt : ((event) ? event : null);
		if (evt)
		{
			keyCode = evt.keyCode;
			charCode = evt.charCode;

			characterCode = (evt.charCode) ? evt.charCode : evt.keyCode;
			char = String.fromCharCode(characterCode);
			// DEL und TAB in Firefox erlauben
			allow = ((allowed.indexOf(char) >= 0) || (keyCode == 8) || (keyCode == 9));

			// TODO: Eingabe an sich pruefen
			if (1 == 0) allow = false;

			return allow;
		}
	}

	function allowTel(evt)
	{
		allowed = '1234567890 -/().+';
		evt = (evt) ? evt : ((event) ? event : null);
		if (evt)
		{
			keyCode = evt.keyCode;
			charCode = evt.charCode;
			characterCode = (evt.charCode) ? evt.charCode : evt.keyCode;
			char = String.fromCharCode(characterCode);
			// DEL und TAB in Firefox erlauben
			allow = ((allowed.indexOf(char) >= 0) || (keyCode == 8) || (keyCode == 9));
			return allow;
		}
	}
	
	function allowVoucher(evt)
	{
		allowed = 'abcdefghjkmnpqrstuvwxyz1234567890';
		evt = (evt) ? evt : ((event) ? event : null);
		if (evt)
		{
			keyCode = evt.keyCode;
			charCode = evt.charCode;
			characterCode = (evt.charCode) ? evt.charCode : evt.keyCode;
			char = String.fromCharCode(characterCode);
			// DEL und TAB in Firefox erlauben
			allow = ((allowed.indexOf(char) >= 0) || (keyCode == 8) || (keyCode == 9));
			return allow;
		}
	}

	function allowAlphanumeric(evt)
	{
		allowed = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_';
		evt = (evt) ? evt : ((event) ? event : null);
		if (evt)
		{
			keyCode = evt.keyCode;
			charCode = evt.charCode;
			characterCode = (evt.charCode) ? evt.charCode : evt.keyCode;
			char = String.fromCharCode(characterCode);
			// DEL und TAB in Firefox erlauben
			allow = ((allowed.indexOf(char) >= 0) || (keyCode == 8) || (keyCode == 9));
			return allow;
		}
	}

	function clearOn(obj, val)
	{
		if (obj.value == val)
		{
			obj.value = '';
		}
	}

	function setOnEmpty(obj, val)
	{
		if (obj.value == '')
		{
			obj.value = val;
		}
	}

	function goArtikel(nr)
	{
		document.location.href = "/profi/" + nr;
	}
	var fadeObj;
	var fadeR1;
	var fadeG1;
	var fadeB1;
	var fadeR2;
	var fadeG2;
	var fadeB2;
	var fadeStps;
	var fadeCurr;
	var fadeWait = 50;
	var fadeResetWait = 500;
	var fadeAktiv = false;
	var fadeTmr;
	function goRubrik(nr, obj, rgb)
	{
		r2 = Math.floor(rgb/256/256);
		g2 = Math.floor((rgb - (r2*256*256))/256);
		b2 = rgb-(r2*256*256)-(g2*256);
		steps = 20;
		wait = 70;
		resetWait = 2000;
		startFade(obj, 255, 255, 255, r2, g2, b2, steps, wait, resetWait);
		document.location.href = "/profi/dw/showcat/catid/" + nr;
	}

	function startFade(obj, r1, g1, b1, r2, g2, b2, steps, wait, resetWait)
	{
		if (fadeAktiv == true)
		{
			clearFade();
		}
		fadeAktiv = true;
		fadeObj = obj;
		fadeR1 = r1;
		fadeG1 = g1;
		fadeB1 = b1;
		fadeR2 = r2;
		fadeG2 = g2;
		fadeB2 = b2;
		fadeStps = steps;
		fadeWait = wait;
		fadeResetWait = resetWait;
		fadeCurr = 0;
		doFade();
	}
	function doFade()
	{
		var epct = fadeCurr/fadeStps;
		var spct = 1 - epct;

		col = Math.floor(fadeR1 * spct + fadeR2 * epct)*256*256 +
						Math.floor(fadeG1 * spct + fadeG2 * epct)*256 +
							Math.floor(fadeB1 * spct + fadeB2 * epct);
		fadeObj.style.backgroundColor = col;
		if ( fadeCurr < fadeStps ) {
			fadeCurr++;
			fadeTmr = setTimeout('doFade();',fadeWait);
		}
		else
		{
			fadeTmr = setTimeout('clearFade();',resetWait);
		}
	}
	function clearFade()
	{
		clearTimeout(fadeTmr);
		col = fadeR1*256*256 +
					fadeG1*256 +
					fadeB1;
		fadeObj.style.backgroundColor = col;
		fadeAktiv = false;
	}

	function rubrikOver(obj,bg,col,grp)
	{
		grpObj = getObjByID(grp);
//		obj.style.fontWeight='bold';
		obj.style.backgroundColor = col;
		if (bg != 2)
		{
			grpObj.style.color='#ffffff';
		}
	}
	function rubrikOut(obj,bg,grp)
	{
		grpObj = getObjByID(grp);
		obj.style.fontWeight='normal';
		obj.style.backgroundColor = '#ffffff';
		grpObj.style.color='#000000';
	}
	topVisible = 0;
	function showTop(nr)
	{
		if(topVisible > 0)
		{ hideTop(topVisible);
		}
		lyr = 'top_art_' + nr;
		showLayer(lyr);
		topVisible = nr;

		if(document.forms['topart'+topVisible])
		{ document.forms['topart'+topVisible].newartanz.focus();
		}
	}
	function hideTop(nr)
	{
		if (topVisible > 0)
		{
			lyr = 'top_art_' + nr;
			hideLayer(lyr);
			topVisible = 0;
		}
	}

	function check4gutschein()
	{
		gs = document.forms['gutschein'].newartno.value;
		if(!isNaN(gs))
		{
			document.forms['gutschein'].submit();
			return false;
		}
	}

	function moveLayer(id, x, y)
	{
		if (obj = getObjByID(id))
		{
			obj.style.left = x + 'px';
			obj.style.top = y + 'px';
		}
	}

	var kbinfoon = false;
	var kbinfo = 0;
	var kbinfos = new Array();
	function loadKbInfo(artnr, id, e)
	{
		if (e)
		{
			captureMousePosition(e);
			moveLayer (id, mousex-220, mousey+25);
		}
		kbinfoon = true;
		if (artnr == kbinfo)
		{
			showLayer(id);
			return false;
		}
		else
		{
			kbinfo = artnr;
			oldInfos = String(kbinfos[artnr]);
			if (oldInfos == 'undefined') oldInfos = '';
			if (oldInfos == '')
			{
				document.getElementById(id).innerHTML = 'Produktinfos werden geladen...';
			}
			else
			{
				document.getElementById(id).innerHTML = kbinfos[artnr];
				showLayer(id);
				return false;
			}
			showLayer(id);
			return true;
		}
	}

	var kbtimer;
	function showKbInfo(nr, id)
	{
		showLayer(id);
		kbinfoon = true;
		clearTimeout(kbtimer);
		kbtimer = setTimeout('hideKbInfo(\'' + id + '\');', 5000);
		setTimeout('kbinfos[' + nr + '] = document.getElementById(\'' + id + '\').innerHTML', 50);
	}


	function hideKbInfo(id)
	{
		if (kbinfoon)
		{
			hideLayer(id);
			kbinfoon = false;
		}
	}


	function center_pop(breite,hoehe,name,folder)
	{ 
		pfad = "/inc/flash_popup.php/" + folder + "/" + name + "/" + breite + "/" + hoehe + "/index.html";
		xpos=(screen.width-breite)/2; 
		ypos=(screen.height-hoehe)/2; 
		name="test";
		prop = "width=" + breite + ",height=" + hoehe + ",left=" + xpos + ",top=" + ypos;
		fenster = window.open(pfad,name,prop);
	}
	
	function center_pop(breite,hoehe,name,pfad,prop)
	{
		xpos=(screen.width-breite)/2; 
		ypos=(screen.height-hoehe)/2; 
		prop+=(prop!='')?',':''; 
		prop+=',left='+xpos+',top='+ypos; 
		window.open(pfad,name,prop+((prop!='')?',':'')+'width='+breite+',height='+hoehe);
	}
	
	function showMore()
	{
		hideLayer('RubrikIntro');
		showLayerBlock('RubrikIntroFull');
	}
	function hideMore()
	{
		hideLayer('RubrikIntroFull');
		showLayerBlock('RubrikIntro');
	}

	// MousePos ermitteln - relativ zum Dokument 
	var mousex 
	var mousey; 
	function captureMousePosition(e) {
		if (!e) var e = window.event;
		if (e.pageX || e.pageY) 	{
			mousex = e.pageX;
			mousey = e.pageY;
		}
		else if (e.clientX || e.clientY) 	{
			mousex = e.clientX + document.body.scrollLeft	+ document.documentElement.scrollLeft;
			mousey = e.clientY + document.body.scrollTop	+ document.documentElement.scrollTop;
	}
	//	window.status = "mousex=" + mousex + ", mousey=" + mousey;
}
// Mouse-Position laufend ermitteln:
// if (document.layers) { // Netscape
//  document.captureEvents(Event.MOUSEMOVE);
//  document.onmousemove = captureMousePosition;
// } else if (document.all) { // Internet Explorer
//  document.onmousemove = captureMousePosition;
// } else if (document.getElementById) { // Netcsape 6
//  document.onmousemove = captureMousePosition;
// }

