
/* Copyright © 2007 DIALNET All rights reserved. */
function switchMapType(current)
{
	if (current.value == 2)
	{
		hideObj('dMapSubcategory');
		showObj('dMapTrades');
	}
	else
	{
		hideObj('dMapTrades');
		showObj('dMapSubcategory');
	}
}
function countryMap(domain)
{
	var form = document.forms.ffAddOffer;
	form.fIdRegion.value = 'NULL';
	form.fRegion.value = 'NULL';
	form.fCity.value = '';
	mapSearch(domain);
}

function mapSearch(domain, idRegion, page)
{
	mapContainer = getObjId('tMapContainer');
	resultContainer = getObjId('tMapResult');
	recordsContainer = getObjId('dRecords');
	topRecordContainer =  getObjId('dTopRecord');
	mapLinkObj = getObjId('aMapLink');
	pagesLineTop = getObjId('dPagesLineTop');
	pagesLineBottom = getObjId('dPagesLineBottom');
	hideObj('dTopRecord'); 
	hideObj('dOtherLabel'); 
	hideObj('dRecords');	
	hideObj('dPagesLineTop'); 
	hideObj('dPagesLineBottom');
	//hideObj('mapDiv'); 
	hideObj('dMapLink');	
	hideObj('dCityNoResult'); 
	showObj('mapResultLoader');	
	showObj('mapLoader');	
	searchReq(domain, idRegion, page);
}

function gotoPage(urlPage, domain, idRegion, cityName)
{
	gotoCity(domain, idRegion, cityName, urlPage);
}

function gotoCity(domain, idRegion, cityName, urlPage)
{
	var form = document.forms.ffAddOffer;
	form.fIdRegion.value = idRegion;
	form.fCity.value = cityName;
	mapSearch(domain, idRegion, urlPage);
}

function searchReq(domain, idRegion, urlPage)
{
	var xmlLocation = 'http://'+domain+'/xmlReq/';
	
	if(window.XMLHttpRequest)
	{
		var request = new XMLHttpRequest();
	}
	else if (window.ActiveXObject)  
	{
		var request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	request.onreadystatechange = function()
  	{
    	if(request.readyState == 4)
		{
			if(request.status == 200)
			{
				var resultTEXT = request.responseText;
				//alert(resultTEXT);
				var jResult = eval('('+resultTEXT+')');
				gMapData = new Array();
				gMapData['mapCenterW'] = jResult['gMapW'];
				gMapData['mapCenterL'] = jResult['gMapL'];
				gMapData['accuracy'] = jResult['gMapAccuracy'];
				gMapData['icoImgShadow'] = jResult['icoImgShadow'];
				gMapData['markers'] = new Array();
				hideObj('mapResultLoader');
				
				if (jResult['resultType'] == 'ads' || jResult['resultType'] == 'directory')
				{
					if (jResult['pages'] > 1)
					{
						showObj('dPagesLineTop');
						var pagesLine = setPagesLine(domain, jResult, jResult['pages'], jResult['currentPage']);
						pagesLineTop.innerHTML = pagesLine;
					}
					
					showObj('dRecords');
					recordsContainer.innerHTML = '';

					if (jResult['isTopRecord'] == true)
					{
						gMapData['markers'][0] = new Array();
						gMapData['markers'][0]['gMapW'] = jResult['topRecord']['gMapW'];
						gMapData['markers'][0]['gMapL'] = jResult['topRecord']['gMapL'];
						gMapData['markers'][0]['gMapAccuracy'] = 6;
						gMapData['markers'][0]['icoType'] = 'num';
						gMapData['markers'][0]['icoImg'] = jResult['topRecord']['icoImg'];
						gMapData['markers'][0]['html'] = jResult['topRecord']['img']+'<br />'+jResult['topRecord']['header']+'<br />'+jResult['topRecord']['desc']+'<br /><a href="'+jResult['topRecord']['url']+'" target="_blank">'+jResult['topRecord']['href']+'</a>';
						topRecordContainer.innerHTML = '<div class="dSingleRecord" onclick="goToMarker(0);" onmouseover="setBgColor(this, \'F8F8EF\')" onmouseout="setBgColor(this, \'FFFFFF\');"><table><tr><td style="vertical-align:top;"><img src="'+jResult['topRecord']['icoImg']+'" class="iMapIcon" /></td><td><a href="javascript:void(0);" onclick="goToMarker(0);">'+jResult['topRecord']['header']+'</a><br >'+jResult['topRecord']['desc']+'</td></tr></table></div>';
						var nextMarker = 1;
					}
					else
					{
						var nextMarker = 0;
					}

					for (i = 0, c = jResult['records'].length; i < c; i++)
					{
						gMapData['markers'][nextMarker] = new Array();
						gMapData['markers'][nextMarker]['gMapW'] = jResult['records'][i]['gMapW'];
						gMapData['markers'][nextMarker]['gMapL'] = jResult['records'][i]['gMapL'];
						gMapData['markers'][nextMarker]['gMapAccuracy'] = 4;
						gMapData['markers'][nextMarker]['icoType'] = 'num';
						gMapData['markers'][nextMarker]['icoImg'] = jResult['records'][i]['icoImg'];
						gMapData['markers'][nextMarker]['html'] = jResult['records'][i]['img']+'<br />'+jResult['records'][i]['num']+'.&nbsp;&nbsp;'+jResult['records'][i]['header']+'<br />'+jResult['records'][i]['desc']+'<br /><a href="'+jResult['records'][i]['url']+'" target="_blank">'+jResult['records'][i]['href']+'</a>';						
						recordsContainer.innerHTML += '<div class="dSingleRecord" onclick="goToMarker('+nextMarker+');" onmouseover="setBgColor(this, \'F8F8EF\')" onmouseout="setBgColor(this, \'FFFFFF\');"><table><tr><td style="vertical-align:top;"><img src="'+jResult['records'][i]['icoImg']+'" class="iMapIcon" /></td><td><a href="javascript:void(0);" onclick="goToMarker('+nextMarker+');">'+jResult['records'][i]['header']+'</a><br >'+jResult['records'][i]['desc']+'</td></tr></table></div>';
						nextMarker++;
					}
					if (jResult['pages'] > 1)
					{
						showObj('dPagesLineBottom');
						pagesLineBottom.innerHTML = pagesLine;
					}
				}
				else if (jResult['resultType'] == 'cities')
				{
					showObj('dRecords');
					recordsContainer.innerHTML = '';
					for (i = 0, c = jResult['cities'].length; i < c; i++)
					{
						gMapData['markers'][i] = new Array();
						gMapData['markers'][i]['gMapW'] = jResult['cities'][i]['gMapW'];
						gMapData['markers'][i]['gMapL'] = jResult['cities'][i]['gMapL'];
						gMapData['markers'][i]['gMapAccuracy'] = jResult['gMapAccuracy'];
						gMapData['markers'][i]['icoType'] = 'num';
						gMapData['markers'][i]['icoImg'] = jResult['cities'][i]['icoImg'];
						gMapData['markers'][i]['html'] = '<div style="font-size: 13px; font-weight: bold;"><a href="javascript:void(0);" onclick="javascript:gotoCity(\''+domain+'\', '+jResult['cities'][i]['idRegion']+', \''+jResult['cities'][i]['clearCityName']+'\') ">'+jResult['cities'][i]['cityName']+'</a><br /><br /><a href="javascript:void(0);" onclick="javascript:gotoCity(\''+domain+'\', '+jResult['cities'][i]['idRegion']+', \''+jResult['cities'][i]['clearCityName']+'\') "><img src="./r_gls/images/_BtDetails.jpg" /></a></div>';
						recordsContainer.innerHTML += '<div class="dSingleRecord" onclick="javascript:goToMarker('+i+');" onmouseover="setBgColor(this, \'F8F8EF\')" onmouseout="setBgColor(this, \'FFFFFF\');"><img src="'+jResult['cities'][i]['icoImg']+'" class="iMapIcon" />&nbsp;<a href="javascript:void(0)" onclick="goToMarker('+i+');">'+jResult['cities'][i]['cityName']+'</a></div>';
					}
				}
				else
				{
					gMapData['mapCenterW'] = jResult['gMapW'];
					gMapData['mapCenterL'] = jResult['gMapL'];
					gMapData['accuracy'] = jResult['gMapAccuracy'];
					showObj('dCityNoResult');
				}

				mapLinkObj.href = jResult['mapLink'];
				hideObj('mapLoader');
				showObj('mapDiv');
				showGMap();
				
				if (jResult['isTopRecord'] == true)
				{
					showObj('dTopRecord');
					showObj('dOtherLabel');
					goToMarker(0);
				}
				if (jResult['resultType'] != 'error')
				{
					showObj('dMapLink');
				}
				if (jResult['resultCounter'] == 1)
				{
					goToMarker(0);
				}
			}
		}
		else if (request.readyState == 1)
		{
			//'getting'			
		}
		else if (request.readyState == 0)
		{
			//error
		}
  	};
  	
  	request.open('POST', xmlLocation, true);
	request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	var postRequest = prepareRequest(idRegion, urlPage);
	request.send(postRequest);
}


function setPagesLine(domain, jResult, pages, currentPage)
{
	var pagesLine = new String;
	if (currentPage != 1)
	{
		var prevPage = currentPage - 1;
		pagesLine = '<img src="./r_gls/images/prevPage.png" class="iPageIco" onclick="gotoPage('+prevPage+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');"/>&nbsp;&nbsp;&nbsp;&nbsp;';
	}
		
	if (pages <= 5)
	{
		for (i = 1; i <= pages; i++)
		{
			if (i == currentPage)
			{
				pagesLine += i;
			}
			else
			{
				pagesLine += '<a href="#" onclick="gotoPage('+i+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">'+i+'</a>';	
			}
			pagesLine += '&nbsp;&nbsp;';
		}
	}
	else
	{
		if (currentPage < 4)
		{
			for (i = 1; i < currentPage+3; i++)
			{
				if (i == currentPage)
				{
					pagesLine += i;
				}
				else
				{
					pagesLine += '<a href="#" onclick="gotoPage('+i+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">'+i+'</a>';	
				}
				pagesLine += '&nbsp;&nbsp;';
			}
			pagesLine += '...&nbsp;&nbsp<a href="#" onclick="gotoPage('+pages+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">'+pages+'</a>';	
		}
		else if (currentPage+3 > pages)
		{
			pagesLine += '<a href="#" onclick="gotoPage(1, \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">1</a>&nbsp;&nbsp;...&nbsp;&nbsp;';	
			
			for (i = pages-3; i <= pages; i++)
			{
				if (i == currentPage)
				{
					pagesLine += i;
				}
				else
				{
					pagesLine += '<a href="#" onclick="gotoPage('+i+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">'+i+'</a>';	
				}
				pagesLine += '&nbsp;&nbsp;';
			}
		}
		else
		{
			pagesLine += '<a href="#" onclick="gotoPage(1, \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">1</a>&nbsp;&nbsp;...&nbsp;&nbsp;';	
			
			for (i = currentPage-1; i <= currentPage+1; i++)
			{
				if (i == currentPage)
				{
					pagesLine += i;
				}
				else
				{
					pagesLine += '<a href="#" onclick="gotoPage('+i+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">'+i+'</a>';	
				}
				pagesLine += '&nbsp;&nbsp;';
			}
			pagesLine += '...&nbsp;&nbsp<a href="#" onclick="gotoPage('+pages+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');">'+pages+'</a>';	
		}
	}
	
	if (currentPage != pages)
	{
		var nextPage = currentPage + 1;
		pagesLine += '&nbsp;&nbsp;&nbsp;&nbsp;<img src="./r_gls/images/nextPage.png" class="iPageIco" onclick="gotoPage('+nextPage+', \''+domain+'\', '+jResult['cities'][0]['idRegion']+', \''+jResult['cities'][0]['clearCityName']+'\');"/>&nbsp;&nbsp;';
	}
	return pagesLine;
}

function prepareRequest(idRegion, urlPage)
{
	var form = document.forms.ffAddOffer;

	if (idRegion)
	{
		form.fIdRegion.value = idRegion;
	}
	else
	{
		if (form.fRegion.value == 'NULL')
		{
			form.fIdRegion.value = 'NULL';
		}
		else
		{
			form.fIdRegion.value = form.fRegion.value;
		}
	}

	var postRequest = ''+
		'idRegion='+form.fIdRegion.value+
		'&'+
		'idCity='+form.fIdCity.value+
		'&'+
		'cityName='+form.fCity.value+
		'';
	
	if (form.fLc[1].checked == true)
	{
		var searchType = 'directory';
		postRequest += ''+
			'&' +
			't='+searchType+
			'';
		if (form.fTrade.value != 'NULL')
		{
			postRequest += ''+
			'&'+
			'trade='+form.fTrade.value+
			'';
		}
		if (isNaN(form.idPoint.value) == false)
		{
			postRequest += ''+
				'&'+
				'idPoint='+form.idPoint.value+
				'';
			form.idPoint.value = '';
		}	
	}
	else
	{
		var searchType = 'ads';
		postRequest += ''+
			'&' +
			't='+searchType+
			'&'+
			'subCategory='+form.fSubCategory.value+
			'&'+
			'type='+form.fType.value+
			'';
		if (isNaN(form.idPoint.value) == false)
		{
			postRequest += ''+
				'&'+
				'idPoint='+form.idPoint.value+
				'';
			form.idPoint.value = '';
		}
	}
	
	if (urlPage != '')
	{
		postRequest += ''+
			'&'+
			'page='+urlPage+
			'';
	}
	

	//alert(postRequest);
	return postRequest;
}
