var Uads = new Array();
var UadThread = 0;
var mapExt;
var Upois = new Array();
var peopleClickPopu;

function LittleMapInit() {
  _Umap.addListener('zoom', mapChange);
  _Umap.addListener('moveend', mapChange);
  _Umap.addListener('click', mapClickForLittleMap);
  
  if(loc_x && loc_y) {
  	  var x = parseFloat(loc_x);	//x
	  var y = parseFloat(loc_y);	//y
	  var latlng = new ULatLng(y, x, U_TM2_COORDSYS);
	  _Umap.centerAndZoom(latlng, 9);
  } else gotoCookieLocation();
  /*if(U.gi('selectedCity'))
    U.gi('selectedCity').onchange = getCityCenter;
  if(U.gi('addressBut'))
  	U.gi('addressBut').onclick = adSearch;
  if(U.gi('Submit'))
  	U.gi('Submit').onclick = adInsert;*/
  adSearch();
  
  SearchAll();	//小地圖  上的地標
  
  if(U.gi('moreLove'))
  	U.gi('moreLove').onclick = moreLove;
}

function moreLove() {
	window.location = '../../valentine.jsp?morelove=1';
	//document.getElementById('ValentineListFrame').src="event/valentine/love04.jsp?type=allGBList";
	//alm.getLayout('mainLayout').showPanel('listDiv');
}

function adSearch() {
  var url = 'HotPeopleSearch.jsp?numbers=4';
  //alert(url);
  U.loadByAjax(url, adSearchHotPeople);
}

function adSearchHotPeople(xmlhttp) {
  //alert("enter call back");
  //clearPoi();
  var doc = xmlhttp.responseText.trim();
  //alert(doc);
  var ads = doc.split(';');
  //alert(ads.length);  
  var bounds = _Umap.getBounds();
  if(ads.length > 0) {
	  for(var i=0; i<ads.length; i++) {
		  var j = i;
		  var data = ads[i].split(',');
		  
		  var name = data[0];	//告白者暱稱
		  var cult = data[1];	//告白對象
		  var address = data[2];	//address
		  
		  var content = data[3];	//content
		  var photo = data[4];	//photo
		  var date = data[5];	//date
		  
		  //var x = parseFloat(data[6]);	//x
		  //var y = parseFloat(data[7]);	//y
		  var gaobai = 'gaobai';
		  gaobai += (j+1);
		  //alert(gaobai);
		  var thePhotoLink = gaobai + '1';
		  if('http://'==photo.trim()) {	
			  photo = '<img src="img/no_photo.gif" alt="no_photo" width="119" height="89" />';
		  } else {
			  photo = '<img src="'+photo+'" onerror="this.src=\'img/no_photo.gif\'" alt="no_photo" width="119" height="89" />';
		  }
		  document.getElementById(thePhotoLink).innerHTML = photo;
		  var thePtoP = gaobai + '2';
		  document.getElementById(thePtoP).innerHTML = name + ' to ' + cult;
		  var theGaobaiDate = gaobai + '3';
		  document.getElementById(theGaobaiDate).innerHTML = '('+date+')';
		  var theContent = gaobai + '4';
		  document.getElementById(theContent).innerHTML = content;
	  }
  }
}

function SearchAll() {
  var bounds = _Umap.getBounds();
  
  var url = 'searchAll.jsp?NEx='+bounds.getNorthEast().x()+'&NEy='+bounds.getNorthEast().y()+'&SWx='+bounds.getSouthWest().x()+'&SWy='+bounds.getSouthWest().y();
  //alert(url);
  U.loadByAjax(url, adSearchCallback);
  //ajaxCall(url, adSearchCallback, true);
}
function adSearchCallback(xmlhttp) {
  //alert("enter call back");
  clearPoi();
  //(xmlhttp.responseText);
  var doc = xmlhttp.responseText.trim();
  if(!doc) return;
  //alert(doc);
  var ads = doc.split(';');
  //alert(ads.length);  
  var bounds = _Umap.getBounds();
  if(ads.length > 0) {
	  for(var i=0; i<ads.length; i++) {
		  var data = ads[i].split(',');
		  
		  var name = data[0];	//告白者暱稱
		  var cult = data[1];	//告白對象
		  var address = data[2];	//address
		  
		  var content = data[3];	//content
		  var photo = data[4];	//photo
		  var date = data[5];	//date
		  
		  var x = parseFloat(data[6]);	//x
		  var y = parseFloat(data[7]);	//y
		  
		  var accountId = data[8];
		  var times = data[9];
		  
		  var idkey = data[10];
		  
		  var title = name + ' to ' + cult;
		  var latlng = new ULatLng(y, x, U_TM2_COORDSYS);
		  var ad = new UMarker(latlng, UadIconLove, title);
		  ad.isAdPoi = true;
		  
		  ad.name = name;
		  ad.cult = cult;
		  ad.address = address;
		  
		  ad.content = content;
		  ad.photo = photo;
		  ad.date = date;
		  
		  ad.accountId = accountId;
		  ad.times = times;
		  
		  ad.idkey = idkey;
		  
		  Upois.push(ad);
		  _Umap.addOverlay(ad);
		  
		  //if(peopleClickPopu && peopleClickPopu == accountId) {
		  if(peopleClickPopu && peopleClickPopu == idkey) {
		  	//alert(peopleClickPopu +','+accountId);
			mapClickForLittleMap(ad,latlng);
			peopleClickPopu = null;
		  }
	  }
  }
}
/*
function mapClick(overlay, latlng) {
  if(overlay) {
    if(!overlay.isAdPoi)
      return;
    //UviewAd = true;
	popo_MapMove = false;
	
    overlay.openInfoWindow('<font color="#333333"><strong>'+overlay.label+'</strong></font>'+ overlay.desc+getNearCityShopHTML(), (paopaoW+theH), (paopaoH+theH));
	U.gi('setStartLink').onclick = function() {_setRoutingStartLocation(overlay.getPoint(), overlay.label);};
    U.gi('setEndLink').onclick = function() {_setRoutingEndLocation(overlay.getPoint(), overlay.label);};
	
  }
}
*/
function mapChange() {
  clearTimeout(UadThread);
  if(_Umap.getZoomLevel()<7) {
    clearAds();
	clearPoi();
  } else {
	//alert('mapChange:'+UadThread);
	UadThread = setTimeout(SearchAll, 1000);
  }
  writeCookieLocation();
  // about 基礎地標
  /*clearTimeout(UpoiThread);
  if(_Umap.getZoomLevel()<7) {
    clearPoi();
	clearPoi();
  } else {
	  if(UadCategory && UviewAd)
    	UpoiThread = setTimeout(function() {getPoi(UpoiSource, UpoiType);}, 1000);
  }*/
  //UviewAd = false;	//回復移動map即search狀態
}

function clearAds() {
  while(Uads.length>0)
    _Umap.removeOverlay(Uads.pop());
}
function clearPoi() {
  while(Upois.length>0)
    _Umap.removeOverlay(Upois.pop());
}
/*function adInsert() {
  var location_x;
  var location_y;
  var userPoint;
  //alert('Uads.length==>'+Uads.length);
  if(Uads.length > 0) {
	  userPoint = Uads[0];
  }
  if(userPoint) {
	  var _UPoint = userPoint.getPoint();
	  //alert(_UPoint.lat()+'\n'+_UPoint.lng());
	  //alert(_UPoint.x()+'\n'+_UPoint.y());
	  location_x = _UPoint.x();
  	  location_y = _UPoint.y();
  } else {
	  alert("請先 <<定位>> \"告白地點\"");
	  return;
  }
  var accountId = U.gi('accountId').value;
  //告白者暱稱
  var surName = U.gi('surName').value;
  if('' == surName.trim()) {
	  surName = accountId;
  }
  //告白對象
  var cult = U.gi('cult').value;
  if('' == cult.trim()) {
	  cult = '某人';
  }
  var address = '';
  if('' != U.gi('selectedCity').value) {
	  address += U.gi('selectedCity').value;
  }
  if('' != U.gi('address').value) {
	  address += U.gi('address').value;
  } else {
	  address += '無';
  }
  //內容
  var saying = U.gi('saying').value.replace(/\r\n|\r|\n/g, '<br>');
  //if('' == saying.trim()) {
	  
  //}
  var photoLink = U.gi('photoLink').value;
  if('http://' == photoLink.trim()) {
	  photoLink = '';
  }
  //alert(location_x+'\n'+location_y);
  var encode = '';
  if(xbDetectBrowser()){
	  encode = 'Big5';
  } else {
	  encode = 'UTF-8';
  }
  //var bounds = _Umap.getBounds();
  
  var url = 'insertORupdate.jsp?accountId='+accountId+'&surName='+surName+'&cult='+cult+'&address='+address+'&saying='+saying+'&photo='+photoLink+'&location_x='+location_x+'&location_y='+location_y+'&encode='+encode;
  //alert(url);
  U.loadByAjax(url, adInsertCallback);
}
function adInsertCallback(xmlhttp) {
	var doc = xmlhttp.responseText.trim();
	alert(doc);
}*/

String.prototype.trim=trim;
function trim() {
	return this.replace(/^\s+|\s+$/g,"");
}
//get cookie
function gotoCookieLocation() {
  var str = document.cookie;
  //alert(str);
  if(!str) {
    _Umap.centerAndZoom(new ULatLng(25.04, 121.55), 9);
    return false;
  }
  str = unescape(str)+';';
  var idx = str.indexOf('lastLocation=');
  if(idx<0) {
    _Umap.centerAndZoom(new ULatLng(25.04, 121.55), 9);
    return false;
  }
  str = str.substring(idx+13, str.indexOf(';', idx));
  //alert(str);
  var xyz = str.split(',');
  var lat = parseFloat(xyz[0]);
  var lng = parseFloat(xyz[1]);
  var lv = parseInt(xyz[2]);
  //alert(lat+','+lng);
  if(0==lat || 0==lng)
  	_Umap.centerAndZoom(new ULatLng(25.04, 121.55), 9);
  else
  	_Umap.centerAndZoom(new ULatLng(lat, lng), 9);
  //_Umap.centerAndZoom(new ULatLng(lat, lng), lv);	//20071206:修改預設層級為 8級
}

function writeCookieLocation() {
  //alert('writeCookieLocation');
  document.cookie = 'lastLocation='+escape(_Umap.getCenter().lat()+','+_Umap.getCenter().lng()+','+_Umap.getZoomLevel())+';expires=Wed, 01 Jan 2020 00:00:00 GMT';
  //alert('writeCookieLocation:' + document.cookie);
}
function xbDetectBrowser(){
	//alert(window.navigator.appName);
	if(window.navigator.appName.toLowerCase().indexOf("microsoft") != -1) {
		return true;
	} else {
		return false;
	}
}