
//	***	Allgemeine Variablen für die Suche
var data_list;
var frm = document.forms[0];
var loc = location.pathname;
//           ***           var dbpfad = loc.substr(0, loc.indexOf('.nsf')+4) + "/";
var dbpfad = "/lv/cms.nsf/";
var theURL = dbpfad + "web_suche_ft_ajax";
var protokolldb = "";
var currlang = frm.curr_lang.value;
var theQuery = "";
var orgValue = "";



//	***	HTML-Elemente für die Darstellung
var ladebalken = document.getElementById("ajax_ladebalken");
var layer = document.getElementById("data_list");

//	***	Antriggern der Suchfunktion
function startSuche() {
	document.getElementById('lookup').value = document.getElementById('lookup_tmp').value;
}

//	***	Ausführen der AJAX-Query
function datenladen(element, value) {
	ladebalken.style.display = "block";
	var theQuery = "";
	var fuzzysearch = "";
	theQuery = value;
	orgValue = value;
	theQuery = theURL + 'OpenAgent&sprache='+ currlang +'&query=' + value;

	if(frm.search_fuzzy.checked == true) {
		fuzzysearch = "1";
	} else {
		fuzzysearch = "0";
	}


	if (orgValue.length > 2) {
		if(frm.sort_alpha.checked == true) {
			theQuery += '&sort=1'	
			frm.thequery.value = theQuery;
			new Ajax.Request(theURL + '?OpenAgent&sort=1&sprache=' + currlang + '&ftsearch=' + fuzzysearch + "&rnd=" + Math.random(), {method:'get', onSuccess:loadList, parameters: 'query=' + value+""})
		} else {
			theQuery += '&sort=2'
			frm.thequery.value = theQuery;
			new Ajax.Request(theURL + '?OpenAgent&sort=2&sprache=' + currlang + '&ftsearch=' + fuzzysearch + "&rnd=" + Math.random(), {method:'get', onSuccess:loadList, parameters: 'query=' + value+""})
		}
	}

}

function LeftBackString(fullString, subString) {
   if (fullString.lastIndexOf(subString) == -1) {
      return "";
   } else {
      return fullString.substring(0, fullString.lastIndexOf(subString));
   }
}


function getDBTitle(strDBPfad) {
	var ergebnis = "Extranet";
	switch(strDBPfad) {

		case "/lv/cms": ergebnis = "Internet"
		break;

		case "/lv/agv": ergebnis = "Extranet / Rundschreiben"
		break;



	}

	return ergebnis
}



//	***	Parsen des JSON-Textes und Darstellen als HTML
function loadList(originalRequest) {
		var i;
		var j;
		var dbpf = "";
		var tmp = "";
		var outStr = "";
		data_list = eval('(' + originalRequest.responseText + ')');

		i = 0;
		j = 0;

		if (data_list.data.length==0){
			ladebalken.style.display = "none";			
		}


		//	***	Ausgabedefinition 		
		tmp +="";
		data_list.data.each(
			function(data){

				//	***	Unterscheidung, ob Suchergebnis oder SubSuchergebnis
				if(data.bezeichnung != "") {
					// alert(dbpf + "|" + LeftBackString(data.url, ".nsf/"));
					if (dbpf != LeftBackString(data.url, ".nsf/")) {
						dbpf = LeftBackString(data.url, ".nsf/");

						tmp += "<div style=\"width:954px; border:1px solid #023202; background-color: #EDF7D4; margin:15px 0 5px 0; padding:4px;color:#023202;\"><b>" + getDBTitle(dbpf) + "</b></div>";
					}

					if((data.art == "subergebnis" & data.pos == "1") | (data.art == "subergebnis" & data.pos == "first_and_last_element")) {

						//	***	1. Element in Subergebnisse (Header für Subergebnisse hinzufügen)
						tmp += "<ul>Eingebunden in:";
						if(data.typ == "medien" | data.typ == "dokument") {
							tmp += "<li><img src=\"" + frm.img_save.value + "\"> <a href=\"" + data.url + "\" target=\"_blank\">" + data.bezeichnung + "</a></li>"
						} else {
							tmp += "<li><img src=\"" + frm.img_doc.value + "\"> <a href=\"" + data.url + "?OpenDocument&highlight=" + orgValue + "\" target=\"_blank\">" + data.bezeichnung + "</a></li>"
						}
						j++

						//	***	Hinzufügen Abschlusszeile
						if(data.pos == "first_and_last_element") {
							tmp += "</ul>";
						}
					} else {
						
						if(data.art == "subergebnis" & data.pos == "last_element") {
							//	***	Letztes Element in Subergebnisse (Footer hinzufügen)
							if(data.typ == "medien" | data.typ == "dokument") {
								tmp += "<li><img src=\"" + frm.img_save.value + "\"> <a href=\"" + data.url + "\" target=\"_blank\">" + data.bezeichnung + "</a></li>"
						
							} else {
								tmp += "<li><img src=\"" + frm.img_doc.value + "\"> <a href=\"" + data.url + "?OpenDocument&highlight=" + orgValue + "\" target=\"_blank\">" + data.bezeichnung + "</a></li>"
						}
							j++
							tmp += "</ul>";
						} else {
							
							if(data.art == "subergebnis") {
								if(data.typ == "medien" | data.typ == "dokument") {
								alert("7")
									tmp += "<li><img src=\"" + frm.img_save.value + "\"> <a href=\"" + data.url + "\" target=\"_blank\">" + data.bezeichnung + "</a></li>"
								} else {
									tmp += "<li><img src=\"" + frm.img_doc.value + "\"> <a href=\"" + data.url + "?OpenDocument&highlight=" + orgValue + "\" target=\"_blank\">" + data.bezeichnung + "</a></li>"
								}
								j++
							} else {
								if(frm.anhaenge.checked == true) {
									if(data.typ == "medien" | data.typ == "dokument") {
										tmp += "&raquo; <img src=\"" + frm.img_save.value + "\"> <a href=\"" + data.url + "\" target=\"" + data.target + "\">" + data.bezeichnung + " (" + data.score + "%)</a><br>"
										j++
									}
								} else {
									if(data.typ == "medien" | data.typ == "dokument") {
										tmp += "&raquo; <img src=\"" + frm.img_save.value + "\"> <a href=\"" + data.url + "\" target=\"_blank\">" + data.bezeichnung + " (" + data.score + "%)</a><br>"
									} else {
										if(data.typ == "Merkbl&auml;tter" || data.typ == "Mustervertrag" || data.typ == "Betriebsvereinbarung") {
											if(data.typ == "Betriebsvereinbarung") {
												tmp += "&raquo; <img src=\"" + frm.img_doc.value + "\"> <a href=\"/lv/cms.nsf/id/pa_csai7f4dm7.html?OpenDocument&RSID=" + data.url.split("/")[4] + "&highlight=" + orgValue + "\" target=\"_blank\">"  + data.bezeichnung + " (" + data.score + "%)</a><br>"
											} else {
												tmp += "&raquo; <img src=\"" + frm.img_doc.value + "\"> <a href=\"/lv/cms.nsf/id/pa_csai7f4dgx.html?OpenDocument&RSID=" + data.url.split("/")[4] + "&highlight=" + orgValue + "\" target=\"_blank\">"  + data.bezeichnung + " (" + data.score + "%)</a><br>"
											}
										} else {
											if(data.typ == "Rundschreiben") {
												tmp += "&raquo; <img src=\"" + frm.img_doc.value + "\"> <a href=\"/lv/cms.nsf/id/pa_rundschreiben.html?OpenDocument&RSID=" + data.url.split("/")[4] + "&highlight=" + orgValue + "\" target=\"_blank\">"  + data.bezeichnung + " (" + data.score + "%)</a><br>"
											} else {
												tmp += "&raquo; <img src=\"" + frm.img_doc.value + "\"> <a href=\"" + data.url + "?OpenDocument&highlight=" + orgValue + "\" target=\"_blank\">"  + data.bezeichnung + " (" + data.score + "%)</a><br>"
											}
										}
									// alert(tmp)
}
									j++
								}
							}
						}
					}


					if(data.url.indexOf("lv/cms") < 1) {
						} else {
						dbpf = 	LeftBackString(data.url, ".nsf/");
					}
				}

			}
		);

		//	***	Alle Suchanfragen, die länger als 2 Zeichen haben protokollieren
		if(theQuery.length > 2 & protokolldb != "") {
			tmp += "<img src=\"" + protokolldb + "suchanfragen.gif?OpenForm&user=" + frm.username.value + "&db=" + dbpfad + "&suchbegriff=" + theQuery + "&ergebnisse=" + (parseFloat(data_list.data.length) - 1) + "\" width=\"1\" height=\"1\" border=\"0\">";
		}

		tmp += "";
		outStr = "<h2>Zu Ihrer Suche wurde(n) " + j + " Ergebniss(e) gefunden</h2>" + tmp;
		layer.innerHTML = outStr;
		ladebalken.style.display = "none";
		document.getElementById("content").style.width = "";
		window.status = "";

}



function toggleDIV(theDIVID) {
	var theDIV = document.getElementById(theDIVID);

	if(theDIV) {
		if(theDIV.style.display == "block") {
			theDIV.style.display = "none";
		} else {
			theDIV.style.display = "block";
		}
	}
}
