function initbr(host, max, ccname) {
	hostname = host;
	maxbook = max;
	cname = ccname;
}

function countcookies(type){
	usedcookies = 0;
	if(document.cookie) {
		c = decodeURI(document.cookie);
		var cookies = c.split(";");
		var newcookie = new Array();
		for (var d=0; d<cookies.length; d++ ) {
			var cbegin = cookies[d].indexOf(type);
			var cookie = cookies[d].split('=');
			if (cbegin >= 0) {
				if (cookie.length>1) {
					//alert(cookie[1]);
					var cookiepc = cookie[1].split('|');
					var usedcookies = cookiepc.length;
				}
			}
		}
	}
	return(usedcookies);
}

function save(v) {
	var picname = 'pic'+v;
	var brpicname = 'brpic'+v;
	var anpicname = 'anpic'+v;
	var cnt = 0;
	if (document.images[picname]) { // geändert by Anton Funk, da wenn nicht gefunden oder vorhanden ein Fehler auftritt
	var picsrc = document.images[picname].src;
	} else {
		var picsrc = "";
	}
	var saved = picsrc.indexOf("notsaved");
	if (saved>=0) {
		var c = countcookies(cname);
	} else {
		var c = 0;
	}

	if (c >= maxbook) {
		alert('Es können maximal '+maxbook+' Einträge gemerkt werden!');
	} else {
		allpics = document.getElementsByTagName("img");
		for (var d = 0; d < allpics.length; d++) {
			var picsname = allpics[d].name;
			var ispic = picsname.indexOf(picname);
			var isbrpic = picsname.indexOf(brpicname);
			if ( ispic==0 || isbrpic==0 ) {
				var picsrc = allpics[d].src;
				var saved = picsrc.indexOf("notsaved");
				if (saved>=0) {
					c = addcookie(cname, v);
					c = removecookie('remove', v);
					allpics[d].src = hostname+"pics/saved.gif";
					allpics[d].alt = 'Von der Merkliste entfernen';
				} else {
					c = removecookie(cname, v);
					c = removecookie('anfr', v);
					c = addcookie('remove', v);
					allpics[d].src = hostname+"pics/notsaved.gif";
					allpics[d].alt = 'In die Merkliste aufnehmen';
				}
			}
		}
		if (saved>=0) {
			if (opener && opener.document.images[picname]) {
				opener.document.images[picname].src = hostname+"pics/saved.gif";
				opener.document.images[picname].alt = 'Von der Merkliste entfernen';
			}
		} else {
			if (opener && opener.document.images[picname]) {
				opener.document.images[picname].src = hostname+"pics/notsaved.gif";
				opener.document.images[picname].alt = 'In die Merkliste aufnehmen';
			}
		}
	}
	var cnt = countcookies(cname);
	var cnttag = document.getElementById('memocount');
	if ( cnttag ) cnttag.innerText = cnt;
}

function direkt(v){
	var picname = 'pic'+v;
	var brpicname = 'brpic'+v;
	var anpicname = 'anpic'+v;

	var picsrc = document.images[picname].src;
	var saved = picsrc.indexOf("notsaved");
	if (saved>=0) {
		var c = countcookies(cname);
	} else {
		var c = 0;
	}

	if (c >= maxbook) {
		alert('Es können maximal '+maxbook+' Einträge gemerkt werden!');
	} else {
		allpics = document.getElementsByTagName("img");
		for (var d = 0; d < allpics.length; d++) {
			var picsname = allpics[d].name;
			var ispic = picsname.indexOf(picname);
			var isbrpic = picsname.indexOf(brpicname);
			if ( ispic==0 || isbrpic==0 ) {
				var picsrc = allpics[d].src;
				var saved = picsrc.indexOf("notsaved");
				if (saved>=0) {
					c = addcookie(cname, v);
					c = removecookie('remove', v);
					allpics[d].src = hostname+"pics/saved.gif";
					allpics[d].alt = 'Von der Merkliste entfernen';
				}
			}
		}
	}
}

function saveanfr(v, pic) {
	var picsrc = pic.src;
	var saved = picsrc.indexOf("anfractive");
	if (saved<0) {
		c = addcookie('anfr', v);
		pic.src = hostname+"pics/anfractive.gif";
		pic.alt = 'Nicht anfragen';
	} else {
		c = removecookie('anfr', v);
		pic.src = hostname+"pics/anfrinactive.gif";
		pic.alt = 'Anfragen';
	}
}

function direktanfr(v) {
	document.cookie = 'anfr=';
	c = addcookie('anfr', v);
}

function showbook() {
	document.cookie = 'anfr=';
	document.location.href='?show[site]=address';
}

function showanfr() {
	document.cookie = 'anfr=';
	document.location.href='?show[site]=address&o[tab]=anfrage';
}

function savecatanfr(v, cid, pic) {
	var picsrc = pic.src;
	var saved = picsrc.indexOf("anfractive");
	if (saved<0) {
		pic.src = hostname+"pics/anfractive.gif";
		pic.alt = 'Nicht anfragen';
	} else {
		pic.src = hostname+"pics/anfrinactive.gif";
		pic.alt = 'Anfragen';
	}
	for (var d = 0; d <= v.length; d++) {
		if (v[d]) {
			var picname = 'anfrpic'+cid+'_'+v[d];
			var picsrc = document.images[picname].src;
			if (saved<0) {
				c = addcookie('anfr', cid+'_'+v[d]);
				document.images[picname].src = hostname+"pics/anfractive.gif";
				document.images[picname].alt = 'Nicht anfragen';
			} else {
				c = removecookie('anfr', cid+'_'+v[d]);
				document.images[picname].src = hostname+"pics/anfrinactive.gif";
				document.images[picname].alt = 'Anfragen';
			}
		}
	}
}

function addcookie(type, v) {
	c = decodeURI(document.cookie);
	var cookies = c.split(";");
	var newcookie = new Array();
	for (var d=0; d<cookies.length; d++ ) {
		var cbegin = cookies[d].indexOf(type);
		var cookie = cookies[d].split('=');
		var cookiename = cookie[0].replace(/ /,"");
		if (cbegin >= 0) {
			newcookie[cookiename] = new Array();
			if (cookie.length>1) {
				var oldcookie = cookie[1].split('|');
				for (var dd = 0; dd<oldcookie.length; dd++ ) {
					var val = oldcookie[dd];
					if ( val != '' && val!=v ){
						//						alert('newcookie['+cookiename+']['+dd+']='+val);
						newcookie[cookiename][dd]=val;
					}
				}
				newcookie[cookiename][dd]=v;
				//				alert('newcookie['+cookiename+']['+dd+']='+v);
			}
		}
	}
	if ( !newcookie[type] ) {
		newcookie[type] = new Array();
		newcookie[type][0]=v;
		//		alert('newcookie['+type+'][0]='+v);
	}
	if (newcookie[type].length == 0) {
		newcookie[type][0]=v;
		//		alert('newcookie['+type+'][0]='+v);
	}
	var finalcookie = newcookie[type];
	c = type+'='+encodeURI(finalcookie.join("|"));
	c = c + "; path=/";
	document.cookie = c;
	//alert(c);
}

function removecookie(type, v) {
	c = decodeURI(document.cookie);
	var cookies = c.split(";");
	var newcookie = new Array();
	var removecookie = new Array();
	for (var d=0; d<cookies.length; d++ ) {
		var cbegin = cookies[d].indexOf(type);
		var dd = 0;
		if (cbegin >= 0) {
			var cookie = cookies[d].split('=');
			if (cookie.length>1) {
				var oldcookie = cookie[1].split('|');
				var z=0;
				for (var dd = 0; dd<oldcookie.length; dd++ ) {
					var val = oldcookie[dd];
					if ( val != '' && val!=v ){
						newcookie[z]=val;
						z++;
					}
				}
			}
		}
	}
	c = type+'='+encodeURI(newcookie.join("|"));
	c = c + "; path=/";
	//alert(c);
	document.cookie = c;
}

function hoverpic(pic) {
	var picsrc = pic.src;
	var saved = picsrc.indexOf("anfractive");
	if (saved<0) {
		pic.src = hostname+"pics/anfrinactivehover.gif";
	}
}

function rehoverpic(pic) {
	var picsrc = pic.src;
	var saved = picsrc.indexOf("anfractive");
	if (saved<0) {
		pic.src = hostname+"pics/anfrinactive.gif";
	}
}

function eltoggle(section)  {
	if (document.getElementById(section).style.display != 'none')  {
		document.getElementById(section).style.display='none';
		if ( document.images["pic"+section] ) document.images["pic"+section].src = hostname+'pics/arr_down.gif';
	} else {
		document.getElementById(section).style.display='block';
		if ( document.images["pic"+section] ) document.images["pic"+section].src = hostname+'pics/arr_up.gif';
	}
}

function tabtoggle(section, link)  {
	var a = document.getElementsByTagName("a");
	for (var d = 0; d < a.length; d++) {
		if ( a[d].name == 'tabhead' ) a[d].className='tabinactive';
	}
	link.className = 'tabactive';
	var divs = document.getElementsByTagName("div");
	for (var d = 0; d < divs.length; d++) {
		sectionname = divs[d].id;
		istab = sectionname.indexOf("tab_");
		if (istab==0) {
			if ( sectionname == 'tab_'+section ) {
				divs[d].style.display = 'block';
			} else {
				divs[d].style.display = 'none';
			}
		}
	}
}

function linktoggle(section, link)  {
	var divs = document.getElementsByTagName("div");
	for (var d = 0; d < divs.length; d++) {
		sectionname = divs[d].id;
		istab = sectionname.indexOf("tab_");
		if (istab==0) {
			if ( sectionname == 'tab_'+section ) {
				divs[d].style.display = 'block';
			} else {
				divs[d].style.display = 'none';
			}
		}
	}
}

function closeall(type) {
	var divs = document.getElementsByTagName("div");
	for (var d = 0; d < divs.length; d++) {
		sectionname = divs[d].id;
		isfolder = sectionname.indexOf(type+"_");
		if (isfolder==0) {
			if (divs[d].style.display == 'block')  {
				divs[d].style.display = 'none';
			}
		}
	}
}

function openall(type) {
	var divs = document.getElementsByTagName("div");
	for (var d = 0; d < divs.length; d++) {
		sectionname = divs[d].id;
		isfolder = sectionname.indexOf(type+"_");
		if (isfolder==0) {
			if (divs[d].style.display == 'none')  {
				divs[d].style.display = 'block';
			}
		}
	}
}

function setwinpos(x,y) {
	IE = (document.all)
	NS = (navigator.appName=="Netscape")
	if (IE) {
		xwidth=window.document.body.clientWidth;
		win_x=screen.width-window.document.body.clientWidth;
		win_y=screen.height;
	}
	if (NS) {
		xwidth=window.outerWidth;
		win_x=screen.width-window.outerWidth;
		win_y=screen.height;
	}
	//window.moveTo(win_x-30,0);
	if ( x ) {
		window.resizeTo(x,win_y-50);
	} else {
		window.resizeTo(660,win_y-50);
	}
}

function setwin() {
	if (typeof document.height != 'undefined') {
	    //Firefox & Co
		x = document.width+12;
		y = document.height+40;
	} else if (document.compatMode != 'BackCompat') {
	    // IE
		x = document.documentElement.scrollWidth+4;
		y = document.documentElement.scrollHeight+12;
	} else if (document.body && typeof document.body.scrollHeight != 'undefined') {
		x = document.body.scrollWidth;
		y = document.body.scrollHeight;
	}
	difw = this.document.body.clientWidth;
	//x = this.document.body.scrollWidth;
	difw = x-difw;

	difh = this.document.body.clientHeight;
	//y = this.document.body.scrollHeight;
	difh = y-difh;
	window.resizeTo(x+difw, y+difh);
}

function toggle(section) {
	var sec = document.getElementById(section);
	if (sec.style.display != 'none')  {
		sec.style.display='none';
		if ( document.images[section + "_pic"] ) document.images[section + "_pic"].src=hostname+'pics/arr_down.gif';
		document.cookie = section+"=none";
	} else  {
		sec.style.display='block';
		if ( document.images[section + "_pic"] ) document.images[section + "_pic"].src=hostname+'pics/arr_up.gif';
		document.cookie = section+"=block";
	}
}

function setblocks(){
	if(document.cookie) {
		c = decodeURI(document.cookie);
		var cookies = c.split(";");
		for (var d=0; d<cookies.length; d++ ) {
			var cookie = cookies[d].split('=');
			var sdiv = cookie[0].replace(/ /,"");
			var elem = document.getElementById(sdiv);
			if (elem) {
				elem.style.display = cookie[1];
				document.images[sdiv + "_pic"].src= elem.style.display=='block' ? hostname+'pics/arr_up.gif' : hostname+'pics/arr_down.gif';
			}
		}
	}
}

function owin(url,name,w,h,hstyle) {
	var win;
	var fr = url.indexOf("_FRAME");
	if (!hstyle && fr<0) url=url+"&_FRAME=64";
	win = window.open(url,name,'width='+w+',height='+h+',scrollbars=1,resizable=1');
	win.focus();
	return(win);
}

function vaction(j)   { vsubmit('ACTION',j); }

function vsubmit(i,j) {
	set_var(i,j);
	document.forms[0].submit();
}

function set_var(i,j) {
	var e = document.forms[0].elements[i];
	if ( e ) switch( e.type ) {
		case "checkbox" : if ( j ) e.value=j; e.checked = ( j!="" ); break;
		case "radio"    : for(var k=0; k<e.length; k++) e[k].checked = (e[k].value==j); break;
		case "select"   : for(var k=0; k<e.options.length; k++) e.options[k].selected = (e.options[k].value==j); break;
		default         : e.value=j; break;
	}
}

function opread(i) {
	if ( opener ) o = opener;
	else if ( top && top.opener ) o = top.opener;
	else return('');
	return( o.get_var(i) );
}

function get_var(i) {
	var e = document.forms[0].elements[i];
	var j=0;
	var rv="";
	if ( e && e.length && e.type!="select-one" ) {
		for(j=0;j<e.length; j++) switch(e[j].type) {
			case "checkbox"   : rv=( e[j].checked ? e[j].value : "" ); break;
			case "radio"      : if ( e[j].checked ) rv=e[j].value; break;
			case "select-one" :
			case "select"     : rv=e[j].options[e[j].options.selectedIndex].value; break;
			default           : rv=e[j].value; break;
		}
		return(rv);
	} else if ( e ) switch(e.type) {
		case "checkbox"   : return( e.checked ? e.value : "" ); break;
		case "radio"      : for(var k=0; k<e.length; k++) if ( e[k].checked ) return( e[k].value ); break;
		case "select-one" :
		case "select"     : return( e.options[e.options.selectedIndex].value ); break;
		default           : return( e.value ); break;
	}
	return(0);
}

function opreload() {
	if ( opener.document ) {
		var curl = opener.document.getElementById('curl');
		if ( curl ) {
			opener.document.location.href = curl.value;
		} else {
			opener.document.location.href=opener.document.location.href;
		}
	}
	top.close();
	if ( opener.document ) {
		opener.focus();
	}
}

function opsbmt() {
	if ( opener.document && opener.document.forms.length ) {
		var cfield = document.getElementById('categories');
		var ofield = opener.document.getElementById('fi[categories]');
		var selcat = opener.document.getElementById('SELCAT');
		ofield.value = cfield.value;
		selcat.value = cfield.value;
		opener.vaction('RELOAD');
	}
	top.close();
	opener.focus();
}

function chckcount() {
	var cfield = document.getElementById('categories');
	var ifield = document.getElementById('igncat');
	var acat = [];
	var rmv = "nothing";
	if ( ifield ) rmv = ifield.value;
	if ( cfield.value!="" ) {
		tcat = cfield.value.split(",");
		cnt = 0;
		for ( var z=0; z < tcat.length; z++ ) {
			if ( rmv && tcat[z]!=rmv ) {
				acat[cnt] = tcat[z];
				cnt++;
			}
		}
		if ( acat.length <1 ) {
			alert("Es muß mindestens eine Kategorie gewählt sein!");
			return(false);
		} else {
			return(true);
		}
	} else {
		alert("Es muß mindestens eine Kategorie gewählt sein!");
		return(false);
	}
}

function setcats(id) {
	var tmpcat = [];
	var tcat = [];
	var rmv = "nothing";
	var cfield = document.getElementById('categories');
	var ifield = document.getElementById('igncat');
	var el = document.getElementById('cid['+id+']');
	var acat = [];
	if ( ifield ) rmv = ifield.value;
	if ( cfield.value!="" ) {
		tcat = cfield.value.split(",");
		cnt = 0;
		for ( var z=0; z < tcat.length; z++ ) {
			if ( rmv && tcat[z]!=rmv ) {
				acat[cnt] = tcat[z];
				cnt++;
			}
		}
		if ( acat.length >= maxcat && el.checked ) {
			alert("Maximale Anzahl bereits erreicht!");
			el.checked = false;
			return;
		}
	}
	if ( el.checked ) {
		acat[acat.length] = id;
	} else {
		var c = 0;
		for ( var z=0; z < acat.length; z++ ) {
			if (acat[z]!=id) {
				tmpcat[c] = acat[z];
				c++;
			}
		}
		acat = tmpcat;
	}
	if ( acat.length>1 ) {
		cfield.value = acat.join(",");
	} else if ( acat.length==1 ) {
		cfield.value = acat[0];
	} else {
		cfield.value = "";
	}
}

function resetextfields(frmname) {
	for ( var z=0; z<document.forms[frmname].elements.length; z++) {
		//alert(document.forms[frmname].elements[z].type);
		if (document.forms[frmname].elements[z].type=="text") document.forms[frmname].elements[z].value='';
		if (document.forms[frmname].elements[z].type=="select-one") document.forms[frmname].elements[z].selectedIndex=-1;
		if (document.forms[frmname].elements[z].type=="checkbox") document.forms[frmname].elements[z].checked=false;
	}
	document.forms[frmname].submit();
}

function showinfo(typ) {
	var tabs = [];
	tabs['info']    = typ=='info' ? 'block' : 'none';
	tabs['zeiten']  = typ=='zeiten' ? 'block' : 'none';
	tabs['kontakt'] = typ=='kontakt' ? 'block' : 'none';
	tabs['dia']     = typ=='dia' ? 'block' : 'none';
	var blocks = [];
	blocks[1] = 'info';
	blocks[2] = 'zeiten';
	blocks[3] = 'kontakt';
	blocks[4] = 'dia';
	for ( var i=1; i<=4; i++ ) {
		el = document.getElementById(blocks[i]);
		if ( el ) {
			el.style.display = tabs[blocks[i]];
		}
	}
}

function appendurl(link, append) {
	var urlparams = link.split('#');
	url = urlparams[0]+'&'+append;
	return(url);
}

function checksize(el) {
	var max = 256;
	if(el.value.length > max) {
		el.value = el.value.substring(0,max);
		alert('Maximal '+max+' Zeichen');
	}
}