    var lock=true;
    var e=false;
    var thiswin = window;
    var openpopup = thiswin.open;


    function deactivateUnlock() {
        lock = false;
    }

	function deleteSession() {
	  deactivateUnlock();
	  var wname = "";
	  var woptions = "width=100,height=100";
	  var url = pURL+'/popups/logoutSession.php?&MttgSession='+MttgSession;
  	  openpopup(url,wname,woptions);
	  return true;
	}

    function handleUnload() {
        if (e && lock) {
            var wname = "";
            var woptions = "width=100,height=100";
            var url = pURL+'/popups/logout.php?wpID='+wpID+'&MttgSession='+MttgSession;
            //openpopup(url,wname,woptions);
        }
    }

    function mttg_printme(searchstring) {
        if( !searchstring ) searchstring = location.search;
        sessionstring = 'MttgSession='+MttgSession
        var url = pURL+'/popups/printview.php';
        if( searchstring ) {
            url += searchstring;
            sessionstring = "&"+sessionstring;
        } else {
            sessionstring = "?"+sessionstring;
        }
        if( url.search(/MttgSession=/) == -1 ) url += sessionstring;
        var wname = 'printview';
        var woptions = "dependent=yes,height=400,width=600,hotkeys=false,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no";
        openpopup(url,wname,woptions);
    }

    function mttg_checkForm(formElement, felderzumpruefen, alerttext) {
        if( !felderzumpruefen ) return true;

		var allesgut = true;
		var teilgut = false;

		 for(var pflichtfeld in felderzumpruefen) { //Alle übergebenen Felder anschauen
		 	pflichtfeld = felderzumpruefen[pflichtfeld];
		 	if(typeof(pflichtfeld) == "object") { //Wenn es ein Array ist gibt es wohl ein entweder oder
		 		teilgut = false;
				for (var teilpflicht in pflichtfeld) {
					teilpflicht = pflichtfeld[teilpflicht];
					if(fieldfilled(formElement.elements[teilpflicht]) == true) teilgut = true;
				}
				if(teilgut == false) allesgut = false;
			} else { //ansonsten ist es ein "richtiges" pflichtfeld
				if(fieldfilled(formElement.elements[pflichtfeld]) == false) allesgut = false;
			}
		 }
		 
		 if(allesgut == true) return true;
		 else {
		 	alert(alerttext);
			return false;
		}
    }
	
	function fieldfilled(field) {

		var einfeldchecked;

		if(typeof(field) == "undefined") return true; // wenn es das feld nicht gibt

		if(typeof(field.type) != "undefined") {

			switch(field.type) {
				case "checkbox":
				  	if(!field.checked) return false;
				  	break;
				case "select-one":
				  	einfeldchecked = false;
					for (var i = 0; i < field.options.length; i++) 
						if (field.options[i].selected && field.options[i].value != "") einfeldchecked = true;
					if(!einfeldchecked) return false;
					else return true;
				  	break;
				case "select-multiple":
				  	einfeldchecked = false;
					for(var i=0;i<field.options.length;i++)	if(field.options[i].selected && field.options[i].value != "") einfeldchecked = true;	
					if(!einfeldchecked) return false;
					else return true;
				  	break;
				default:
				  	if(field.value == "") return false;
				  	else return true;
					break;
			}
		} else {
			einfeldchecked = false;
			for(var i=0;i<field.length;i++)	if(field[i].checked) einfeldchecked = true;	
			if(!einfeldchecked) return false;
			else return true;	
		}
	}
	

	function pop(src,width,height) {
		var pop = window.open(src,'pop','width='+width+',height=<'+$height+',scrollbars=yes,resizable=yes,toolbar=no,status=no,left=0,top=0');
		pop.focus();
		return false;
	}
	function changeImage(dir,index) { 
	  var img = document.getElementById(dir);
	  if( img ) img.src = galleryImages[dir][index].src;

	  var text = document.getElementById(dir+'_description');
	  if( text ) {
		while( text.hasChildNodes() ) text.removeChild(text.firstChild);
		text.innerHTML = galleryTexts[dir][index];
	  }

	  var imgs = document.getElementsByTagName('img');
	  for( var i = 0; i < imgs.length; i++ ) {
		var idx = index;
		if( !imgs[i].id || imgs[i].id.substr(0,dir.length+1) != dir+'_' ) continue;
		var direction = imgs[i].id.substr(dir.length+1,4);
		var n = 1;

		if( imgs[i].length > dir.length+5 ) 
		  n = parseInt(imgs[i].id.substring(dir.length+5,imgs[i].length));
		
		switch(direction) {
		  case 'next': idx += n; break;
		  case 'prev': idx -= n; break;
		}
		while ( idx < 0 ) idx += galleryImages[dir].length;
		while ( idx >= galleryImages[dir].length ) idx -= galleryImages[dir].length;
		imgs[i].src = galleryImages[dir][idx].src;
	  }
	}
 
	function putInCart(was,go) {
		
		var field = "";
		var getstring = "";
		var variantenanzahl = document.getElementById("varianten_anzahl_" + was).value;
		var anzahl = document.getElementById("anzahl_" + was).value;
		var warenkorbwpID = document.getElementById("warenkorbwpID").value;

		for(var i = 1; i <= variantenanzahl; i++) {
			var field = document.getElementById("varianten_" + was + "_" + i);
			switch(field.type) {
				case "checkbox":
				  	if(field.checked) getstring = getstring + "&" + field.name + "=1";
				  	break;
				case "radio":
					for(var j=0;j<field.length;j++)	if(field[j].checked) getstring = getstring + "&" + field[j].name + "=" + field[j].value;
				  	break;
				case "select-one":
					for(var j=0;j<field.options.length;j++) if(field.options[j].selected) getstring = getstring + "&" + field.name + "=" + field.options[j].value;
				  	break;
				case "select":
					for(var j=0;j<field.options.length;j++)	if(field.options[j].selected) getstring = getstring + "&" + field.name + "=" + field.options[j].value;
				  	break;
				default:
				  	getstring = getstring + "&" + field.name + "=" + field.value;
					break;
			}
		}
		
		if(window.XMLHttpRequest) {
			http = new XMLHttpRequest();
		} else if(window.ActiveXObject) {
			http = new ActiveXObject("Microsoft.XMLHTTP");
		}
		if(http != null) {
			http.open("GET", "ajax_calls/shop/additem.php?katalogID=" + was + "&anzahl=" + anzahl + "&webID=" + webID + "&warenkorbwpID=" + warenkorbwpID + "&MttgSession=" + MttgSession + getstring, true);
			http.onreadystatechange = function () {
				if (http.readyState == 4) {
					if(go > 0) window.location.href="?newwpID=" + go + "&MttgSession=" + MttgSession + "&webID=" + webID;
					else document.getElementById("Warenkorb").innerHTML = http.responseText;
				}
			};
			http.send(null);
		}
	}
	
	function deleteFromCart(was,go) {
		if(window.XMLHttpRequest) {
			http = new XMLHttpRequest();
		} else if(window.ActiveXObject) {
			http = new ActiveXObject("Microsoft.XMLHTTP");
		}
		if(http != null) {
			http.open("GET", "ajax_calls/shop/deleteitem.php?deleteid=" + was + "&webID=" + webID + "&MttgSession=" + MttgSession, true);
			http.onreadystatechange = function () {
				if (http.readyState == 4) {
					if(go > 0) window.location.href="?newwpID=" + go + "&MttgSession=" + MttgSession + "&webID=" + webID;
					else document.getElementById("Warenkorb").innerHTML = http.responseText;
				}
			};
			http.send(null);
		}		
	}
		
function showText(id) {
 var elm = document.getElementById(id);
 if( elm ) elm.style.display = 'block';
}

function hideText(id) {
 var elm = document.getElementById(id);
 if( elm ) elm.style.display = 'none';
}

function gibtssoviel(bestellt,vorhanden,id) {
	if(vorhanden === false || bestellt <= vorhanden) return true;
	else {
		document.getElementById('anzahl_' + id).value = vorhanden;
		alert("Soviel haben wir leider nicht vorrätig, die Menge wird auf die verfügbare Menge reduziert.");
		return false;
	}
}
