var map = null;
var geocoder = null;
expes.initShowLargeMapByLatlng=function(){
	var el=$$('.a_ShowLargeMapByLatlng');
	el.addEvent('click',function(){
		var arr=el.getProperty('rel').toString().split('-');
		var name=arr[0];
		var longitude=arr[1];
		var latitude=arr[2];
		var grade=parseInt(arr[3]);
		showGeoMapByLatlng(longitude,latitude,grade);
		var mapStr='<div id="map" style="width:711px;height:390px;"></div>';
		showAreaMapDialog(name,mapStr);
	});
}
expes.initShowIntro=function(){
	var status = {
	'true': '隐藏简介',
	'false': '显示简介'
	};
	tog=$('toggle');
	var mySlide = new Fx.Slide('geo_description');
	mySlide.hide();
	tog.addEvent("click", function(e){
		$('geo_description').setStyle('display','block');
		e.stop();
		mySlide.toggle();
	});
	mySlide.addEvent('complete', function() {
		tog.set('html', status[mySlide.open]);
	});
}
expes.initSetGeoInfo=function(){
	var arr=$$('.a_SetGeoInfo').getProperty('rel').toString().split('-');
	var longitude=arr[1];
	var latitude=arr[2];
	var grade=parseInt(arr[3]);
	setLocation(longitude,latitude,grade);
	$('geo_form').addEvent('submit',function(e){
		new Event(e).stop();
		$rt=checkInputGeoInfo();
		if($rt==true){
			loading($('geo_form').getElements('input[type=submit]')[0]);
			$('geo_form').set('send',{onComplete:function(){
				stopLoading($('geo_form').getElements('input[type=submit]')[0]);
				if(this.response.text=="1"){
					$('tips').set('html','');
					rt_success($('tips'),'添加成功，请等待审核')
				}else if(this.response.text=="-1"){
					$('tips').set('html','该地区的英文名已经被占用了');
				}else{
					$('tips').set('html','未添加成功，未知错误'+this.response.text);
				}
			}}).send();
		}else{
		}
	});
}
var checkInputGeoInfo=function(){
	if($('name').value.trim()==''){
		$('tips').set('html','请输入地区名称');
		return false;
	}else if($('en_name').value.trim()==''){
		$('tips').set('html','请输入地区英文名称');
		return false;
	}else{
		return true;
	}
}
var setLocation=function(longitude,latitude,grade){
	scale=getScale(grade);
	if (GBrowserIsCompatible()) {
		geocoder = new GClientGeocoder();
		geocoder.getLatLng('', function(point){
			point=new GLatLng(latitude, longitude);
			var map = new GMap2(document.getElementById("map"));
			map.addControl(new GLargeMapControl());
			map.setCenter(point, scale);
			if (longitude==0){
				var marker = new GMarker(point, {
					draggable: true
				});
			}else {
				var marker = new GMarker(new GLatLng(longitude, latitude), {
					draggable: true
				});
			}
			var marker = new GMarker(point, {
				draggable: true
			});
			map.addOverlay(marker);
			GEvent.addListener(marker, "dragstart", function(){
				map.closeInfoWindow();
			});
			GEvent.addListener(marker, "dragend", function(){
				var pointLatLng=marker.getLatLng().toString();
				$("latitude").value = pointLatLng.substring(1,pointLatLng.indexOf(','));
				$("longitude").value = pointLatLng.substring(pointLatLng.indexOf(',')+1,pointLatLng.length-1).trim();
			});
		});
	}
}
function getScale(grade){
	switch (grade) {
		default:
			scale = 10;
			break;
		case 1:
			scale = 1;
			break;
		case 2:
			scale = 2;
			break;
		case 3:
			scale = 3;
			break;
		case 4:
			scale = 6;
			break;
		case 5:
			scale = 12;
			break;
		case 6:
			scale = 14;
			break;
	}
	return scale;
}
function showEventMap(longitude,latitude,grade){
	scale=getScale(grade);
	if (GBrowserIsCompatible()) {
		geocoder = new GClientGeocoder();
		geocoder.getLatLng('', function(point){
			point=new GLatLng(latitude, longitude);
            if (!point) {
            }
            else {
				map = new GMap2(document.getElementById("map"));
				//map.addControl(new GLargeMapControl());
				//map.addControl(new GHierarchicalMapTypeControl());
                map.setCenter(point, scale);
				//add overlay
				var marker = new GMarker(point);
				map.addOverlay(marker);
				map.setUIToDefault();
				GEvent.addListener(marker, "click", function() {marker.openInfoWindowHtml('<a href="http://ditu.google.cn/maps?hl=zh-CN&amp;ie=UTF8&amp;dirflg=r&amp;f=d&amp;daddr='+$('map').getProperty('rel')+'" target="_blank">驾车/公交路线</a>');});
            }
        });
	}
}
function showGeoMapByLatlng(longitude,latitude,grade){
	scale=getScale(grade);
	if (GBrowserIsCompatible()) {
		geocoder = new GClientGeocoder();
		geocoder.getLatLng('', function(point){
			point=new GLatLng(latitude, longitude);
            if (!point) {
            }
            else {
				map = new GMap2(document.getElementById("map"));
				map.addControl(new GLargeMapControl());
				map.addControl(new GHierarchicalMapTypeControl());
                map.setCenter(point, scale);
				//add overlay
				var marker = new GMarker(point);
				map.addOverlay(marker);
            }
        });
	}
}
function showGeoMapByName(address,grade){
	scale=getScale(grade);
	if (GBrowserIsCompatible()) {
		geocoder = new GClientGeocoder();
		showAddress(address, scale);
	}
}
var showAreaMapDialog = function(name,div) {
	if($('large_dialog')!=null) return;
	var overlay  = new Element('div', {id: 'large_overlay'});
	var dialog  = new Element('div', {id: 'large_dialog'});
	overlay.inject($('body'),'bottom');
	dialog.inject($('body'),'bottom');
	if(div != null){
		$('large_dialog').set('html',"<div id='large_closelink'><span class=\"title\" style='float:left;text-align:left;width:80%;'>"+name+"地图</span><span onclick='$(\"large_overlay\").dispose();$(\"large_dialog\").dispose();return false;' style='float:right;width:18%;color:#fff;'>X</span></div>"+div);
	}else{
		$('large_dialog').set('html',"<div class='loadpop'>正在载入，请稍候...</div>");
	}
	var oheight = (Browser.Engine.trident?1:16);
	$('large_overlay').setStyle('height',$('large_dialog').offsetHeight+oheight+5);
}

var showLargeMapByName=function(name,grade){
	window.addEvent("domready",function(){
		showGeoMapByName(name,grade);
	});
	var mapStr='<div id="map" style="width:711px;height:390px;"></div>';
	showAreaMapDialog(name,mapStr);
}
var selectLocationDialog=function(lid){
	showDialog(null);
	var str='';
	var jr = new Request.JSON({url: '/json.php?r=geo&lid='+lid, urlEncoded:true, async: false, onComplete: function(j){
		var geos=j.childgeos;
		var parentgeo=j.parentgeo;
		geos.each(function(g){
			str+='<a href="javascript:void(0)" onclick="selectLocationDialog('+g.lid+')">'+g.name+'</a>&nbsp;<img style="cursor:pointer;" onclick="selectLocationToInput('+g.lid+',\''+g.name+'\')" src="/image/tick.png" align="absmiddle"></img>&nbsp;&nbsp;&nbsp;';
		});
		var parentgeo_lid;
		parentgeo.each(function(pg){
			parentgeo_lid=pg.lid;
		});
		if(lid){
			$('dialog').set('html',dialogCloseStr('选择')+'<div style="padding:0 10px;line-height:150%;"><a href="javascript:void(0)" onclick="selectLocationDialog('+parentgeo_lid+')" style="text-decoration:underline">返回上一级</a><br>'+str+'</div>');
		}else{
			$('dialog').set('html',dialogCloseStr('选择')+'<div></div>'+str);
		}
		setOverlay();
	}}).get();
	//showDialog(dialogCloseStr('gf0')+'');
}
var selectLocationToInput=function(lid,name){
	$('lid').value=$('lid').value+lid+',';
	$('lidspan').set('html',$('lidspan').get('html')+' <span id="span'+lid+'">'+name+'<a href="javascript:void(0)" class="oper" onclick="deleteSelectedLocation('+lid+')">x</a>&nbsp;&nbsp;&nbsp;&nbsp;</span>');
	closeDialog();
}
var deleteSelectedLocation=function(lid){
	$('lid').value=$('lid').value.replace(lid+',','');
	var spanID='span'+lid;
	$(spanID).dispose();
}
function labelRestaurant(address,longitude,latitude,grade){
	scale=getScale(grade);
	if (GBrowserIsCompatible()) {
		geocoder = new GClientGeocoder();
		geocoder.getLatLng(address, function(point){
			var map = new GMap2(document.getElementById("map"));
			map.addControl(new GLargeMapControl());
			map.setCenter(point, scale);
			if (longitude==0){
			    var marker = new GMarker(point, {
				    draggable: true
			    });
			}else {
				var marker = new GMarker(new GLatLng(longitude, latitude), {
				    draggable: true
			    });
			}
			var marker = new GMarker(point, {
				draggable: true
			});
			map.addOverlay(marker);
			GEvent.addListener(marker, "dragstart", function(){
				map.closeInfoWindow();
			});
			GEvent.addListener(marker, "dragend", function(){
				$("latlng").value = marker.getLatLng();
			});
		});
	}
}

function showRestaurant(longitude,latitude){
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
        map.addControl(new GSmallMapControl());
		map.setCenter(new GLatLng(longitude, latitude), 16);
		var marker = new GMarker(new GLatLng(longitude, latitude));
		map.addOverlay(marker);
	}
}
function showAddress(address,scale){
    if (geocoder) {
        geocoder.getLatLng(address, function(point){
            if (!point) {
            }
            else {
				var map = new GMap2(document.getElementById("map"));
				map.addControl(new GLargeMapControl());
                map.setCenter(point, scale);
				//add overlay
				var marker = new GMarker(point);
				map.addOverlay(marker);
            }
        });
    }
}
function starMouseover(star,div){
	changeStar(star,div);
	var fix=div.substr(4,1);
	switch(star){
		case 1:
		  $("scorespan"+fix).innerHTML="很烂";
		  break;
		case 2:
		  $("scorespan"+fix).innerHTML="不怎么样";
		  break;
		case 3:
		  $("scorespan"+fix).innerHTML="比较一般";
		  break;
		case 4:
		  $("scorespan"+fix).innerHTML="还不错";
		  break;
		case 5:
		  $("scorespan"+fix).innerHTML="非常好";
		  break;
	}
}
function changeStar(star,div){
	switch(star){
		case 1:
		  $(div+"1").src="/image/blue/sth.gif";
		  $(div+"2").src="/image/blue/nst.gif";
		  $(div+"3").src="/image/blue/nst.gif";
		  $(div+"4").src="/image/blue/nst.gif";
		  $(div+"5").src="/image/blue/nst.gif";
		  break;
		case 2:
		  $(div+"1").src="/image/blue/sth.gif";
		  $(div+"2").src="/image/blue/sth.gif";
		  $(div+"3").src="/image/blue/nst.gif";
		  $(div+"4").src="/image/blue/nst.gif";
		  $(div+"5").src="/image/blue/nst.gif";
		  break;
		case 3:
		  $(div+"1").src="/image/blue/sth.gif";
		  $(div+"2").src="/image/blue/sth.gif";
		  $(div+"3").src="/image/blue/sth.gif";
		  $(div+"4").src="/image/blue/nst.gif";
		  $(div+"5").src="/image/blue/nst.gif";
		  break;
		case 4:
		  $(div+"1").src="/image/blue/sth.gif";
		  $(div+"2").src="/image/blue/sth.gif";
		  $(div+"3").src="/image/blue/sth.gif";
		  $(div+"4").src="/image/blue/sth.gif";
		  $(div+"5").src="/image/blue/nst.gif";
		  break;
		case 5:
		  $(div+"1").src="/image/blue/sth.gif";
		  $(div+"2").src="/image/blue/sth.gif";
		  $(div+"3").src="/image/blue/sth.gif";
		  $(div+"4").src="/image/blue/sth.gif";
		  $(div+"5").src="/image/blue/sth.gif";
		  break;
	}
}
function starClick(star,div){
	changeStar(star,div);
	var fix=div.substr(4,1);
	switch(star){
		case 1:
		  $("score"+fix).value="1";
		  $("scorespan"+fix).innerHTML="很烂";
		  break;
		case 2:
		  $("score"+fix).value="2";
		  $("scorespan"+fix).innerHTML="不怎么样";
		  break;
		case 3:
		  $("score"+fix).value="3";
		  $("scorespan"+fix).innerHTML="比较一般";
		  break;
		case 4:
		  $("score"+fix).value="4";
		  $("scorespan"+fix).innerHTML="还不错";
		  break;
		case 5:
		  $("score"+fix).value="5";
		  $("scorespan"+fix).innerHTML="非常好";
		  break;
	}
}

function beenMapz(uid){
	var map = new GMap2(document.getElementById("map"));
	map.setCenter(new GLatLng(31.862706,117.286307), 13);
	map.addControl(new GSmallMapControl());
	GDownloadUrl("http://www.handbig.com/restaurant/"+uid+"/been.xml", function(data) {
          var xml = GXml.parse(data);
          var markers = xml.documentElement.getElementsByTagName("marker");var restaurantMarkers=new Array();var comments=new Array();
          for (var i = 0; i < markers.length; i++) {
			  var latlng = new GLatLng(parseFloat(markers[i].getAttribute("lng")),parseFloat(markers[i].getAttribute("lat")));
			  restaurantMarkers[i]=new GMarker(latlng);comment[i]=markers[i].getAttribute("comment").toString();
			  map.addOverlay(restaurantMarkers[i]);
		}
		var mar0=restaurantMarkers[0];
		GEvent.addListener(mar0, "click", function() {mar0.openInfoWindowHtml("<img src='/storeicon/1.jpg'/><br>");});
		var mar4=restaurantMarkers[4];
		GEvent.addListener(mar4, "click", function() {mar4.openInfoWindowHtml("<img src='/storeicon/1.jpg'/><br>");});
		var mar5=restaurantMarkers[5];
		GEvent.addListener(mar5, "click", function() {mar5.openInfoWindowHtml("<img src='/storeicon/1.jpg'/><br>");});
		});//downloadurl
		/*
		var latlng1 = new GLatLng(31.85825005163649,117.2756838798523);
			marker1=new GMarker(latlng1);
			map.addOverlay(marker1);
			GEvent.addListener(marker1, "mouseover", function() {marker1.openInfoWindowHtml("<img src='/storeicon/1.jpg'/>");});

	var latlng2 = new GLatLng(31.85995005163649,117.2856838798523);
			marker2=new GMarker(latlng2);
			map.addOverlay(marker2);
			GEvent.addListener(marker2, "mouseover", function() {marker2.openInfoWindowHtml("<img src='/storeicon/2.jpg'/>");});
			*/
				
}
function showBeenDialog(rid){
	showDialog(null,'');
	
	var htmlStr='<div style="margin:10px; display:block; float:left;">';
	htmlStr+='<form id="myform" action="/restaurant/'+rid+'/beenAct" method="post">';
	htmlStr+='<div>总共去了几个人 <input type="text" class="input_blur" name="people" id="people"></input></div><br>';
	htmlStr+='<div>总共花了多少钱 <input type="text" class="input_blur" name="money" id="money"></input> 元</div><br><input type="hidden" name="score" id="score"></input>';
	htmlStr+='<div>写点评论的话：<textarea style="width:360px;height:100px;overflow-y:auto;" name="comment" id="comment" class="input_blur"></textarea></div>';
	htmlStr+='<div>点击星星给该店打个分数 <img src="/image/blue/nst.gif" onclick="starClick(1,\'star\')" id="star1"></img><img src="/image/blue/nst.gif" onclick="starClick(2,\'star\')" id="star2"></img><img src="/image/blue/nst.gif" onclick="starClick(3,\'star\')" id="star3"></img><img src="/image/blue/nst.gif" onclick="starClick(4,\'star\')" id="star4"></img><img src="/image/blue/nst.gif" onclick="starClick(5,\'star\')" id="star5"></img> <span id="scorespan"></span> <span id="tips"></span></div>';
	htmlStr+='<div style="margin-top:10px;">请提供正确信息对该店进行客观的评价 <input class="submit" value="提交信息" onclick="var patrn=/^[0-9]{0,5}$/;if(!patrn.exec($(\'people\').value)||!patrn.exec($(\'money\').value)){$(\'tips\').set(\'html\',\'<font color=red>同去人数和花钱总数要填写整数数字并确保数字基本正确</font>\');return false;}else if($(\'score\').value.length==0){$(\'tips\').set(\'html\',\'<font color=red>请给该店打一个分数</font>\');return false;}else if($(\'comment\').value.length==0){$(\'tips\').set(\'html\',\'<font color=red>请填写一下评论内容</font>\');return false;}" type="submit"></div>';
	htmlStr+='</form>';
	htmlStr+='</div>';
	
	var restaurantName;
	var skin;
	var jsonRequest = new Request.JSON({url: '/bupu.php?r=restaurantJson&rid='+rid, onComplete: function(jsonObj){
		var restaurants=jsonObj.restaurant;
		restaurantName=restaurants[0].name;
		$('dialog').set('html',dialogCloseStr(restaurantName)+htmlStr);
		setOverlay();
	}}).get({'rid': rid});
	
}