function loadMedia(mediaUrl,objContainer,maxwidth,maxheight) {

	var xmlHttp = createXmlHttpObj();
	xmlHttp.onreadystatechange=function()
	{
		if(xmlHttp.readyState==4)
		{
			var strResponse = xmlHttp.responseText;
			document.getElementById(objContainer).innerHTML = strResponse;
		}
	}
	xmlHttp.open("GET",'http://www.goindie.com/travel/index.cfm/ajax/formatMedia?mediaurl='+mediaUrl+'&maxwidth='+maxwidth+'&maxheight='+maxheight,true);
	xmlHttp.send(null);
}

function loadDineIndieMedia(mediaUrl,objContainer,maxwidth,maxheight) {

	var xmlHttp = createXmlHttpObj();
	xmlHttp.onreadystatechange=function()
	{
		if(xmlHttp.readyState==4)
		{
			var strResponse = xmlHttp.responseText;
			document.getElementById(objContainer).innerHTML = strResponse;
		}
	}
	xmlHttp.open("GET",'/ajax/formatMedia.cfm?mediaurl='+mediaUrl+'&maxwidth='+maxwidth+'&maxheight='+maxheight,true);
	xmlHttp.send(null);
}

/* loads a google map to the user's location, and puts markers for suggestions */
var map;
var mgr;
var myLat;
var myLong;
function loadGMap(vlat,vlong) {
	var myLatlng = new google.maps.LatLng(vlat,vlong);
	var myOptions = {
	  zoom: 10,
	  center: myLatlng,
	  mapTypeId: google.maps.MapTypeId.ROADMAP  
	};
	map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}

function loadGMapByAddress(address,pageid) {

	var geocoder = new google.maps.Geocoder();
	geocoder.geocode( { 'address': unescape(address)}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {

		myLat = results[0].geometry.location.lat();
		myLong = results[0].geometry.location.lng();

		var myOptions = {
		  zoom: 9,
		  center: results[0].geometry.location,
		  mapTypeId: google.maps.MapTypeId.ROADMAP  
		};
		map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
		// update lat lng for this listing
		
		ajaxFunction('/dine/index.cfm/ajax/updateLatLong?pageid='+pageid+"&lat="+myLat+'&long='+myLong,function(result){
			alert(result);
		},'');

      } else {
        alert("Geocode was not successful for the following reason: " + status);
      }
    });

}

function getLatLongByByAddress(address) {

	var geocoder = new google.maps.Geocoder();
	geocoder.geocode( { 'address': unescape(address)}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {

		myLat = results[0].geometry.location.lat();
		myLong = results[0].geometry.location.lng();

		ajaxFunction('/dine/index.cfm/ajax/updateLatLong?pageid='+pageid+"&lat="+myLat+'&long='+myLong,function(result){
			alert(result);
		},'');

      } else {
        alert("Geocode was not successful for the following reason: " + status);
      }
    });

}

function handleMapMarkersResponse(data) {
	var objResult = eval('(' + data.trim() + ')');
	if (objResult.result == "ERROR")
	{
		alert("Error retrieving file details: \n\n" + objResult.message);
		return;
	}
	
	/*if (document.getElementById('map_results')) {
		document.getElementById('map_results').innerHTML = 'Displaying '+objResult.data.length + ' result(s)';
	}*/

	for (j=0; j< objResult.data.length; j++)
	{
		createMarker(objResult.data[j].id,objResult.data[j].name,objResult.data[j].lat,objResult.data[j].long,objResult.data[j].brand);

		if (objResult.data[j].brand == '1')
			strLink = '/travel/index.cfm/listing/view/id/'+objResult.data[j].id;
		else
			strLink = '/dine/index.cfm/listing/view/id/'+objResult.data[j].id;
		tblAddRow('tblResultsBody',objResult.data[j].id,objResult.data[j].name,objResult.data[j].address,objResult.data[j].city,objResult.data[j].state,objResult.data[j].zip,objResult.data[j].distance,strLink);
	}
	return;
}

function tblAddRow(tblObject,pageid,title,address,city,state,zip,distance,link)
{
    if (!document.getElementById(tblObject)) return;
    
	objTable=document.getElementById(tblObject);
    objTr=document.createElement("TR");

	objTd = document.createElement("TD");

	objLink = document.createElement("a");
	objLink.href = link;
	objLink.target = "_new";
	objLink.appendChild(document.createTextNode(unescape(title)));
	//objText = document.createTextNode("<a target='_new' href="+link+">" + unescape(title) + "</a>");
	objTd.appendChild(objLink);
	objTr.appendChild(objTd);

	/*objTd = document.createElement("TD");
	objText = document.createTextNode(unescape(address));
	objTd.appendChild(objText);
	objTr.appendChild(objTd);*/

	objTd = document.createElement("TD");
	objText = document.createTextNode(unescape(city));
	objTd.appendChild(objText);
	objTr.appendChild(objTd);

	objTd = document.createElement("TD");
	objText = document.createTextNode(unescape(state));
	objTd.appendChild(objText);
	objTr.appendChild(objTd);

	objTd = document.createElement("TD");
	objText = document.createTextNode(unescape(zip));
	objTd.appendChild(objText);
	objTr.appendChild(objTd);

	objTd = document.createElement("TD");
	objText = document.createTextNode(unescape(distance) + ' mi');
	objTd.appendChild(objText);
	objTr.appendChild(objTd);

    objTable.appendChild(objTr);       
}

function createMarker(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 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);

				tblAddRow('tblResultsBody',intTIId,strTitle,'',strCity,strState,strZip,strDistance,strLink);

			}
		}
	}
}

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;
    });
}

