var query=null;var charCountAtKeyDown=0;var isDeepUrl=0;var isLogedIn=false;var keepDDOpen=false;var currRes=null;var pending=false;
function setCCAKD(x){charCountAtKeyDown=x.value.length;}
function hideDD(){if(!keepDDOpen)document.getElementById('result_box').style.display="none";}
function onOv(){keepDDOpen=true;}function onOu(){keepDDOpen=false;}
function postQuery(x, y) {
    y = true;
    var quy = x.value;
    //if (quy.lenght < 3 || quy.indexOf(" ") > 0) { document.getElementById('result_box').style.display = "none"; return; }
    if (quy.lenght < 3) { document.getElementById('result_box').style.display = "none"; return; }
    document.getElementById('progdetails_box').style.display='none';
	//clearDD();
	query = quy;
    query = query.replace("https","");
    query = query.replace("http","");
    query = query.replace("://","");
    query = query.replace("www","");
    if(query.match(/^\./))
        query = query.substring(query.length,1);
    if(query.length<3){document.getElementById('result_box').style.display="none";return;}
    isDeepUrl = query.length - charCountAtKeyDown > 4 && quy.substr(0, 4) == "http" ? true : false;
    charCountAtKeyDown = 0;
    var idl = isDeepUrl ? "1" : "0";
    var qs = isDeepUrl ? quy : query;
    var p = getEventItmLUC(x);
    document.getElementById('result_box').style.left = p[0]-2;
    document.getElementById('result_box').style.top = p[1]+25;
    msgXmlhttp.open("POST","/my/searchShops.php",true);
    msgXmlhttp.onreadystatechange=updndd;
    msgXmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    msgXmlhttp.send("p="+idl+"&q="+encodeURIComponent(qs));
    query = quy;
    pending=true;
    setIdle();
}
function upd(){
    var box_tab = document.getElementById("result_box_table").firstChild;
	clearDD();
	var provString=null;
	var typ_last=null;
	var shop_mh=null;
	var isDirectRefer = false;
	for (var i = 0; i < currRes.length; i++)
	{
		isDeepUrl = currRes[i].attributes.getNamedItem("dl").value == "1" ? true : false;
		isDirectRefer = currRes[i].attributes.getNamedItem("dr").value == "1" ? true : false;
		var dl = isDeepUrl ? query : currRes[i].childNodes[0].firstChild.nodeValue;
		var cb = currRes[i].attributes.getNamedItem("s").value;
		var typ = currRes[i].attributes.getNamedItem("t").value; // 1=Treffer in Shopname | 2=Treffer in Keyword
		var URLEncoded = encodeURIComponent(dl);

		// Typwechsel -> Zwischenzeile ausgeben
		if(typ_last!=null && typ_last!=typ)
		{
			var trBreak = document.createElement("tr");
			var tdBreak = document.createElement("td");
			tdBreak.colSpan = 6;
			tdBreak.innerHTML="Weitere Shops zum Thema: \""+document.submiturl.longurl.value+"\"";
			tdBreak.style.fontSize = "11px";
			tdBreak.style.fontWeight = "bold";
			tdBreak.style.textAlign = "center";
			//tdBreak.style.backgroundColor = "#FEFBC0";
			tdBreak.style.backgroundImage = "url(/_images/r_search_dropdown_bg_sel.png)";
			tdBreak.style.backgroundPosition = "top";
			tdBreak.style.borderTop = "1px dotted #CCCCCC";
			tdBreak.style.borderBottom = "1px dotted #CCCCCC";
			trBreak.appendChild(tdBreak);
			box_tab.appendChild(trBreak);
		}

		var tr = document.createElement("tr");
		var tdCountry = document.createElement("td");
		var tdShopName = document.createElement("td");
		var tdCommissionVar = document.createElement("td");
		var tdCommissionFix = document.createElement("td");
		var tdCashBack = document.createElement("td");
		var tdRefer = document.createElement("td");
		
		tr.onmouseover = function (e) { onOv(); };
		tr.onmouseout = function (e) { onOu(); };
		shop_mh	=	currRes[i].attributes.getNamedItem("mh").value;
		tr.id = currRes[i].attributes.getNamedItem("mh").value;
		tr.name = currRes[i].getElementsByTagName("detail")[0].firstChild.nodeValue;
		if(isDeepUrl)
		{
			tr.onclick = function (e) { location.href = this.name + "?longurl=" + URLEncoded; }
		}else{
			tr.onclick = function (e) { location.href = this.name; }
		}
				
		tr.style.cursor = "pointer";
		tr.style.posTop = i;
		tdCountry.className = "result_box_flags";
		tdShopName.className = "result_box_shopname";
		tdShopName.style.paddingLeft = "5px";
		tdCommissionVar.className = "result_box_commission";
		tdCommissionVar.noWrap = true;
		tdCommissionFix.className = "result_box_commission";
		tdCommissionFix.noWrap = true;
		tdCashBack.className = "result_box_icons";
		tdCashBack.style.textAlign = "right";
		tdRefer.className = "result_box_icons";
		tdRefer.style.textAlign = "right";
		tdCountry.style.width = "10%";
        
        // Country
		if (currRes[i].getElementsByTagName("country")[0].firstChild != null)
		{
			var countries = currRes[i].getElementsByTagName("country")[0].firstChild.nodeValue;
			var arrCountry = countries.split(",");
			for (j = 0; j < arrCountry.length; j++)
			{
				var imgb = document.createElement("img");
				imgb.src = "/_images/flags/" + arrCountry[j] + ".gif";
				imgb.style.paddingRight = "2px";
				imgb.title = arrCountry[j];
				tdCountry.appendChild(imgb);
				if (j > 1) break;
			}
		}else{
			tdCountry.innerHTML='&nbsp;';
		}
		
		// Name
		var a1 = document.createElement("a");
		a1.href = "javascript:void(0)";
		a1.style.textDecoration="none";
		//a1.style.fontWeight="bold";
		a1.onmouseover = function (e) { this.style.textDecoration="underline"; onOv(); };
		a1.onmouseout = function (e) { this.style.textDecoration = "none"; onOu(); };
		//a1.appendChild(document.createTextNode(currRes[i].getElementsByTagName("name")[0].firstChild.nodeValue));
		a1.innerHTML = currRes[i].getElementsByTagName("name")[0].firstChild.nodeValue;
		tdShopName.appendChild(a1);

		// Cashback
		if(cb=="1")
		{
			var imcb = document.createElement("img");
			imcb.src = "/_images/icons/icon_r_basket_empty_16x16.gif";
			imcb.title = "Jetzt direkt selbst nutzen.";
			var aCashBack = document.createElement("a");
			aCashBack.href = "/make-money/shop-self.html?h="+shop_mh;
			aCashBack.appendChild(imcb);	
			tdCashBack.appendChild(aCashBack);
		}else{
			tdCashBack.innerHTML='&nbsp;';
		}
		
		var imrefer = document.createElement("img");
		imrefer.src = "/_images/icons/icon_refer_16x16.gif";
		imrefer.title = "Jetzt direkt weiterempfehlen.";
		var aRefer = document.createElement("a");
		aRefer.href = "/make-money/shop-refer.html?h=" + shop_mh + "&longurl=" + URLEncoded;
		aRefer.appendChild(imrefer);	
		tdRefer.appendChild(aRefer);

        var provFix = parseFloat(currRes[i].attributes.getNamedItem("fi").value);
        var provVar = parseFloat(currRes[i].attributes.getNamedItem("pe").value);

        if (provVar > 0)
        {
            tdCommissionVar.appendChild(document.createTextNode(provVar.toFixed(1).replace('.', ',') + " %"));
        }
        else
        {
            tdCommissionVar.appendChild(document.createTextNode("---"));
            tdCommissionVar.style.color = "#cccccc";
        }

        if (provFix > 0)
        {
            tdCommissionFix.appendChild(document.createTextNode(provFix.toFixed(2).replace('.', ',') + " €"));
        }
        else
        {
            tdCommissionFix.appendChild(document.createTextNode("---"));
            tdCommissionFix.style.color = "#cccccc";
        }

		tr.appendChild(tdShopName);
		tr.appendChild(tdCountry);
		tr.appendChild(tdCommissionVar);
		tr.appendChild(tdCommissionFix);
		tr.appendChild(tdCashBack);
		tr.appendChild(tdRefer);
	    
		box_tab.appendChild(tr);
		
		typ_last = typ;
	}
	

	// Erweiterte Suche & Direkt Weiterempfehlen
	var trMore = document.createElement("tr");
	trMore.onmouseover = function (e) { onOv(); };
	trMore.onmouseout = function (e) { onOu(); };
	var tdMore = document.createElement("td");
	tdMore.colSpan = 6;
	var aMore = document.createElement("a");
		
	if(isDirectRefer==true)
	{
		aMore.href = "/make-money/shop-refer.html?h="+shop_mh+"&longurl=" + URLEncoded;
		aMore.appendChild(document.createTextNode("Direkt weiterempfehlen"));	
	}else{
		aMore.href = "/make-money/shops-all.html?cat=0&country=12%2C40%2C53&shop=" + document.submiturl.longurl.value;
		aMore.appendChild(document.createTextNode("Erweiterte Suche"));	
	}

	aMore.style.fontSize="11px";
	tdMore.appendChild(aMore);
	tdMore.style.fontSize = "11px";
	tdMore.style.fontWeight = "bold";
	tdMore.style.textAlign = "center";
	tdMore.style.backgroundImage = "url(/_images/r_search_dropdown_bg_sel.png)";
	tdMore.style.backgroundPosition = "top";
	tdMore.style.borderTop = "1px dotted #CCCCCC";
    if(!isDirectRefer)
	    trMore.appendChild(tdMore);
	box_tab.appendChild(trMore);

			
	document.getElementById('result_box').style.display="block";
}
function clearDD()
{
    var box_tab=document.getElementById("result_box_table").firstChild;
	while(box_tab.childNodes.length)
		box_tab.removeChild(box_tab.firstChild);
}
function showNoAff()
{
    hideAll();
    document.getElementById('pd_p_noafflink').style.display='block';
    var p = getEventItmLUC(document.getElementById('longurl'));
    document.getElementById('progdetails_box').style.left = p[0]-6;
    document.getElementById('progdetails_box').style.top = p[1]+25;
    document.getElementById('progdetails_box').style.display = 'block';
}
function updndd(){
    if(msgXmlhttp.readyState==4&&msgXmlhttp.status==200){
        unsetIdle();
		document.getElementById('result_box').style.display="none";
		currRes = msgXmlhttp.responseXML.getElementsByTagName("x");
		isLogedIn = msgXmlhttp.responseXML.getElementsByTagName("p")[0].attributes.getNamedItem("k").value == "1" ? true : false;
		hideDD();
		if (currRes.length > 0)
        {
		    var isFirstKeyword = currRes[0].attributes.getNamedItem("t").value == "1" ? true : false;
            if (isDeepUrl)
            {
                if (isFirstKeyword)
                {
		            upd();
                }
		        else
                {
                    showNoAff();
                }
		    }
            else
            {
		        upd();
            }
		}
		else
        {
		    showNoAff();
        }
        onOu();
    }
}
function getProvString(i){
    var provfix = "";
    var provvar = "";
    var isfix = false;
    var isvar = false;
    var provfull = "";
    if(parseFloat(currRes[i].attributes.getNamedItem("fi").value)!=0.0){provfix	= parseFloat(currRes[i].attributes.getNamedItem("fi").value).toFixed(2).replace('.',',') + " €"; isfix=true;}
    if(parseFloat(currRes[i].attributes.getNamedItem("pe").value)!=0.0){provvar = parseFloat(currRes[i].attributes.getNamedItem("pe").value).toFixed(1).replace('.',',') + " %"; isvar=true;}
    if(isfix){provfull = provfix; if(isvar){provfull = provfull + " + ";}}
    if(isvar){provfull=provfull+provvar;}
    if(!isfix && !isvar){provfull="?";}else{provfull = provfull;}
    return document.createTextNode(provfull);
}
function setURL(url){
    document.getElementById('result_box').style.display="none";
	document.submiturl.longurl.value=url;
	document.submiturl.longurl.focus();
	postQuery(document.submiturl.longurl,true);
}
function hideAll(){
    document.getElementById('pd_p_noafflink').style.display='none';
    document.getElementById('result_box').style.display='none';
}
function setIdle(){
    if(pending)
    document.getElementById('longurl').style.backgroundImage="url(/_images/loading.gif)";
}
function unsetIdle(){
    pending=false;
    document.getElementById('longurl').style.backgroundImage="";
}
function getOptionHelp(key)
{
	switch(key)
	{
		case "ownurl":
			return "Hier kannst du mit einem eigenen Schlagwort einen individuellen <i>Bee5</i>-Link erzeugen. Das Schlagwort muss dazu natürlich noch frei sein. Wenn du z.B. \"wetter\" angibst, lautet der Link \"http://bee5.de/wetter\". Eigene Schlagwörter können zwischen 5 und 30 Zeichen lang sein. Sollte dein gewünschtes Wort bereits vergeben sein, versuch es doch einfach mit einer anderen Kurz-Domain (unter \"Domain\").";
			break;
		case "domain":
			return "Neben bee5.de bieten wir noch weitere Kurz- und Themen-Domains an. Wähle hierzu einfach eine der verfügbaren Domains aus.";
			break;
		case "splash":
			return "Aus technischen Gründen müssen wir bei einigen der URLs bei denen du Geld verdienen kannst, für 2 Sekunden eine Zwischenseite einblenden. Nur mit dieser Zwischenseite können wir gewährleisten, dass mögliche Provisionen auch korrekt erfasst werden. Wenn du unbedingt auf diese Zwischenseite verzichten möchtest, wähle bitte \"nein\". Bitte beachte, dass in diesem Fall dann keine Provisionen möglich sind!";
			break;
		case "share":
			return "Da man mit Freunden gerne teilt, kannst du bei jedem Bee5-Link festlegen wer den Bargeld-Bonus in welchem Verhältnis erhalten soll. So kannst du z.B. einstellen, dass du und dein(e) Freund(in) euch den Bonus zu 50:50 teilt, oder dass du den Bonus komplett erhalten möchtest - du hast die Wahl.";
			break;
		case "spamprotect":
			return "Um automatisierte Eintragungen zu vermeiden, besitzt <i>Bee5</i> einen Schutz vor Spam. Dieser Schutz prüft die Anzahl der Eintragungen in einem gewissen Zeitintervall. Bitte bestätige die Sicherheitsabfrage fortzufahren.";
			break;
		case "commission":
			return "Die angezeigte Provision stellt lediglich einen Richtwert dar. Der Richtwert ist ein Mittelwert aus unseren bisherigen Erfahrungen mit dem Anbieter und hängt von vielen unterschiedlichen Kriterien wie z.B. der gekauften Produkte, Neukundenaktionen uvm. ab. Da wir nicht wissen, welche Produkte eingekauft werden und in welchem Verhältnis du zu dem gewählten Partner stehst (z.B. Stammkunde, Neukunde etc.), können wir im Vorfeld auch keine exakte Angabe über die Höhe der möglichen Provision machen. Aus diesem Grund reichen wir immer mindestens 70% der Provision die Bee5 vom Partner erhält weiter.";
			break;
	}
}

