// JavaScript Document

function search_toggle(){
	if (document.getElementById('search_results').style.visibility == 'hidden'){
		search_show();
	}else{
		search_hide();
	}
}

function search_show(){
	document.getElementById('search_results').style.visibility = 'visible';
}

function search_hide(){
	document.getElementById('search_results').style.visibility = 'hidden';
	document.getElementById('search_results').innerHTML = '&nbsp;';
}

var recent_click_obj = '';

function hide_menus(event){
	if (!event){
        event = window.event;
    }
	target = event.target ? event.target : event.srcElement;
	
	recent_click_obj = target;
	
	if (is_child('search',recent_click_obj) != true){
			search_hide();
	}
}

function is_child(parent_name, child_ele){
	if (child_ele.tagName != 'BODY'){
		if (child_ele.id == parent_name){
			return true;
		}else{
			return is_child(parent_name, child_ele.parentNode);
		}
	}else{
		return false;
	}
}

function addEvent(obj, evType, fn, useCapture){
  if (obj.addEventListener){
    obj.addEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.attachEvent){
    var r = obj.attachEvent("on"+evType, fn);
    return r;
  } else {
    //an error occured
  }
}

addEvent(document,"click",hide_menus);

//ajax search starts here
function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}

var search_obj = createRequestObject();

var search_sent = 0;
function search_type(ele){
	if (search_sent == 0){
		if (ele.value == ''){
			document.getElementById('search_results').innerHTML = '&nbsp;';
			search_hide();
		}else{
			search_sent = 1;
			search_obj.open('get', '/ajax_search.php?phrase=' + ele.value + '&nocache=' + nocache());
			search_obj.onreadystatechange = search_response;
			search_obj.send(null);
		}
	}
}
function search_response(){
	if(search_obj.readyState == 4){
		search_sent = 0;
		if(search_obj.status == 200){
			search_show();
			document.getElementById('search_results').innerHTML = search_obj.responseText;
		}
	}
}

function nocache(){
	var d = new Date();
	return ((d.getTime())*1)
}
