
function setBorders(name) {
	didStart = true;
	for (
  	var i = 0, list = document.getElementsByTagName('img'), element;
  	element = list[i];
  	i++
	) {
		if (navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion >= "4") {
   			element.style.borderColor = '#ffffff';
   		} else {
   			element.style.borderColor = 'transparent';
   		}
	}
	for (
  	var i = 0, list = document.getElementsByName(name), element;
  	element = list[i];
  	i++
	) {
   		element.style.borderColor = '#444444';
	}
}

function initProductSlider(visibleProducts,numProducts) {
	if(!didStart) startSlidingNew('productSlider', 1, visibleProducts, numProducts, 0);
}

function rolloverImage(idImage, imgObjectName) {
  document.images[idImage].src = eval(imgObjectName + ".src");
}

function rolloverBgImage(idDiv, imgObjectName) {
  document.getElementById(idDiv).style.backgroundImage = "url(" + eval(imgObjectName + ".src") + ")";
}

var debugNew = true;
var animatingNew = false;
var keepSlidingNew = false;
var didStart = false;
var picCountNew = 0;
var picWidthNew = 0;
var elementWidthNew = 0;
var visibleWidthNew = 0;
var posMostLeftNew = 0;
var offsetLeftNew = 0;
var navIdNew = 0;
var lastNavIdNew = 0;
var globalElementIdNew;
var globalDirectionNew;
var globalVisiblePicturesNew;
var globalMarginNew;
var globalStepNew;
var globalDirectionNew;
var globalPicCountNew;
var picNr = 0;

function startSlidingNew(elementId, direction, visiblePictures, picCount, offset) {
	didStart = true;
	if(!keepSlidingNew) {
		keepSlidingNew = true;
//set global vars for usage in callback method
		globalElementIdNew = elementId;
		globalDirectionNew = direction;
		globalVisiblePicturesNew = visiblePictures;
		globalStepNew = 1;
		picCountNew = picCount + (2 * visiblePictures);
		globalPicCountNew = picCount;
		offsetLeftNew = offset;
// init first sliding round
		moveNew(elementId, direction, visiblePictures, globalStepNew, specialCallbackNew);
	}
}

function stopSlidingNew() {
// break on next sliding round
	keepSlidingNew = false;
}

function specialCallbackNew(obj) {
	picNr += 1;
	if (picNr == globalPicCountNew) {
		stopSlidingNew();
		picNr = 0;
	}
// do the position checks
	onFinishNew(obj);
// if mouse over is still active startover again
	if(keepSlidingNew){
		moveNew(globalElementIdNew, globalDirectionNew, globalVisiblePicturesNew, globalStepNew, specialCallbackNew);
	}
}

function onFinishNew(obj) {
	var slider = document.getElementById(obj.element.id);
	var posText = slider.style.left;

	if (posText ==  offsetLeftNew + "px") {
		var newPosText = posMostLeftNew + visibleWidthNew + "px";
		Element.setStyle(obj.element.id, {left:newPosText} );
	}
	if ( posText == posMostLeftNew + "px" ) {
		var newPosText = (-visibleWidthNew + offsetLeftNew) + "px";
		Element.setStyle(obj.element.id, {left:newPosText} );
	}
//change navigation element on image slider

//reset lock
	animatingNew = false;
}

function moveNew(elementId, direction, visiblePictures, step, callbackFunction) {
	
	if(!animatingNew){
// set lock

		animatingNew = true;
//fixme 17=polopoly elemente + clones
//picCountNew = 17;   // anything to do?
		if (picCountNew <= visiblePictures)	{
		if(debug) alert("picCount <= visiblePictures - nothing to do");
		animatingNew = false;
		return;
	}

//	picWidthNew = <?php echo $item_w ?>;

	elementWidthNew = picWidthNew * picCountNew;
	visibleWidthNew = picWidthNew * visiblePictures;
	posMostLeftNew = (elementWidthNew - visibleWidthNew - offsetLeftNew) * -1;

	if( direction == 0) new Effect.MoveBy(elementId, 0, picWidthNew * step, {duration: 1, afterFinish: callbackFunction});
	if( direction == 1) new Effect.MoveBy(elementId, 0, -picWidthNew * step, {duration: 1, afterFinish: callbackFunction});
	}
}



/*@cc_on
	/*@if (@_jscript)
		ie = (document.all && !window.opera) ? true : false;
	/*@else @*/
		ie = false;
	/*@end
@*/
ie7 = (ie && window.XMLHttpRequest);
if (ie && !ie7) document.execCommand("BackgroundImageCache", false, true);

//change the opacity for different browsers
function changeOpac(opacity, id) {
	var object = document.getElementById(id).style;
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	object.filter = "alpha(opacity=" + opacity + ")";
	if (opacity == 0) {
		object.display = (object.display == 'none' || object.display == '') ? 'block' : 'none';
	}
}

function opacity(id, opacStart, opacEnd, millisec) {
	//speed for each frame
	var speed = Math.round(millisec / 100);
	var timer = 0;

	//determine the direction for the blending, if start and end are the same nothing happens
	if(opacStart > opacEnd) {
		for(i = opacStart; i >= opacEnd; i--) {
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	} else if(opacStart < opacEnd) {
		for(i = opacStart; i <= opacEnd; i++)
		{
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}
}

resizeHTimerArray		= new Array();
resizeHTimerCount		= 0;

function grow(id, curH, maxH, pixelrate, speed) {
	var timer = speed;
	var newH = curH;
	if (maxH < curH) maxH = curH;
	if (newH == maxH) {
		opacity('bilder', 100, 25, 500);
		opacity('prices', 0, 100, 500);
//		var showP = '<a href="javascript:hidePrices()"><img id="prices_button" src="images/button_hide_prices.gif" border="0" alt="Preise ausblenden" /></a>';
//		document.getElementById('prices_button').innerHTML = showP;
		document.getElementById('prices_link').href = 'javascript:hidePrices()';
		document.getElementById('prices_button').src = '/images/button_hide_prices.gif';
		for (var i = 0; i < resizeHTimerCount; i++) { window.clearTimeout(resizeHTimerArray[i]); }
		resizeHTimerCount = 0;
		resizeHTimerArray = Array();
	} else {
		document.getElementById(id).style.height = (newH) + "px";
		if (newH < maxH) {
			newH += (newH + pixelrate >= maxH) ? (maxH - newH) : pixelrate;
		} else if (newH > maxH) {
			newH -= (newH - pixelrate <= maxH) ? (newH - maxH) : pixelrate;
		}
		resizeHTimerArray[resizeHTimerCount++] = setTimeout("grow('" + id + "', " + newH + ", " + maxH + ", " + pixelrate + ", " + (timer+.02) + ")", timer+.02);
	}
}

function shrink(id, curH, maxH, pixelrate, speed) {
	opacity('bilder', 25, 100, 500);
	opacity('prices', 100, 0, 500);
	setTimeout("shrink2('" + id + "', " + curH + ", " + maxH + ", " + pixelrate + ", " + speed + ")",501)
}

function shrink2(id, curH, minH, pixelrate, speed) {
	var timer = speed;
	var newH = curH;
	if (minH > curH) minH = curH;
	if (newH == minH) {
//		var showP = '<a href="javascript:showPrices()"><img src="/images/button_show_prices.gif" border="0" alt="Preise anzeigen" /></a>';
//		document.getElementById('prices_button').innerHTML = showP;
		document.getElementById('prices_link').href = 'javascript:showPrices()';
		document.getElementById('prices_button').src = '/images/button_show_prices.gif';
		for (var i = 0; i < resizeHTimerCount; i++) { window.clearTimeout(resizeHTimerArray[i]); }
		resizeHTimerCount = 0;
		resizeHTimerArray = Array();
	} else {
		document.getElementById(id).style.height = (newH) + "px";
		if (newH < minH) {
			newH += (newH + pixelrate >= minH) ? (minH - newH) : pixelrate;
		} else if (newH > minH) {
			newH -= (newH - pixelrate <= minH) ? (newH - minH) : pixelrate;
		}
		resizeHTimerArray[resizeHTimerCount++] = setTimeout("shrink2('" + id + "', " + newH + ", " + minH + ", " + pixelrate + ", " + (timer+.02) + ")", timer+.02);
	}
}

var activeli;
var activefade;

function dd(elm) {
	var dds = document.getElementsByTagName('ul');
	clearTimeout(activefade);
	for (var i=0; i<dds.length; i++) {
		dds[i].style.display='none';
	}
	if (elm != '') {
		opacity(elm,0,1,200);
		activefade = setTimeout("opacity('" + elm + "',1,90,200)",600);
	}
}



var closetimer	= 0;
var activefade	= 0;
var ddmenuitem	= 0;

// open hidden layer
function mopen(id)
{	
//	if (ddmenuitem != document.getElementById(id)) {
	// cancel close timer
	mcancelclosetime();

	// close old layer
	if(ddmenuitem) ddmenuitem.style.display = 'none';
	
	// get new layer and show it
	ddmenuitem = document.getElementById(id);
	activefade = setTimeout("opacity('" + id + "',0,90,200)",600);
//}
}
// close showed layer
function mclose()
{
	if(ddmenuitem) ddmenuitem.style.display = 'none';
}

// go close timer
function mclosetime()
{
	closetimer = window.setTimeout(mclose, 300);
	if(activefade)
	{
		window.clearTimeout(activefade);
		activefade = null;
	}
}

// cancel close timer
function mcancelclosetime()
{
	if(closetimer)
	{
		window.clearTimeout(closetimer);
		closetimer = null;
	}
	if(activefade)
	{
		window.clearTimeout(activefade);
		activefade = null;
	}
}

// close layer when click-out
document.onclick = mclose; 
