// Provide the XMLHttpRequest class for IE 5.x-6.x:
// http://en.wikipedia.org/wiki/XMLHttpRequest#History_and_support
if (typeof XMLHttpRequest == "undefined" ) XMLHttpRequest = function() {
	try { return new ActiveXObject("Msxml2.XMLHTTP.6.0") } catch (e) {}
	try { return new ActiveXObject("Msxml2.XMLHTTP.3.0") } catch (e) {}
	try { return new ActiveXObject("Msxml2.XMLHTTP") } catch (e) {}
	try { return new ActiveXObject("Microsoft.XMLHTTP") } catch (e) {}
	throw new Error("This browser does not support XMLHttpRequest.")
};

function setClass(element, cname) {
// funst nicht in IE... 
	for (var i=0; i < element.length; i++) {
		element[i].removeAttribute("class");
		if (element[i].value == element.value) {
			element[i].setAttribute("class", cname);
		}
	}
}

function sendPost(url, warengruppe) {
	var ajax = new XMLHttpRequest();
	//TODO: dont use form name in code!
	
	var params = "";
	for (i=0; i < document.flut.elements.length; i++) {
		if (i > 0) params += "&";
		params += document.flut.elements[i].name + "=" + document.flut.elements[i].value;
	}
	params += "&wargruppe=" + warengruppe;
	
//	var gif = '<img src="load.gif" height="17" width="17">';

	ajax.open("POST", url, true);
	ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajax.setRequestHeader("Content-length", params.length);
	ajax.setRequestHeader("Connection", "close");

	ajax.onreadystatechange = function() {
		document.getElementById("ajaxresult").innerHTML = "suchen...";
		if (ajax.readyState == 4) {
			var res = ajax.responseText;
			var txt = res + " Treffer";
			txt = "<a href=\"#\" onclick=\"document.getElementById('flut').submit();\">"+txt+"</a>";
			document.getElementById("ajaxresult").innerHTML = txt;
			for (i=0; i < document.flut.elements.length; i++) {
				//noch schlimmer in IE8...
				//setClass (document.flut.elements[i], "sel");
			}
			//document.flut.submit.disabled = false;
			/*
			if (parseInt(res) == 0) {
				document.flut.submit.disabled = true;
				document.getElementById("ajaxresult").innerHTML = "Es wurden leider keine passenden Artikel gefunden.";
			}
			if (parseInt(res) == 1) {
				document.flut.submit.disabled = true;
				document.getElementById("ajaxresult").innerHTML = "Es wurde&nbsp;" + "<b>" + res + "</b>" + "passender Artikel gefunden.";
			}
			*/
		}
	}
	//alert(params);
	ajax.send(params); 
}

function infopop (e, id, state) {
	foo = document.getElementById(id);
	if (state == 1) {
		foo.style.visibility = 'visible';
	} else if (state == 0) {
		foo.style.visibility = 'hidden';
	} else {
		foo.style.visibility = (foo.style.visibility == 'visible') ? 'hidden' : 'visible';
	}
}

/*
* slideshow mit pause und vorherige/nächste navigation
*
* generiert eine slideshow aus element und seine kinder elementen.
*
* requires:
* 	jquery - http://www.jquery.com
* 	cycle plugin - http://www.malsup.com/jquery/cycle
*
* @author Andre Schmidt
* @param string element id, class oder name der eltern element
* @param int time zeit in millisekunden für nächste slide
*/
function slideshowMitNavi(element, time) {

	$ss = $(element);
	var pad = 10;
	var iheight = 25 /* next/prev button image height, workaround for ms-ie */
	var iwidth = 27 /* next/prev button image width, workaround for ms-ie */
	var width = $ss.width();
	var height = $ss.height();
	var left = $ss.offset().left;
	var top = $ss.offset().top;
	
	$('body').append('\
		<img id="ssprev" src="images/prev_normal.jpg"/>\
		<img id="ssnext" src="images/next_normal.jpg"/>\
	');
	/*$('#ssnav').hide();
	$('#ssnav').css('position', 'absolute');
	$('#ssnav').css('padding',0);
	$('#ssnav').css('margin',0);
	$('#ssnav').css('z-index', 250);
	$('#ssnav').css('width', width - (pad * 2));
	$('#ssnav').css('left', left + pad);
	$('#ssnav').css('top', top + (height / 2) - (iheight / 2));*/

	$('#ssprev').css('position', 'absolute');
	$('#ssprev').css('z-index', 250);
	$('#ssprev').css('left', left + pad);
	$('#ssprev').css('top', top + (height / 2) - (iheight / 2));
	$('#ssprev').hide();
	
	$('#ssnext').css('position', 'absolute');
	$('#ssnext').css('z-index', 250);
	$('#ssnext').css('left', left + (width - (iwidth + pad)));
	$('#ssnext').css('top', top + (height / 2) - (iheight / 2));
	$('#ssnext').hide();

	$('#ssnext').hover(
		function(){
			$('#ssnext').css('cursor', 'pointer');
			$('#ssnext').attr('src', 'images/next_hover.jpg');
		},
		function(){
			$('#ssnext').css('cursor', '');
			$('#ssnext').attr('src', 'images/next_normal.jpg');
		}
	);

	$('#ssprev').hover(
		function(){
			$('#ssprev').css('cursor', 'pointer');
			$('#ssprev').attr('src', 'images/prev_hover.jpg');

		},
		function(){
			$('#ssprev').css('cursor', '');
			$('#ssprev').attr('src', 'images/prev_normal.jpg');
		}
	);
	
	$ss.cycle({
		fx:'scrollHorz',
		timeout:time,
		next:'#ssnext',
		prev:'#ssprev'
	});
	
	$(element+', #ssprev, #ssnext').hover(
		function(){
			$ss.cycle('pause');
			$('#ssprev').show();
			$('#ssnext').show();
			
		},
		function(){
			$ss.cycle('resume');
			$('#ssprev').hide();
			$('#ssnext').hide();
		}
	);

}
