function loadRestaurantsByCoords(lat,long)
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				document.getElementById('dineSuggestions').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getRestByRadius?lat=" + lat + "&long=" + long,true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

function loadLocalRestByCoords(lat, long)
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				document.getElementById('dineSuggestion').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getRestFeatureByRadius?lat=" + lat + "&long=" + long,true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

function loadWaypointsByCoords(lat,long)
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				document.getElementById('travelSuggestions').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getWaypointsByRadius?lat=" + lat + "&long=" + long,true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

function loadFeatTravelByCoords(lat,long)
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				document.getElementById('travelSuggestion').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getFeatTravelByRadius?lat=" + lat + "&long=" + long,true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

function loadLocalTravelByCoords(lat,long)
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				document.getElementById('travelSuggestions').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getLocalTravel?lat=" + lat + "&long=" + long,true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

/* loads a google map to the user's location, and puts markers for suggestions '*/
var map;
var mgr;
function loadGMap(lat,long)
{
	var myLatlng = new google.maps.LatLng(lat,long);
	var myOptions = {
	  zoom: 9,
	  center: myLatlng,
	  mapTypeId: google.maps.MapTypeId.ROADMAP  
	};
	map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}

function handleCoordResponse(strResponse)
{
	if (strResponse != 'ERROR')
	{
		var myData = eval('('+strResponse+')');
		var arrColumnMap = myData.COLUMNS;
		
		for(var i = 0; i < myData.COLUMNS.length; i++) 
		{
			arrColumnMap[myData.COLUMNS[i]] = i;		
		}
		
		var str = '';
		var objLatLong;
		for(var j = 0; j < myData.DATA.length; j++) 
		{
			var intTIId = myData.DATA[j][arrColumnMap["ID"]];
			var strSESId = myData.DATA[j][arrColumnMap["SESURL"]];
			var intBrand = myData.DATA[j][arrColumnMap["BRAND"]];
			var fltLat = myData.DATA[j][arrColumnMap["LATITUDE"]];
			var fltLong = myData.DATA[j][arrColumnMap["LONGITUDE"]];
			var strTitle = myData.DATA[j][arrColumnMap["NAME"]];
			var strLink = '';
			if (intBrand == 1) // travelindie
				var strLink = jsTravelIndieBaseUrl+'/post.cfm/postid:'+intTIId+'/';
			else if (intBrand == 2) // dineindie
				var strLink = jsDineIndieBaseUrl+'/'+strSESId;
			var marker = createMarker(fltLat,fltLong,strTitle,strLink,intBrand);
		}
	}
}

function handleMapMarkersResponse(data) {
	var objResult = eval('(' + data.trim() + ')');
	if (objResult.result == "ERROR")
	{
		alert("Error retrieving map markers: \n\n" + objResult.message);
		return;
	}

	for (j=0; j< objResult.data.length; j++)
	{
		createMarkerWithId(objResult.data[j].id,objResult.data[j].name,objResult.data[j].lat,objResult.data[j].long,objResult.data[j].brand);
	}
	return;
}

function handleOldDineResponse(strResponse)
{
	if (strResponse != 'ERROR')
	{
		var myData = eval('('+strResponse+')');
		var arrColumnMap = myData.COLUMNS;
		
		for(var i = 0; i < myData.COLUMNS.length; i++) 
		{
			arrColumnMap[myData.COLUMNS[i]] = i;		
		}
		
		var str = '';
		var objLatLong;
		for(var j = 0; j < myData.DATA.length; j++) 
		{
			var intTIId = myData.DATA[j][arrColumnMap["ID"]];
			var strSESId = myData.DATA[j][arrColumnMap["SESURL"]];
			var intBrand = myData.DATA[j][arrColumnMap["BRAND"]];
			var fltLat = myData.DATA[j][arrColumnMap["LATITUDE"]];
			var fltLong = myData.DATA[j][arrColumnMap["LONGITUDE"]];
			var strTitle = myData.DATA[j][arrColumnMap["NAME"]];
			var strCity = myData.DATA[j][arrColumnMap["CITY"]];
			var strState = myData.DATA[j][arrColumnMap["STATE"]];
			var strZip = myData.DATA[j][arrColumnMap["ZIP"]];
			var strDistance = myData.DATA[j][arrColumnMap["DISTANCE"]];
			var strLink = '';
			if (intBrand == 2) { // dineindie
				var strLink = jsDineIndieBaseUrl + '/' + strSESId;
				var marker = createOldDineMarker(fltLat, fltLong, strTitle, strLink, intBrand);

			}
		}
	}
}

function handleLoadAdvert(strResponse)
{
	document.getElementById('adbox').innerHTML = strResponse;
}

function handleSetCookie(strResponse)
{
}

function createMarkerWithId(id,name,xlat,ylong,brand)
{
	objLatLong = new google.maps.LatLng(xlat,ylong);	
	var marker = new google.maps.Marker({
        position: objLatLong, 
        map: map,
        title: unescape(name),
		pageid: id,
		brand: brand
    });
	
	if (brand == '1')
		marker.icon = jsGoIndieBaseUrl + '/assets/images/map/TravelIndieMarker.png';
	else
		marker.icon = jsGoIndieBaseUrl + '/assets/images/map/DineIndieMarker.png';
	
	google.maps.event.addListener(marker, 'click', function() {
		if (marker.brand == '1')
			window.location = '/travel/index.cfm/listing/view/id/'+marker.pageid;
		else
			window.location = '/dine/index.cfm/listing/view/id/'+marker.pageid;
    });
}

function createMarker(lat,long,name,url,brand)
{
	objLatLong = new google.maps.LatLng(lat,long);	
	var marker = new google.maps.Marker({
        position: objLatLong, 
        map: map,
        title: name,
		link: url
    });
	
	if (brand == 1)
	{
		marker.icon = jsGoIndieBaseUrl + '/assets/images/map/TravelIndieMarker.png';
	}
	else
	{
		marker.icon = jsGoIndieBaseUrl+'/assets/images/map/DineIndieMarker.png';
	}
	
	google.maps.event.addListener(marker, 'click', function() {
		window.open(marker.link,'_blank');
    });
}

function createOldDineMarker(xlat,ylong,name,url,brand)
{
	objLatLong = new google.maps.LatLng(xlat,ylong);	
	var marker = new google.maps.Marker({
        position: objLatLong, 
        map: map,
        title: name,
		link: url
    });
	
	if (brand == 1)
	{
		marker.icon = jsGoIndieBaseUrl + '/assets/images/map/TravelIndieMarker.png';
	}
	else
	{
		marker.icon = jsGoIndieBaseUrl+'/assets/images/map/DineIndieMarker.png';
	}
	
	google.maps.event.addListener(marker, 'click', function() {
		window.location = marker.link;
    });
}

function loadRecentGrow()
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				document.getElementById('growSuggestions').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getRecentGrow",true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

function loadFeaturedGrow()
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				document.getElementById('growSuggestion').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getFeaturedGrow",true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}


function loadRestaurantsByCoords(lat,long,region)
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				if (response.indexOf('EMPTYRESULT') != -1)
				{
					ajaxFunction(jsGoIndieBaseUrl + "/index.cfm/ajax/getStateRestaurants?state=" + region,"handleStateRestaurants");
					return;
				}
				document.getElementById('dineSuggestions').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getRestByRadius?lat=" + lat + "&long=" + long,true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

function loadWaypointsByCoords(lat,long,region)
{
	try 
	{
		var xmlHttp = createXmlHttpObj();
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var response = xmlHttp.responseText;
				if (response.indexOf('EMPTYRESULT') != -1)
				{
					ajaxFunction(jsGoIndieBaseUrl + "/index.cfm/ajax/getRandomWaypoints","handleRandomWaypoints");
					return;
				}
				document.getElementById('travelSuggestions').innerHTML = response;
			}
		}
		xmlHttp.open("GET",jsGoIndieBaseUrl+"/index.cfm/ajax/getWaypointsByRadius?lat=" + lat + "&long=" + long,true);
		xmlHttp.send(null);
	}
	catch (e) {alert(e);}
}

function handleStateRestaurants(strResponse)
{
	document.getElementById('dineSuggestions').innerHTML = strResponse;
}

function handleRandomWaypoints(strResponse)
{
	document.getElementById('travelSuggestions').innerHTML = strResponse;
}



