﻿window.onload = loadIndex;

function loadIndex() { 
	if (document.implementation && document.implementation.createDocument) {
		xmlDoc = document.implementation.createDocument("", "", null);
		xmlDoc.load("/amex/xml/SearchData.xml");
	}
	else if (window.ActiveXObject) {
		xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async = "false";
		xmlDoc.load("/amex/xml/SearchData.xml");
	}
}

function toLowerCaseTr(str)
{
	str = str.replace(/I/, "ı");
	return str.toLowerCase();
}

function searchIndex() { 
	
	if (!xmlDoc) {
		loadIndex();
	}


	var searchterm = document.getElementById("searchme").value;
	var allitems = xmlDoc.getElementsByTagName("page");

	if (searchterm.length < 3) {
		alert("Aranacak kelime minimum 3 karakter olmalıdır.");
	} 
	else {

		var aramaSonucu = document.getElementById("aramaSonucu");
		var site = "http://" + location.host + "/pages";
		aramaSonucu.innerHTML = "";
		var header = document.createElement("h5");
		var list = document.createElement("ul");
		var searchedfor = document.createTextNode("\u0022" + searchterm+ "\u0022 için arama sonuçları");
		aramaSonucu.appendChild(header);
		header.appendChild(searchedfor);
		aramaSonucu.appendChild(list);
		
		var bulundu = false;

		for (var i=0;i<allitems.length;i++) {
			if (allitems[i].firstChild)
			{
				var c_name = allitems[i].getAttribute('url');
				var gelenVeri = allitems[i].firstChild.nodeValue;
				var ai = toLowerCaseTr(gelenVeri).indexOf(toLowerCaseTr(searchterm));
				//alert(gelenVeri);				
				//break;
				if (ai>0)
				{
					var p0 = gelenVeri.substring(Math.max(0, ai-100), ai);
					var p1 = gelenVeri.substring (ai+searchterm.length, Math.min(gelenVeri.length, ai+100+searchterm.length));
					var gosterilecekVeri = p0.substr(p0.indexOf(" ")+1) + 
						"<strong>"+gelenVeri.substring(ai, ai+searchterm.length) + "</strong>" +
						p1+"...";
					var listitem = document.createElement("li");
					listitem.innerHTML = gosterilecekVeri;
					
					var pageLink = document.createElement("a");
					pageLink.setAttribute('href', site + "/" + c_name);
					pageLink.appendChild(document.createTextNode(site + "/" + c_name));
		
					list.appendChild(pageLink);
					list.appendChild(listitem);
					
					bulundu = true;
				}
			}
		}
		
		if (!bulundu)
		{
			var para = document.createElement("p");
			var notfound = document.createTextNode("Üzgünüz, "+searchterm +" için bir karşılık bulunamadı!");
			aramaSonucu.appendChild(para);
			para.appendChild(notfound);
		}
	}
}

