function URLencode(sStr) 
{
   return escape(sStr).replace(/\+/g, '%2C').replace(/\"/g,'%22').replace(/\'/g, '%27').replace(/\//g, '%2F').replace(/\./g, '%2E');
}

function doSuggSearch(urloffset,query)
{
   
    if (urloffset>0)
      location.href = "http://www.100000quotes.com/author/"+URLencode(query);      
     else
      location.href = "http://www.100000quotes.com/categories/"+URLencode(query);       
    return false;
}
//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() 
{	
        var http_request = false;

        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // See note below about this line
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Giving up :( Cannot create an XMLHTTP instance');
            return false;
        }
		
		return http_request;
}

//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();

//Returns the node text value 
function GetAttribute (node, attr)
{
	 return node.getAttribute(attr) ;
}

//Returns the node text value 
function GetInnerText (node)
{
	 return (node.textContent || node.innerText || node.text || getNodeText(node) ) ;
	 
	 //return node.innerText;
}

function getNodeText(node) 
{
        if (node.nodeType == 3 || node.nodeType == 4)
                return node.data;
        
        for (var i = 0; i < node.childNodes.length; i++) {
                var text = getNodeText(node.childNodes[i]);
                if (text)
                        return text;
        }
        
        return null;
}
//Mouse over function
function suggestOver(div_value) 
{	
	div_value.className = 'suggest_link_over';
}

//Mouse out function
function suggestOut(div_value) 
{	
	div_value.className = 'suggest_link';
}

function hideDiv(divName){
return;
	tempDiv = document.getElementById(divName);
	if (!tempDiv) {
		return;
	}
	if (tempDiv.style.display=="block"){
	     tempDiv.style.display="none";
	}
}

function showDiv(divName){
return;
	tempDiv = document.getElementById(divName);
	if (!tempDiv) {
	  return;
	}
	if (tempDiv.style.display=="none"){
		tempDiv.style.display="block";
	 }
}

function hideDiv2(divName)
{
	tempDiv = document.getElementById(divName);
	if (!tempDiv) {
		return;
	}
	
	tempDiv.style.display = 'none';
}

function showDiv2(divName)
{
	var tempDiv = document.getElementById(divName);
	if (!tempDiv) {
		return;
	}

	tempDiv.style.display = 'inline';
}


//Called when the AJAX response is returned.
function handleSearchSuggest() 
{	
	if (searchReq.readyState == 4) 
	{		
		var ss = document.getElementById('search_suggest')		
		ss.innerHTML = '';		
		
		var xmldoc = searchReq.responseXML;
		var suggestionsNode = xmldoc.getElementsByTagName('suggestions').item(0);
		
		var suggNodes = suggestionsNode.getElementsByTagName('sugg');
		if (suggNodes.length == 0)
		{
			ss.style.visibility = "hidden"; 
			return;
		}
		
		var idValue; 
		var textValue; 
			
		var suggest = "";
		
		suggest += "<table bgcolor=\"EEEEEE\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"width:180px;\">";
		suggest += "<tr>";
		suggest += '<td height="25" valign="middle" class="suggest_link_over" style="font-family:arial;color:#000055" size="100%" align="left" colspan="2">';
		suggest += "<b>&nbsp;&nbsp;Select one...</b>";
		suggest += "</td>";
		suggest += "</tr>";
 
		var aoffset="author";
		var coffset="categories";			
		for (var i=0; i < suggNodes.length; i++) 
		{			
	   		textValue = GetInnerText(suggNodes[i]);
			idValue = GetAttribute(suggNodes[i], 'xtype');
 			if (idValue != '1') 
				urloffset='categories';
			else
				urloffset='author';

 			if (idValue != '1') 
			suggest += '<tr class="suggest_link" cellpadding="0" cellspacing="0" onmouseover="suggestOver(this);" onmouseout="suggestOut(this);" onclick="doSuggSearch(0,\''+textValue.replace(/ /g,"-").replace('\'', '\\\'') + '\');"> ';
			else
			suggest += '<tr class="suggest_link" cellpadding="0" cellspacing="0" onmouseover="suggestOver(this);" onmouseout="suggestOut(this);" onclick="doSuggSearch(1,\''+textValue.replace(/ /g,"-").replace('\'', '\\\'') + '\');"> ';			

			
			suggest += '<td><b>';

			suggest += textValue;			
			
			suggest += '</b></td>';
			
			suggest += '<td align="right" style="font-size:10;" >';
 			if (idValue != '1') 
				suggest += '' + ' category';
			else
				suggest += '' + ' author';
 			
			suggest += '</td>';				
			suggest += '</tr>';
		}	
		
		suggest += '<tr size="100%">';
			suggest += '<td height="25" valign="middle" class="suggest_link_over" style="font-family:arial;" size="100%" align="right" colspan="2">';
			suggest += '</td>';
			
		suggest += "</tr>";
		
		suggest += "</table>";
		ss.innerHTML = suggest;	
		ss.style.visibility = ""; 
	}
}



function searchsuggest() {
	if ((searchReq.readyState == 4 || searchReq.readyState == 0) && document.mainform.SE.value == '1') 
	{	
		inputString = escape(document.getElementById('SEARCHEB').value);
		if(inputString.length == 0) {
			// Hide the suggestion box.
			$('#suggestions').hide();
		} else {
 			
 			$.post("http://www.100000quotes.com/quotesql.php", {queryString: ""+inputString+""}, function(data){
				if(data.length >0) {
					$('#suggestions').show();
					$('#autoSuggestionsList').html(data);
				}
			});			
		}
	}
} // lookup

function ss() 
{	

	if (searchReq.readyState == 4 || searchReq.readyState == 0) 
	{		
		var str = escape(document.getElementById('SEARCHEB').value);		
		searchReq.open("GET", 'http://www.100000quotes.com/quotesql.php?ltrs=a' + str, true);		
		searchReq.onreadystatechange = handleSearchSuggest; 
		pageTracker._trackEvent("Ajax", "search", "quotes");					
		searchReq.send(null);	
	}		
}
