// JavaScript Document

function $(values) {
	return document.getElementById(values);
}

function show_element(id)
{
	if ($(id)) $(id).style.display = 'block';
}

function hide_element(id)
{
	if ($(id)) $(id).style.display = 'none';
}

function inNumOnly(e) {
	var code = e.charCode? e.charCode : e.keyCode
	// allow backspace, delete, home, end, and return char
	return ( (code>=48 && code<=57) || code==36 || code==35 || code==46 || code==13 || code==8)
}

function strTrim(AStr) {
	return AStr.replace(/^\s+/,"").replace(/\s+$/,"");
}

function GoFavorite(lnk,link2) {
	if(lnk!="") {
		arr = lnk.split("-");
		if(arr[0] != "00") {
			location = arr[1]+"&abddr_id="+arr[0]+link2;
		} else {
			location = arr[1]+link2;
		}
	}
}

function ShowMap() {
	if(document.selFav.value != "") {
		var id = document.selFav.value;
		var ptrn = /^\d+$/;
	    if(ptrn.test(id)) {
			location = "/addressbook/getaddress.php?id="+id;
		} else {
			location = id;
		}
	}
}

function ShowAddress(sdGloBaseUrl,id) {
	if(id != ""){	
		location = sdGloBaseUrl + "/addressbook/newaddressbook.php?abaddr_id="+id+"&abedit=1";
	} else {
		alert("Choose Address First");
	}
}

var countryInterval = "";

//For Login Box
function showDropMenu1() {
	show_element('dropMenu1');
	show_element('tblDropMenu1');
}

//For Property Post New Ads
//For Login Box
function showPropAds() {
	show_element('dropMenuPropAds');
	show_element('tblDropMenuPropAds');
}

//For related Keyword
function relatedPlace(id,page) {
	if($('hideRelated').style.display=="none")
	{
		show_element('hideRelated');
		hide_element('showRelated');
		//if ( global['city'] == undefined ) $('moreEg').src='/img/map/dropdown-arrow.gif';
		if ( global['city'] == undefined && page == undefined ) $('moreEg').style.backgroundPosition='-262px -7px';
	}
	else
	{
		hide_element('hideRelated');
		show_element('showRelated');	
		//if ( global['city'] == undefined ) $('moreEg').src='/img/map/dropdown-arrow-clicked.gif';
		if ( global['city'] == undefined  && page == undefined ) $('moreEg').style.backgroundPosition='-262px 0px';
	}
}

function moreEgOver(type)
{
	/*
	if($('moreEg').src.indexOf('dropdown-arrow.gif', 0) > 0 && type=="over")
		$('moreEg').src='/img/map/dropdown-arrow-over.gif';
	else if($('moreEg').src.indexOf('dropdown-arrow-over.gif', 0) > 0 && type=="out")
		$('moreEg').src='/img/map/dropdown-arrow.gif';
	*/
	
	if($('moreEg').style.backgroundPosition == "-262px -7px" && type=="over")
		$('moreEg').style.backgroundPosition = '-273px 0px';
	else if($('moreEg').style.backgroundPosition == "-273px 0px" && type=="out")	
		$('moreEg').style.backgroundPosition = '-262px -7px';
	
}

function showMenuCountry(type,interval)
{
	if(type == "show")
		show_element('divCountryBox');
	else
		hide_element('divCountryBox');
}

function showMenuId(type,box,idUp,idDown)
{
	if(type == "show") {
		show_element(box);
		hide_element(idUp) ;
		show_element(idDown) ;
	} else {
		hide_element(box);
		hide_element(idDown) ;
		show_element(idUp) ;
	}
}

function showMenuIndonesiaCity(type,interval)
{
	if(type == "show")
		show_element('divCityBox');
	else
		hide_element('divCityBox');
}

function showMenuDistrict(type,interval)
{
	if(type == "show")
		show_element('divDistrictBox');
	else
		hide_element('divDistrictBox');
}

//lavinia
function showMenuLink(type)
{
	if(type == "show")
	{
		hide_element('hideLink');
		show_element('showLink');
	}
	else
	{
		show_element('hideLink');
		hide_element('showLink');
	}
}

//For Feedback Drop Down
function showDropSubmit() {
    obj = document.getElementById('dropSubmit');
    obj.style.display='block';
    obj = document.getElementById('tblDropSubmit');
    obj.style.display='block';
}
function hideDropSubmit() {
    obj = document.getElementById('dropSubmit');
    obj.style.display='none';
    obj = document.getElementById('tblDropSubmit');
    obj.style.display='none';
}

// ismail
function checkMouseLeave (element, evt) {
	var evt = window.event || evt;
  if (element.contains && evt.toElement) {
    return !element.contains(evt.toElement);
  }
  else if (evt.relatedTarget) {
    return !containsDOM(element, evt.relatedTarget);
  }
}

function checkMouseEnter (element, evt) {
	var evt = window.event || evt;
	if (element.contains && evt.fromElement) {
		return !element.contains(evt.fromElement);
	}
	else if (evt.relatedTarget) {
		return !containsDOM(element, evt.relatedTarget);
	}
}

// ismail
function containsDOM (container, containee) {
  var isParent = false;
  do {
    if ((isParent = container == containee))
      break;
		try
		{
			containee = containee.parentNode;
		}
		catch(e)
		{
			containee = null;
		}
  }
  while (containee != null);
  return isParent;
}

//For search
function submitSearch(d)
{
	f = document.fSdSearch;
	if(f.q.value == "")
	{
		alert ('Please Fill The Search Box');
  		f.q.focus();
		return false;
	}
	else 
	{		
		var q = f.q.value;
		q = encodeURIComponent(q); 
		q = q.replace(/%20/gi,"+");
		var url = f.action + '?q='+q;		
		if (d == 1) url += '&d=1';
		location.href = url;
//		alert(url);
//		f.submit();
	}
}


var mainsearch_focus = false, mainsearch_hover = false, mainsearch_state = 0;

function mainSearchFocus(textbox, td, default_text, keep_text,page)
{
	if (!keep_text && textbox.value == default_text) textbox.value = '';
	textbox.style.color = '#000000';
	mainsearch_focus = true;
	updateSearchBox(td,page);
	textbox.select();
}

function mainSearchBlur(textbox, td, default_text,page)
{
	textbox.style.color = '#949494';
	mainsearch_focus = false;
	updateSearchBox(td,page);
	if (textbox.value == '') textbox.value = default_text;
}

function updateSearchBox(elm,page)
{
	if (mainsearch_state == 0 && (mainsearch_focus || mainsearch_hover))
	{
		if(page == "map") elm.style.background = 'url(/img/business_finder/sd_images.png) 0px -101px no-repeat';
		else elm.style.background = 'url(/img/business_finder/header_business_finder_sprites.png) 0px -42px no-repeat';
		mainsearch_state = 1;
	}
	else if (mainsearch_state == 1 && (!mainsearch_focus && !mainsearch_hover))
	{
		elm.style.background = '';
		//if(page == "map") elm.style.background = '';
		//else elm.style.background = 'url(/img/map/text-box.gif)';
		mainsearch_state = 0;
	}
}

function detectMapName(x,y)
{	
	var x1 = new Array(103.609808585, 106.336713792, 100.183203884, 103.600675, 102.131124378, 99.63196794, 114.438986201,101.366505152,103.848996221); //1
	var y1 = new Array(1.47421033298, -5.90996588413, 5.53096134452, 1.617192, 2.34513687652, 6.48030861, -8.04351119209,3.2765636314,1.21655296465); //2
	var x2 = new Array(104.088063761, 107.315837289, 100.550669928, 104.008627, 102.346197544, 99.94706918, 115.735151469,101.849828314,104.327250213); //3
	var y2 = new Array(1.19945734487, -6.78535607902, 5.21541483438, 1.423502, 2.1495514102, 6.15515457, -8.84114745365,2.71148572587,0.597924020327); //4
	
	var area = new Array('sg','jkt','png','jb', 'mlk', 'lkw','bali','kl','btm');
	var i=0, n = area.length;
	for(i=0;i<n;i++)
	{
		if (x >= x1[i] && x <= x2[i] && y >= y2[i] && y <= y1[i]) 
		{
			return area[i];
		}
	}		
	return false;
};

function showHideDiv(divShow, divHide)
{
	for(i=0;i<divHide.length;i++)
	{
		hide_element(divHide[i]);
	}
	for(i=0;i<divShow.length;i++)
	{
		show_element(divShow[i]);
	}
}

function css_sprite(css,w, h, li, ti, ld, td, altStyle)
{
	var par = document.createElement("div");
	ld =  (ld == undefined) ? '' : 'left:'+ld+'px;';
	td =  (td == undefined) ? '' : 'top:'+(td)+'px;';
	par.style.cssText = 'position:absolute; '+ld+td+altStyle;
	var d = document.createElement("div");
	d.style.cssText = 'width:'+w+'px; height:'+h+'px; position: relative; overflow:hidden;';
	var f = document.createElement("div");
	this.obj = f;
	altStyle = (altStyle == undefined) ? '' : altStyle;
	f.className = css;
	f.style.cssText = 'width: 1000px; height: 1000px; position:absolute; left:'+(-li)+'px; top: '+(-ti)+'px;';
	d.appendChild(f);
	par.appendChild(d);
	return par;
}

