/*Typo3 additional functions*/

/*page functions*/
function printPage(){
	window.print();
}

function setTraditionLogo() {
	naviHeight = getElHeight('mainLeft');
	contentHeight = getElHeight('mainContentBorderTop');
	
	if (naviHeight > contentHeight) {
		document.getElementById('mainContent').style.minHeight = naviHeight + "px";
	}
}

/*
window.addEvent('domready', function(){
});
*/

function getElHeight(id){
	return (document.getElementById(id).offsetHeight);	
}

/*Frame contentToggle for RTE:*/
var currentmpEvent;

function makeToggle(btnId, tmpEvent){	
		
	var sliderObj = new Fx.Slide('box' + tmpEvent, {duration: 400});	
	sliderObj.hide();
	
	var showObj = new Fx.Style('box' + tmpEvent, 'opacity', {duration: 100});
	//showObj.hide();
	
	anchorToggle(sliderObj, showObj, tmpEvent);

	sliderObj.addEvent('onComplete', function() {
		//showObj.start(0,1);		
		//$('opacityBox'+tmpEvent).effect('opacity',{duration: 100}).start(0,1);
	});
	
	sliderObj.addEvent('onStart', function() {
		//showObj.hide();
		//showObj.start(1,0);
		//showObj.start(1,0);		
		
		//$('opacityBox'+tmpEvent).effect('opacity',{duration: 10}).start(1,0);		
		
		//$('box' + tmpEven).effect('opacity',{duration: 0}).start(0,1);
	});
	
	$(btnId).addEvent('click', function(e){
		e = new Event(e);
		sliderObj.toggle();
		//showObj.start(0,1);
		swapClass(btnId);
		e.stop();
		
		// close 
		if (currentmpEvent && currentbtnId != btnId) {
			div = document.getElementById('c' + currentbtnId);
			if (div.className == "ContentToggleOpened slide") {
				currentmpEvent.toggle();
				swapClass(currentbtnId);
			}
		} 
		currentmpEvent = sliderObj;
		currentbtnId = btnId;
	});
	
	rightLink = btnId + "link";
	$(rightLink).addEvent('click', function(e){
		e = new Event(e);
		sliderObj.toggle();
		showObj.start(0,1);
		swapClass(btnId);
		e.stop();
		// close 
		if (currentmpEvent && currentbtnId != btnId) {
			div = document.getElementById('c' + currentbtnId);
			if (div.className == "ContentToggleOpened slide") {
				currentmpEvent.toggle();
				swapClass(currentbtnId);
			}
		} 
		currentmpEvent = sliderObj;
		currentbtnId = btnId;
	});
	
	rightImg = btnId + "img";
	$(rightImg).addEvent('click', function(e){
		e = new Event(e);
		sliderObj.toggle();
		showObj.start(0,1);
		swapClass(btnId);
		e.stop();
		// close 
		if (currentmpEvent && currentbtnId != btnId) {
			div = document.getElementById('c' + currentbtnId);
			if (div.className == "ContentToggleOpened slide") {
				currentmpEvent.toggle();
				swapClass(currentbtnId);
			}
		} 
		currentmpEvent = sliderObj;
		currentbtnId = btnId;
	});

}

function anchorToggle(sliderObj, showObj, id) {
	a = String(document.location).toLowerCase().split('#');
	if (a[1] && a[1] == "c" + id) {
		sliderObj.toggle();
		currentmpEvent = sliderObj;
		currentbtnId = "tB" + id;
		swapClass("tB" + id);
	}
}

function swapClass(id, className) {
	div = document.getElementById('c' + id);
	if (div.className == "ContentToggleOpened slide") {
		div.className = "ContentToggle slide";
		swapImage("open"+id, "fileadmin/img/open.gif");
	} else {
		div.className = "ContentToggleOpened slide";
		swapImage("open"+id, "fileadmin/img/close.gif");
	}
}

function swapImage(id, src) {
	document.images[id].src = src;
}

String.prototype.stripHTML = function() {
	return this.replace(/<.*?>/g, '');
}

// rezepte categorie
var currentCat = "";
var currentRecipe = "";


// isError
var isError = false;

var lastBoxRowClass;

function copyLastname() {
	form = document.getElementById('tx-srfeuserregister-pi1-fe_users_form');	
	form['FE[fe_users][password]'].value = form['FE[fe_users][last_name]'].value;
	form['FE[fe_users][password_again]'].value = form['FE[fe_users][last_name]'].value;
	
	// anrede
	if (form['FE[fe_users][gender]'][0].checked)  {
		form['FE[fe_users][title]'].value = "Sehr geehrter Herr";
	} else {
		form['FE[fe_users][title]'].value = "Sehr geehrte Frau";
	}
}

function setTitle() {
	form = document.getElementById('tx-srfeuserregister-pi1-fe_users_form');
	// anrede
	if (form['FE[fe_users][gender]'][0].checked)  {
		form['FE[fe_users][title]'].value = "Sehr geehrter Herr";
	} else {
		form['FE[fe_users][title]'].value = "Sehr geehrte Frau";
	}
}

function insertPassword() {
	form = document.getElementById('tx-srfeuserregister-pi1-fe_users_form');
	form['FE[fe_users][password]'].value = "passwort";
	form['FE[fe_users][password_again]'].value = "passwort";
}

function setBoxBottom() {	
	div = document.getElementById('boxBottom');
	
	if (lastBoxRowClass) {
		div.className = "ContentToggleBottomGruen";
	}
}

function setBoxBottomById(id) {	
	div = document.getElementById(id);
	
	if (lastBoxRowClass) {
		//alert(div.className);
		div.className = "ContentToggleBottomGruen";
	}
}

function setNewsBoxBottom() {	
	div = document.getElementById('boxBottom');
	boxline = document.getElementById('boxLine_' + lastId);
	boxline.style.display = "none";

	if (lastBoxRowClass) {
		div.className = "ContentToggleBottomGruen";
	}
}

function setBoxHeader() {
	h = document.getElementById('boxHeader');
	h.innerHTML = catName;
}

function showShortDescription(id, _link) {
	span = document.getElementById(id);
	span.style.display = "inline";
	document.getElementById("points"+id).style.display = "none";
	document.getElementById(_link).style.display = "none";
}

/* Bilder mouseover layer */
var imgLayer;
var imgBorder;
var bigImage;
var req;
var caption;
var hrefs = [];
function getImage(url) {
	//var url = "index.php?eID=tx_cms_showpic&file=" + imageName + "&width=406height=600m&md5=1";	
	//alert(url);
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	req.open("GET", url, true);
	req.onreadystatechange = callback;
	req.send(null);
}

function callback() {
	if (req.readyState == 4) {
		if (req.status == 200) {
			appendImage();
		} else {
			alert("Error!");
		}
	} 
}

function appendImage() {
	
	var src = req.responseXML.getElementsByTagName("img")[0].getAttribute('src');
	//alert(req.responseXML.getElementsByTagName("img")[0].getAttribute('width'))
	bigImage.setAttribute('src',src);
	bigImage.setAttribute('width',req.responseXML.getElementsByTagName("img")[0].getAttribute('width'));
	bigImage.setAttribute('height',req.responseXML.getElementsByTagName("img")[0].getAttribute('height'));
		
	/*
	span = document.createElement('div');
	span.className = "caption";
	span.innerHTML = caption;
	span.id = "pos";
	imgLayer.appendChild(span);
	*/
	imgLayer.style.display = "block";
	
	imgBorder.appendChild(bigImage);
}

function showImageLayer(a, imageName, index, imagecaption, imagewidth) {
	if (imagewidth) {
		imgLayer = document.createElement('div');
		imgLayer.id = "img_" + a.id;
		imgLayer.className = "imageDiv";
		
		imgBorder = document.createElement('div');
		imgBorder.className = "border";
		//imgLayer.style.display = "none";
		
		var imagecaptions = imagecaption.split("#");
		var imgs = imageName.split(",");
		
		var href = "index.php?eID=tx_cms_showpic&file=uploads/pics/" + imgs[index] + "&width=406m&height=304m";
		
		//var href = "index.php?eID=tx_cms_showpic&file=uploads/pics/" + imgs[index] + "&height=304m";
		getImage(href, imagecaptions[index]);
		caption = imagecaptions[index] ? imagecaptions[index] : "";		
		
		bigImage = document.createElement('img');
		//bigImage.setAttribute('src', 'fileadmin/img/ajax-loader.gif');
		bigImage.setAttribute('src', 'fileadmin/img/clear.gif');
		bigImage.setAttribute('width',"400px");
		bigImage.setAttribute('height',"300px");

		imgBorder.appendChild(bigImage);
		imgLayer.appendChild(imgBorder);			
		//imgLayer.appendChild(span);
		
		span = document.createElement('div');
		span.className = "caption";
		span.innerHTML = caption;
		span.id = "pos";
		imgLayer.appendChild(span);
		
		document.body.appendChild(imgLayer);

		document.body.onmousemove = setPosition;
	}
}

function showImageLayerFix(a, imageName, index, imagecaption, imagewidth, e) {
	if (imagewidth) {
		imgLayer = document.createElement('div');
		imgLayer.id = "img_" + a.id;
		imgLayer.className = "imageDiv";
		
		imgBorder = document.createElement('div');
		imgBorder.className = "border";
		//imgLayer.style.display = "none";
		
		var imagecaptions = imagecaption.split("#");
		var imgs = imageName.split(",");
		
		var href = "index.php?eID=tx_cms_showpic&file=uploads/pics/" + imgs[index] + "&width=406m&height=304m";
		
		//var href = "index.php?eID=tx_cms_showpic&file=uploads/pics/" + imgs[index] + "&height=304m";
		getImage(href, imagecaptions[index]);
		caption = imagecaptions[index] ? imagecaptions[index] : "";		
		
		bigImage = document.createElement('img');
		//bigImage.setAttribute('src', 'fileadmin/img/ajax-loader.gif');
		bigImage.setAttribute('src', 'fileadmin/img/clear.gif');
		bigImage.setAttribute('width',"400px");
		bigImage.setAttribute('height',"300px");

		imgBorder.appendChild(bigImage);
		imgLayer.appendChild(imgBorder);			
		//imgLayer.appendChild(span);
		
		span = document.createElement('div');
		span.className = "caption";
		span.innerHTML = caption;
		span.id = "pos";
		imgLayer.appendChild(span);
		
		document.body.appendChild(imgLayer);
		
		imgLayer.style.left = "400px";
		
		var pos = getPosition(e);
		//alert(pos.y)
		imgLayer.style.top = (pos.y - 380) +"px";
		
		//var pos = getPosition(e);
		
		//setPosition();
		//document.body.onmousemove = setPosition;
	}
}

// steckbriefe images
function showImageLayerSteckbrief(a, imageName, index, imagecaption, imagewidth) {
	if (imagewidth) {
		imgLayer = document.createElement('div');
		imgLayer.id = "img_" + a.id;
		imgLayer.className = "imageDiv";
		
		imgBorder = document.createElement('div');
		imgBorder.className = "border";
		//imgLayer.style.display = "none";
		
		var imagecaptions = imagecaption.split(",");
		//var imgs = imageName.split(",");
		
		var href = "index.php?eID=tx_cms_showpic&file=uploads/tx_srfeuserregister/" + imageName + "&width=406m&height=304m";
		
		//var href = "index.php?eID=tx_cms_showpic&file=uploads/pics/" + imgs[index] + "&height=304m";
		getImage(href, imagecaptions[index]);
		caption = imagecaptions[index] ? imagecaptions[index] : "";		
		
		bigImage = document.createElement('img');
		//bigImage.setAttribute('src', 'fileadmin/img/ajax-loader.gif');
		bigImage.setAttribute('src', 'fileadmin/img/clear.gif');
		bigImage.setAttribute('width',"400px");
		bigImage.setAttribute('height',"300px");

		imgBorder.appendChild(bigImage);
		imgLayer.appendChild(imgBorder);			
		//imgLayer.appendChild(span);
		
		span = document.createElement('div');
		span.className = "caption";
		span.innerHTML = caption;
		span.id = "pos";
		imgLayer.appendChild(span);
		
		document.body.appendChild(imgLayer);
		document.body.onmousemove = setPosition;
	}
}

function setPosition(e) {
	var tmp = getPosition(e);
	var boxWidth = 450;
	var boxHeight = 310;
	//imgLayer.innerHTML = tmp.x + " " + tmp.y;
	innerW = window.innerWidth || document.body.clientWidth; 
	innerH = window.innerHeight || document.body.clientHeight;
	
	xpos = tmp.x + boxWidth > innerW ? tmp.x - boxWidth - 30 : tmp.x;
	imgLayer.style.left = xpos + 30 + "px";
	
	ypos = tmp.y + boxHeight > innerH ? tmp.y - boxHeight : tmp.y;
	imgLayer.style.top = ypos + "px";
	//span.innerHTML = xpos + " " + tmp.y + " f:" + innerW ;
}

function hideImageLayer(a, imagewidth) {
	if (imagewidth) {
		var img = document.getElementById("img_" + a.id);
		document.body.removeChild(img);
	}
}

function getPosition(e) {
	e = e || window.event;
	
    var cursor = {x:0, y:0};
    if (e.pageX || e.pageY) {
        cursor.x = e.pageX;
        cursor.y = e.pageY;
    } else {
        var de = document.documentElement;
        var b = document.body;
        cursor.x = e.clientX + 
            (de.scrollLeft || b.scrollLeft) - (de.clientLeft || 0);
        cursor.y = e.clientY + 
            (de.scrollTop || b.scrollTop) - (de.clientTop || 0);
    }

    return cursor;
}

function imageDiv (a) {
	//var div = document.getElementById("content" + contentId);
	var d = document.createElement('div');
	d.className = "info";
	//p.setAttribute('id', 'p' + contentId);
	d.innerHTML = string;
	div.appendChild(d);
}

function centerThumbnail(id, imagewidth) {
	if (imagewidth) {
		var img = document.getElementById(id);
		img.style.paddingLeft = (131 - img.width) / 2 + "px";
		//img.style.marginRight = (131 - img.width) / 2 + "px";
		//alert(img.width);
	}
}
/* end Bilder mouseover layer */


// show / hide map div
function showMap(id, vis, e, _img) {
	//document.getElementById(id).style.display = vis;	
	var pos = getPosition(e);
	//alert(pos.y);	
	var div = document.getElementById('map');
	var img = document.getElementById('landwirteKarte');
	img.src = "fileadmin/img/maps/" + _img;
	div.style.top = pos.y + "px";
	div.style.display = vis;
}

// products not used
function getCategorieLink() {}


// sort products
var sortUlid = 0;
var ul;
function sortProduct(sortId) {
	var list = document.getElementById('tx-ttproducts-pi1-list');
	var divs = list.getElementsByTagName("div");
	var vis = Array("none", "block");
	
	//hi list
	//ul = document.getElementById('productSort'+sortUlid);
	var lis = ul.getElementsByTagName("li");
	
	for (i = 0; i < lis.length; i++) {
		//alert(lis[i].className);
		if (i == 0) {
			lis[i].className = "normal first";	
		} else if (i == lis.length - 1) {
			lis[i].className = "normal last";
		} else {
			lis[i].className = "normal";
		}		
	}
	var li = document.getElementById('productSort' + sortUlid + sortId);
	if (sortId == "A") {
		li.className = "active first";	
	} else if (sortId == "F") {
		li.className = "active last";
	} else {
		li.className = "active";
	}	
	// end hi list
	
	for (i = 0; i < divs.length; i++) {
		
		divs[i].style.display = "block";
		
		if (divs[i].id.indexOf('A') != -1) { 
			tmp = divs[i].id.split(sortId);
			show = tmp[1].substr(0,1);
			show =  show == "J" || show == "1" ? 1 : 0;
			divs[i].style.display = vis[show];
			
			// hier G == nur für händler
			if (show == 1 && divs[i].id.indexOf('G') != -1) {				
				tmp = divs[i].id.split('G');
				show = tmp[1].substr(0,1);
				show = show == "J" || show == "1" ? 0 : 1;
				divs[i].style.display = vis[show];
			}
		}
		
	}
}


function showSort(catId) {
	ul = document.getElementById('productSort');
	if (catId == 13) {
		ul = document.getElementById('productSort2');
		sortUlid = 2;
	} else if (catId == 15) {
		ul = document.getElementById('productSort1');
		sortUlid = 1;
	}
	
	ul.style.display = "block";
}

function setNaviActive(nav) {
	if (nav == "h" || nav == "l" || nav == "p") { 
		var div = document.getElementById('metanav');
		var id = 0;
		if (nav == "h") {
			id = 0;
		} else if (nav == "l") {
			id = 1;
		} else if (nav == "p") {
			id = 2;
		}
		
		var lis = div.getElementsByTagName("li");
		
		for (i = 0; i < lis.length; i++) {
			if (i == id) {
				lis[i].className = "active";	
			}	
		}
	} else { // bioclub
		var div = document.getElementById('topnav');
		var lis = div.getElementsByTagName("li")[5];
		var a = lis.getElementsByTagName("a")[0];
		a.removeAttribute("onmouseover", "false");
		a.removeAttribute("onmouseout", "false");
		a.setAttribute("onmouseover", "");
		a.setAttribute("onmouseout", "");
		var img = a.getElementsByTagName("img")[0];
		img.src = "fileadmin/img/topNavi/topnavi_05_ACT.gif";
	}	
}

