requestUrl = "http://www.travature.com/opensocial/whereivetraveled/php/";
pagetype = 'country';
refreshInterval = 60;
var map = null;
var user_data = null; //user presistent data
var saved_country = new Array();
var saved_state = new Array();
var saved_city = new Array();
owner_id = "";
username = "";
isOwner = false;

function processGetMarkers(response)
{
	var xml = GXml.parse(response["data"]);
	var place =xml.documentElement.getElementsByTagName("place");
	
	lat = 0;
	lon = 0;
	id = 0;
	level = 0;
	
	if ( place != null )
	{
		for (var j = 0; j < place.length; j++ )
		{
			level = place[j].getAttribute("level");
			
			var marker = new Object();
			marker.lat =  place[j].getAttribute("lt");
			marker.lon =  place[j].getAttribute("ln");
			marker.id = place[j].getAttribute("id");			
			
			//is a country marker
			if ( level == 1 )	
				saved_country[saved_country.length] = marker;
			//is a state marker
			else if ( level == 2 )
				saved_state[saved_state.length] = marker;
			//is a city marker
			else if ( level == 3 )
				saved_city[saved_city.length] = marker;	
		}//end j
	}
	
	//Display Saved Markers on current pagetype
	displayMarkers();
}

function getPageSavedMarker()
{
	//is a country marker
	if ( pagetype == "country" )	
		return saved_country;
	//is a state marker
	else if ( pagetype == "state" )
		return saved_state;
	//is a city marker
	else if ( pagetype == "city" )
		return saved_city;
}

//create the new marker
function createMarker(lat, lon, id) 
{
	var point = new google.maps.LatLng(lat,lon);
	var marker = new google.maps.Marker(point);
	var marker = new GMarker(point);

	//messy inner callbacks to create info window and call travature server to fill the summary in it
 	GEvent.addListener(marker, "click", function()
 	{
		var response;
		gadgets.io.makeRequest(requestUrl+"summary.php?site="+site+"&isOwner="+isOwner+"&page="+pageview+"&guide_id="+id +"&nocache="+Math.floor(Math.random()*5),
		function(response) 
		{
			var opts = {maxWidth:280};
			marker.openInfoWindowHtml(response["data"], opts);
		}); 
	});
	
	return marker;
}

function makeCachedRequest(url, callback, params, refreshInterval) 
{
	var ts = new Date().getTime();
  	var sep = "?";
  	
	if (refreshInterval && refreshInterval > 0) 
	   	ts = Math.floor(ts / (refreshInterval * 1000));
  	
  	if (url.indexOf("?") > -1) 
	   	sep = "&";
  	
  	url = [ url, sep, "nocache=", ts ].join("");
  	gadgets.io.makeRequest(url, callback, params);
}