<?xml version="1.0" encoding="UTF-8"?>
<Module>
<ModulePrefs title="地圖日記高個子美女" 
             description="地圖日記高個子美女"
             author="service@answerbox.net"
             author_email="service@answerbox.net"
			 screenshot  = "http://map.answerbox.net/images/mapplet_snapshot.jpg"
			 thumbnail = "http://map.answerbox.net/images/mappletthumb.jpg"
			 scrolling="true">
  <Require feature="sharedmap"/>
</ModulePrefs>
<Content type="html"><![CDATA[
<a href='http://map.answerbox.net'><img border='0' src='http://map.answerbox.net/images/mapplet.jpg'></a><br>

<div id='candidates'></div>

<script>
  // Center the map in the Mediterranean and zoom out to a world view
  var map = new GMap2();
  var point = new GLatLng(24, 121);
  map.setCenter(point, 8);

  var landmarkdata;
  var userdata;
  var markers = new Array();
  
  var iconoff = new GIcon();
  iconoff.image = "http://map.answerbox.net/designnew/images/mapicon/iconoff.gif";
  iconoff.iconSize = new GSize(40, 40);
  iconoff.iconAnchor = new GPoint(20, 40);
  iconoff.infoWindowAnchor = new GPoint(40, 0);
	
  
  GEvent.addListener(map, "dragend", displaylandmarks);
  GEvent.addListener(map, "zoomend", displaylandmarks);

	function createMarker(point, number) {
	  var marker = new GMarker(point,{icon:iconoff});
	  marker.value = number;
	  GEvent.addListener(marker, "click", function() {
		var myHtml = '';
		myHtml = myHtml + "<table><tr><td>";
		myHtml = myHtml + "<img src='"+landmarkdata[number]['thumbnail']+"'>";
		myHtml = myHtml + "</td><td valign='top'>";
		myHtml = myHtml + "<b>"+landmarkdata[number]['schoolname']+"</b><br>";
		myHtml = myHtml + "<a href='http://map.answerbox.net/user-" + landmarkdata[number]['userid'] + ".htm'>"+ landmarkdata[number]['usernick']+"</a><br>";
		myHtml = myHtml + "身高" + landmarkdata[number]['height']+"<br>";
		myHtml = myHtml + "人氣" + landmarkdata[number]['views']+"<br>";
		myHtml = myHtml + landmarkdata[number]['schoolname']+"<br>";
		myHtml = myHtml + "</td></tr></table>";
		map.openInfoWindowHtml(point, myHtml);
	  });
	  return marker;
	}


	function displaylandmarks(){
	      map.closeInfoWindow();
	      
		  GAsync(map, 'getBounds', function(bounds) {
			var southwestlat = bounds.getSouthWest().lat();
			var southwestlng = bounds.getSouthWest().lng();
			var northeastlat = bounds.getNorthEast().lat();
			var northeastlng = bounds.getNorthEast().lng();
			var currentTime = new Date();
			var currentTimeStamp = currentTime.getTime();
			_IG_FetchContent('http://map.answerbox.net/mappletbackend.php?time='+currentTimeStamp+'&southwestlat='+southwestlat+'&southwestlng='+southwestlng+'&northeastlat='+northeastlat+'&northeastlng='+northeastlng, function (responseText) {
				landmarkdata = eval('(' + responseText + ')');
				while(markers.length>0){
					var oldmarker = markers.shift()
					map.removeOverlay(oldmarker);
				  }
				for(var i=0;i<landmarkdata.length;i++){
					lat = landmarkdata[i]['lat'];
					lng = landmarkdata[i]['lng'];	
					var marker = createMarker(new GLatLng(lat, lng), i);
					markers.push(marker);
					map.addOverlay(marker);
				}

			});
		  });
	}

	function popuplandmark(userindex){
		 var userlat = userdata[userindex]['lat'];
		 var userlng = userdata[userindex]['lng'];
		 var point = new GLatLng(userlat, userlng);
		 map.setCenter(point, 8);
		 displaylandmarks();
		 var myHtml = '';
		 myHtml = myHtml + "<table><tr><td>";
		 myHtml = myHtml + "<img src='"+userdata[userindex]['coverthumbnail']+"'>";
		 myHtml = myHtml + "</td><td valign='top'>";
		 myHtml = myHtml + "<b>"+userdata[userindex]['schoolname']+"</b><br>";
		 myHtml = myHtml + "<a href='http://map.answerbox.net/user-" + userdata[userindex]['userid'] + ".htm'>"+ userdata[userindex]['usernick']+"</a><br>";
		 myHtml = myHtml + "身高" + userdata[userindex]['height']+"<br>";
		 myHtml = myHtml + "人氣" + userdata[userindex]['views']+"<br>";
		myHtml = myHtml + userdata[userindex]['schoolname']+"<br>";
		 myHtml = myHtml + "</td></tr></table>";
		 map.openInfoWindowHtml(point, myHtml);
	}

  displaylandmarks();
  var currentTime = new Date();
  var currentTimeStamp = currentTime.getTime();
  _IG_FetchContent('http://map.answerbox.net/mappletbackend_topcandidates.php?time='+currentTimeStamp, function (responseText) {
    userdata = eval('(' + responseText + ')');
	var userstr = '';
	var k=0;
	var numperrow = 5;
	userstr += "<table>";
	for(var j=0;j<userdata.length;j++){
		var userthumbnail = userdata[j]['thumbnail'];

		if(k % numperrow == 0){
			userstr += "<tr>";
		}
		userstr += "<td><img style='cursor: pointer;' onclick='popuplandmark("+j+");' src='" + userthumbnail + "'></td>"
		k++;
		if(k% numperrow == 0){
			userstr += "</tr>";
		}
	}
	if(k % numperrow != 0){
		for(var n=0; n< (numperrow - (k % numperrow)); n++){
			userstr += "<td>&nbsp;</td>";
		}
		userstr += "</tr>";
	}

	userstr += "</table>";
	document.getElementById('candidates').innerHTML = userstr;
  });
  
  _IG_FetchContent('http://map.answerbox.net/mapplettracking.php?time='+currentTimeStamp, function (responseText) {
  });
  
</script>

]]></Content>
</Module>