/*Textarea anpassen*/
window.onload = function textarealength() { 
 var t = document.getElementById('bemerkungen');
 var defaultrows=10;
 if (t){
	 t.style.overflow = 'hidden';
	 t.onkeyup = function textarealength() {
		 var nls = this.value.split('\n');
		 var count = nls.length;
		 //for (var i = 0; i < nls.length; ++i) { 
		 //alert(nls[i]);
		 //}
		 if (count > defaultrows)
			this.rows = count;
		 else
			this.rows = defaultrows;
	 };
 };
}; 

/* die maximale Anzahl für den Produktvergleich*/
var MaxAnzahlProduktvergleich = 5;
var __CompareManager = new BasketManager("__CompareManager");

/* Parameter aus der URL auslesen */
function get_url_param( name )
{
	name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");

	var regexS = "[\\?&]"+name+"=([^&#]*)";
	var regex = new RegExp( regexS );
	var results = regex.exec( window.location.href );

	if ( results == null )
		return "";
	else
		return results[1];
}

function liesCookie(name) {
   var keks = document.cookie;

   // Anfangsposition des Name=Wert-Paars suchen
   var posName = keks.indexOf("; " + name + "=");
   if (posName == -1) {
      // vielleicht war's der erste Name in der Liste?
      if (keks.indexOf(name + "=") == 0) posName = 0;
      // nein? dann abbrechen mit Rückgabewert null
      else return null;
   }

   // Anfangs- und Endposition des Krümelwerts suchen
   var wertAnfang = keks.indexOf("=", posName)+1;
   var wertEnde = keks.indexOf(";", posName+1);
   if (wertEnde == -1) wertEnde = keks.length;

   // Krümelwert auslesen und zurückgeben
   var wert = keks.substring(wertAnfang, wertEnde);
   return unescape(wert);
}
/*function move(productID){
	window.location.href = '/index.php?id=79830&productID=' + productID;
}*/
function move2(){
	window.location.href = '/index.php?id=51775';
}

function addProductCompare ( productID, pagereload ){
	//alert(MaxAnzahlProduktvergleich);
	document.cookie ="MaxProduktvergleich="+MaxAnzahlProduktvergleich+"; path=/";
	//alert(liesCookie('MaxProduktvergleich'));
	content = liesCookie('pc_content');
	productID_temp =productID;
	if ((content) && (content.indexOf(productID) != -1)){
		var language = get_url_param('L');
		switch (language) {
		  case "1":
			alert('The selected product is already in the product comparison!');
			break;
		  case "2":
			alert('Le produit choisi se trouve déjà dans le comparative!');
			break;
		  case "3":
			alert('Выбранный продукт уже находится в списке сравнения!');
			break;
		  case "4":
			alert('Zvolený produkt se již nachází v porovnání produktů!');
			break;
		  case "5":
			alert('A kiválasztott termék már benne van a termék összehasonlításban!');
			break;
		  case "6":
			alert('Wybrany produkt znajduje się w tabeli umożliwiającej porównanie produktów!');
			break;
		  default:
			alert('Das ausgewaehlte Produkt befindet sich bereits im Produktvergleich!');
			break;
		}
	}
	else
	{
		if ((liesCookie('Anzahl')>=MaxAnzahlProduktvergleich) && (content.indexOf(productID) == -1) && (productID.indexOf('remove') == -1)){

			document.cookie ="MaxProduktvergleich="+(MaxAnzahlProduktvergleich+1)+"; path=/";
			pagereload = 2;
			//__CompareManager.__addProductCompare(productID);
			//alert(liesCookie('MaxProduktvergleich'));
			//showLoading();
			//self.setTimeout('hideLoading()', 400);
			//self.setTimeout('move(productID_temp)', 500);
		}
		//else {
			__CompareManager.__addProductCompare(productID);
			showLoading();
			self.setTimeout('hideLoading()', 900);
			if (pagereload == 1){
				setTimeout("window.location.reload()", 500);
			}
			else if (pagereload == 2)
			{
				/*neuladen vom Produktvergleich, wenn von der Seite mit zuvielen Produkten*/
				self.setTimeout('move2()', 500);
			}
		//}
	}
}

function getObjectByID (oDocument, sID) {
	if (oDocument.all) {
		return oDocument.all[sID];
	}
	else if (oDocument.getElementById) {
		return oDocument.getElementById(sID);
	}
	else if (oDocument.layers) {
		return oDocument.layers[sID];
	}
}
function m_kp(oEvent, oForm) {
	var key;
	if (window.event || !oEvent.which) {
		key = oEvent.keyCode;
	}
	else if (oEvent) {
		key = oEvent.which;
	}
	if ((key == 13) && (oForm)) {
		oForm.submit();
	}
}
function gotoPageID(sPageID_) {
	var sHRef = document.location.href;
	if (sHRef.indexOf(".html") != -1) {
		var sBaseName = "";
		var iBaseName = sHRef.lastIndexOf("/");
		if (iBaseName != -1) sBaseName = sHRef.substring(iBaseName, sHRef.length);
		
		var uri_els = sBaseName.split(".");
		var sNewURI = sPageID_ + "." + uri_els[1] + ".html";
		document.location.href = sNewURI;
	}
	else {
		var els = [];
		var uri_els = sHRef.split("?");
		if (uri_els[1]){
			uri_els = uri_els[1].split("&");
			for( var i in uri_els ){
				if (typeof uri_els[i] == "String") {
    				    var var_els = uri_els[i].split("=");
				    if( typeof var_els[1] != "undefined" ){
					els[els.length] = {
						"key"   : var_els[0],
						"value" : var_els[1]
					};
				    }
				}
			}
		}
		var bFoundPageID = false;
		var bFoundL = false;
		for( var i in els ){
			if (els[i]['key'] == 'id') {
				els[i]['value'] = sPageID_;
				bFoundPageID = true;
			}
			else if (els[i]['key'] == 'L') {
				bFoundL = true;
			}
		}
		if (!bFoundPageID) {
			els[els.length] = {
				"key"   : 'id',
				"value" : sPageID_
			};
		}
		var uri = sHRef.split("?")[0]+"?";
		for( var i in els ){
			uri+= els[i]['key']+"="+els[i]['value']+"&";
		}
		uri = uri.substr( 0, uri.length-1 );
		document.location.href = uri;
	}
}
function getCookie(oDocument_, sName_) {
	var sCookie = oDocument_.cookie;
	if (!sCookie || (sCookie.length <= 0)) {
		sCookie = window.document.cookie;	
	}
	var iStart = sCookie.indexOf(sName_+"=");
	var iLen = iStart+sName_.length+1;
	if ((!iStart) && (sName_ != sCookie.substring(0,sName_.length))) {
		return null;
	}
	if (iStart == -1) {
		return null;
	}
	var iEnd = sCookie.indexOf(";",iLen);
	if (iEnd == -1) iEnd = sCookie.length;
	return unescape(sCookie.substring(iLen,iEnd));
}
function getBasketEntryCount(oDocument_) {
	var sBasketEntryCount = getCookie(oDocument_, 'maico_amz_entries');
	if (!sBasketEntryCount) {
		sBasketEntryCount = getCookie(oDocument_, 'maico_mz_entries');
	}
	
	if (sBasketEntryCount) {
		oDocument_.write("["+sBasketEntryCount+"]");
	}
	else {
		var oTimeOut = self.setTimeout( 'setBasketEntryCount()', 2000 );
	}
}
function setBasketEntryCount() {
	var sBasketEntryCount = getCookie(document, 'maico_amz_entries');
	if (!sBasketEntryCount) {
		sBasketEntryCount = getCookie(document, 'maico_mz_entries');
	}
	if (sBasketEntryCount) {
		var oMZCntID = getObjectByID(document, "mz");
		oMZCntID.innerHTML = "["+sBasketEntryCount+"]";
	}
}
function saveBasket(oDocument_) {
	var oSF = oDocument_.forms['save'];
	if (oSF) {
		oSF.submit();
	}
	else {
	}
}
function showLoading() {
	try {
		var oL = document.getElementById('lContH');
		if (!oL) return;
		var oH = document.getElementsByTagName('BODY')[0];
		oL.style.height = oH.scrollHeight;
		document.getElementById("lCont").style.display = "";
	} catch (e) {
	}
}
function hideLoading() {
    var oL = document.getElementById('lCont');
    if (!oL) return;
    oL.style.display = "none";
}
function addToBasket(sFormID_) {
	if (document) {
		var els = [];
		var uri_els = document.location.href.split("?");
		if (uri_els[1]){
			uri_els = uri_els[1].split("&");
			for( var i in uri_els ){
			    if (typeof uri_els[i] == "String") {
				var var_els = uri_els[i].split("=");
				if( typeof var_els[1] != "undefined" ){
					els[els.length] = {
						"key"   : var_els[0],
						"value" : var_els[1]
					};
				}
			    }
			}
		}
		var bFoundL = false;
		var sLangID = '0';
		for( var i in els ){
			if (els[i]['key'] == 'L') {
				bFoundL = true;
				sLangID = els[i]['value'];;
			}
		}
		var oSF = document.forms[sFormID_];
		if (oSF) {
			showLoading();
			var sQnt = oSF.qnt.value;
			if (!sQnt) {
				var sQnt1=oSF.qnt[0].value;
				var sQnt2=oSF.qnt[1].value;
				sQnt = "1";
				if (sQnt1!=1) sQnt = sQnt1;
				if (sQnt2!=1) sQnt = sQnt2;
			}
			if (oSF.stypeno) {
				var sTypeno = oSF.stypeno.value;
				basket_add_sfix(sQnt, sTypeno, sLangID);
				self.setTimeout('hideLoading()', 900);
			}
			else if (oSF.csv) {
				var sCSV = oSF.csv.value;
				var sBermerkungen = oSF.bemerkungen.value;
				basket_add_ll(sCSV, sLangID, sBermerkungen);
				//alert(oSF.bemerkungen.value);
				self.setTimeout('hideLoading()', 900);
			}
			else {
				var sDBID = oSF.dbid.value;
				var sType = encodeURI(oSF.type.value);
				var sPTyp = encodeURI(oSF.ptyp.value);
				var sName = encodeURI(oSF.name.value);
				var sTypeno = encodeURI(oSF.typeno.value);
				var sPDF = encodeURI(oSF.pdf.value);
				var sPrice = oSF.price.value;
				var sSorti = "";
				if (oSF.Sortiment) {
				    sSorti = oSF.Sortiment.value;
				    //alert(sSorti);
				}
				var aArgArr = new Array(sPrice, sSorti);
				basket_add(sQnt, sDBID, sType, sPTyp, sName, sTypeno, sPDF, aArgArr);
				self.setTimeout('hideLoading()', 900);
			}
		}
		else {
		}
	}
}

function __invAction(oDocument_, sActionName_) {
	var oSF = oDocument_.forms['save'];
	if (oSF) {
		var oSaveMailOffer = getObjectByID(oDocument_, 'action');
		if (oSaveMailOffer) {
			oSaveMailOffer.value = sActionName_;
			oSF.action.value = sActionName_;
			oSF.submit();
		}
	}
}
function clearBasket(oDocument_) {
	__invAction(oDocument_, 'clearBasket');
}
function sendMailOffer(oDocument_) {
	__invAction(oDocument_, 'sendMailOffer');
}
function sendMailRequest(oDocument_) {
	__invAction(oDocument_, 'sendMailRequest');
}
function createOfferTexts(oDocument_) {
	__invAction(oDocument_, 'createOfferTexts');
}
function createTenderTexts(oDocument_) {
	__invAction(oDocument_, 'createTenderTexts');
}
function createTenderTextsGAEB(oDocument_) {
	__invAction(oDocument_, 'createTenderTextsGAEB');
}
function createTenderTextsELDA(oDocument_) {
	__invAction(oDocument_, 'createTenderTextsELDA');
}
function createDownload(oDocument_) {
	__invAction(oDocument_, 'createDownload');
}
function storeBasketList(oDocument_) {
	__invAction(oDocument_, 'storeBasketList');
}
function showBasketUpload(oDocument_) {
	var oUploadDiv = getObjectByID(oDocument_, "MZUploadForm");
	if (oUploadDiv) {
		if (!oUploadDiv.style.display || (oUploadDiv.style.display=="none")) {
			oUploadDiv.style.display = "block";
		}
		else {
			oUploadDiv.style.display = "none";
		}
	}
}
function changeCBVal(oBtn) {
	if (oBtn && oBtn.id) {
		oBtn.value = oBtn.checked;
	}
}
function BasketManager(obj_name){
	this.objName = obj_name;
	this.is_ie = navigator.userAgent.indexOf("MSIE")!=-1;
	
	this._sPrice = "0";
	this._sSorti = "";
	this.basketFile = "/basket/basket.php";
	
	this.addItem = function(sQnt_, sType_, sPTyp_, sName_, sTypeno_, sPDF_, sPrice_) {
		this.__addItem(sQnt_, sType_, sPTyp_, sName_, sTypeno_, sPDF_, sPrice_);
	};
	
	this.addItemSFix = function(sQnt_, sTypeno_, sLangID_) {
		this.__addItemSFix(sQnt_, sTypeno_, sLangID_);
	};

	this.addItemLL = function(sCSV_, sLangID_, sBemerkungen_) {
		this.__addItemLL(sCSV_, sLangID_, sBemerkungen_);
	};

	this.request;
	this.__initRequest = function(){
		try {
			this.request.abort();
		}
		catch(e) {}
		
		try {
			this.request = new XMLHttpRequest();
		}
		catch(e) {
			var msxml_names = [
				'MSXML2.XMLHTTP.5.0',
				'MSXML2.XMLHTTP.4.0',
				'MSXML2.XMLHTTP.3.0',
				'MSXML2.XMLHTTP',
				'Microsoft.XMLHTTP'
			];
			for( i in msxml_names ){
				try{
					this.request = new ActiveXObject( msxml_names[i] );
				} catch(e){}
			}
		}
		if (!this.request) {
			alert('ActiveX-Elements should be activated in your security-settings.');	
			return false;
		}
		return true;
	};
	
	this.__addItem = function(sQnt_, sDBID_, sType_, sPTyp_, sName_, sTypeno_, sPDF_) {
		if (!this.__initRequest()) {
			return false;
		}
		
		this.request.onreadystatechange = new Function( this.objName+".__addItemOnReadyHandler()" );
		var sRnd = "&rnd=" + Math.round(100000 * Math.random());
		var sRequest = sRnd + "&qnt=" + sQnt_ + "&dbid=" + sDBID_ + "&type=" + sType_ + "&ptyp=" + sPTyp_ + "&name=" + sName_ +
						"&typeno=" + sTypeno_ + "&pdf=" + sPDF_ + "&price=" + this._sPrice + "&Sortiment=" + this._sSorti;
		this.request.open("GET", this.basketFile+"?a=addItemJS"+sRequest);
		this.request.send(null);
	};
	
	this.__addItemSFix = function(sQnt_, sTypeno_, sLangID_) {
		if (!this.__initRequest()) {
			return false;
		}
		this.request.onreadystatechange = new Function( this.objName+".__addItemOnReadyHandler()" );
		var sRnd = "&rnd=" + Math.round(100000 * Math.random());
		var sRequest = sRnd + "&qnt=" + sQnt_ + "&stypeno=" + sTypeno_ + "&L=" + sLangID_;
		this.request.open("GET", this.basketFile+"?a=addItemJS"+sRequest);
		this.request.send(null);
	};

	this.__addItemLL = function(sCSV_, sLangID_, sBemerkungen_) {
		if (!this.__initRequest()) {
			return false;
		}
		this.request.onreadystatechange = new Function( this.objName+".__addItemOnReadyHandler()" );
		var sRnd = "&rnd=" + Math.round(100000 * Math.random());
		var sRequest = sRnd + "&qnt=1&csv=" + sCSV_ + "&L=" + sLangID_ + "&bemerkungen=" + sBemerkungen_;
		this.request.open("GET", this.basketFile+"?a=addItemJS"+sRequest);
		this.request.send(null);
	};
	
	this.__addProductCompare = function (productID) {
		if (!this.__initRequest()) {
			return false;
		}
		this.request.onreadystatechange = new Function( this.objName+".__addItemOnReadyHandler_compare()" );

		var sRequest = "productID=" + productID;
		//alert(sRequest);
		this.request.open("GET", "/productcompare/compare.php"+"?"+sRequest);
		this.request.send(null);
	};

	this.__addItemOnReadyHandler_compare = function(){
		//if (this.request.readyState == 4) {
			//if (this.request.status == 200) {
		//window.status=String(this.request.status)+","+String(this.request.readyState);
		if (this.request.readyState == 4) {
			if (this.request.status == 200) {
					var oMZQnt = getObjectByID(document, "pc");
					if (oMZQnt) {
						var sBasketEntryCount = this.request.responseText;
						sBasketEntryCount = sBasketEntryCount.replace(/ /g, '');
						//if (sBasketEntryCount == 5)
						//	sBasketEntryCount = sBasketEntryCount+" - voll"
						if (sBasketEntryCount) {
							oMZQnt.innerHTML = "["+sBasketEntryCount+"]";
						}
					}
			}
			else {
				alert("Der Server ist nicht erreichbar:"+this.request.responseText);
			}
		}
	};
		
	this.__addItemOnReadyHandler = function(){
		//if (this.request.readyState == 4) {
			//if (this.request.status == 200) {
		//window.status=String(this.request.status)+","+String(this.request.readyState);
		if (this.request.readyState == 4) {
			if (this.request.status == 200) {
				if (this.request.responseText.indexOf("|")>0) {
					var oMZQnt = getObjectByID(document, "mz");
					if (oMZQnt) {
						var sBasketEntryCount = this.request.responseText.split('|')[1];
						if (sBasketEntryCount) {
							oMZQnt.innerHTML = "["+sBasketEntryCount+"]";
						}
					}
				}
			}
			else {
				alert("Der Server ist nicht erreichbar:"+this.request.responseText);
			}
		}
	};
};

var __basketManager = new BasketManager("__basketManager");
function basket_add(sQnt_, sDBID_, sType_, sPTyp_, sName_, sTypeno_, sPDF_, aPriceAndSorti_){
	var sPrice = aPriceAndSorti_[0];
	var sSorti = aPriceAndSorti_[1];
	__basketManager._sPrice = sPrice;
	__basketManager._sSorti = sSorti;
	if (sPrice == "0,00") {
		__basketManager._sPrice = "0";
	}
	__basketManager.addItem(sQnt_, sDBID_, sType_, sPTyp_, sName_, sTypeno_, sPDF_);
}

function basket_add_sfix(sQnt_, sTypeno_, sLangID_){
	__basketManager.addItemSFix(sQnt_, sTypeno_, sLangID_);
}

function basket_add_ll(sCSV_, sLangID_, sBemerkungen_){
	__basketManager.addItemLL(sCSV_, sLangID_, sBemerkungen_);
}

function errormessage()
{
    document.getElementById("checkbox-error").style.display="";
}
