var subvalue = '';
var s_key = '';
function markMap(check){
//	$(".other_dotted").hide();
	if(check.checked==true){
		$("#loading").show();
		loadMarkers('cate',check.value);
	}else{
		hideMarkers('cate',check.value);
	}
}
function hideMarkers(key,value){
	$("#key_words_"+value).hide();
	i_marker=[];
	//	if(key == 'cate' && Farray_key_exist(gmarkers['cate'],value)){
	if(key == 'cate' && (jQuery.FinArray(gmarkers['cate'],value))){
		var eMarkers = gmarkers[key][value];
		for(var i in eMarkers){
			eMarkers[i].hide();
			eMarkers[i].closeInfoWindow();
		}
	} else if(key == 'search' && (jQuery.inArray(value,gmarkers['search']) <0)){
		var eMarkers = gmarkers[key][s_key];
		for(var i in eMarkers){
			eMarkers[i].hide();
			eMarkers[i].closeInfoWindow();
		}
	} else if(key=='map'){
		for(var i in gmarkers){
			for(var h in gmarkers[i]){
				for(var k in gmarkers[i][h]){
					gmarkers[i][h][k].hide();
					gmarkers[i][h][k].closeInfoWindow();
				}
			}
		}
		var checks = document.getElementsByName('mark');
		for(var i in checks){
			if(checks[i].value != value){
				checks[i].checked=false;
			}
		}
		$('addr').value='';
	}
}
function loadMarkers(key,value) {
	switch(key){
		case 'cate':
		var url='xml.php?xml=1&key=cate&value='+value;
		break;
		case 'search':
		var url='xml.php?xml=1&key=search&value='+value;
		hideMarkers('search',s_key);
		s_key = value;
		break;
		default:
		break;
	}


	//	if(Farray_key_exist(gmarkers,key) && Farray_key_exist(gmarkers[key],value)){

	if(jQuery.FinArray(gmarkers,key) && jQuery.FinArray(gmarkers[key],value)){
		var eMarkers = gmarkers[key][value];
		$("#loading").hide();
		for(var i in eMarkers){
			eMarkers[i].show();
		}
		i = eMarkers.length;
		$("#message").text('搜索结果:共找到'+i+'个位置。');
	}else{
		gmarkers[key][value] = [];
		GDownloadUrl(url, function(data) {
		
			var xml = GXml.parse(data);
			var emarkers = xml.documentElement.getElementsByTagName("marker");
			var emarkers_images = xml.documentElement.getElementsByTagName("mimages");
			var emarkers_logo = xml.documentElement.getElementsByTagName("mlogo");
			var emarkers_id = xml.documentElement.getElementsByTagName("gps_id");
			var emarkers_cate = xml.documentElement.getElementsByTagName("address_cate");
			var emarkers_lat = xml.documentElement.getElementsByTagName("lat");
			var emarkers_lng = xml.documentElement.getElementsByTagName("lng");
			var emarkers_status = xml.documentElement.getElementsByTagName("gps_status");
			var emarkers_label = xml.documentElement.getElementsByTagName("label");
			var emarkers_html = xml.documentElement.getElementsByTagName("html");
			var emarkers_guid = xml.documentElement.getElementsByTagName("guid");
			var emarkers_guname = xml.documentElement.getElementsByTagName("guname");
			var emarkers_gtype = xml.documentElement.getElementsByTagName("catename");
			var emarkers_title = xml.documentElement.getElementsByTagName("title");
			var emarkers_phone = xml.documentElement.getElementsByTagName("phone");
			var emarkers_addr = xml.documentElement.getElementsByTagName("addr");
			var emarkers_vok = xml.documentElement.getElementsByTagName("vok");
			var emarkers_vno = xml.documentElement.getElementsByTagName("vno");
			
			for (var i = 0; i < emarkers.length; i++) {
				var marker_id = getThisValue(emarkers_id[i]);
				var marker_cate = getThisValue(emarkers_cate[i]);
				var marker_lat = getThisValue(emarkers_lat[i]);
				var marker_lng = getThisValue(emarkers_lng[i]);
				var marker_status = getThisValue(emarkers_status[i]);
				var marker_label = getThisValue(emarkers_label[i]);
				var marker_html = getThisValue(emarkers_html[i]);
				var marker_guid = getThisValue(emarkers_guid[i]);
				var marker_guname = getThisValue(emarkers_guname[i]);
				var marker_gtype = getThisValue(emarkers_gtype[i]);
				var marker_title = getThisValue(emarkers_title[i]);
				var marker_phone = getThisValue(emarkers_phone[i]);
				var marker_addr = getThisValue(emarkers_addr[i]);	
				var marker_images=getThisValue(emarkers_images[i]);
				var marker_logo=getThisValue(emarkers_logo[i]);
				var marker_vok=getThisValue(emarkers_vok[i]);
				var marker_vno=getThisValue(emarkers_vno[i]);
				var marker = addMarker({id:marker_id,lat:marker_lat,lng:marker_lng,label:marker_label,html:marker_html,cate:marker_cate,status:marker_status,guid:marker_guid,guname:marker_guname,gtype:marker_gtype,title:marker_title,phone:marker_phone,addr:marker_addr,images:marker_images,logo:marker_logo,vok:marker_vok,vno:marker_vno});				
				map.addOverlay(marker);

				//		showResult({id:marker_id,lat:marker_lat,lng:marker_lng,label:marker_label,html:marker_html,cate:marker_cate,status:marker_status,guid:marker_guid,guname:marker_guname});
				i_marker.push({id:marker_id,lat:marker_lat,lng:marker_lng,label:marker_label,html:marker_html,cate:marker_cate,status:marker_status,guid:marker_guid,guname:marker_guname,gtype:marker_gtype,title:marker_title,phone:marker_phone,addr:marker_addr,images:marker_images,logo:marker_logo,vok:marker_vok,vno:marker_vno});
				gmarkers[key][value].push(marker);
			}
			$("#loading").hide();
//			alert('搜索完毕!共找到'+i+'个位置。');
			$("#message").text('搜索结果:共找到'+i+'个位置。');
        	$("#Pagination").pagination(i, {
        		num_edge_entries: 5,
        		num_display_entries: 5,
        		current_page:0,
        		callback: pageselectCallback
        	});
			showResult(i_marker,0);
		});
	}
}
function loadIcon(marker,isbig){
	var icon_id = marker.id;
	var icon_cate = marker.cate;
	var icon_lat = marker.lat;
	var icon_lng = marker.lng;
	var icon_status = marker.status;
	if(!gicons[icon_cate]){
		gicons[icon_cate] = [];
	}
	if(!gicons[icon_cate][icon_id]){
		var icon = new GIcon();
		switch (icon_cate){
			case '3':
			icon.image = "images/icongif/blue_jb.gif";
			break;
			case '4':
			icon.image = "images/icongif/blue_kft.gif";
			break;
			default:
			icon.image = "images/icongif/blue_home.gif";
			break;
		}
		//icon.image = "images/icongif/cate_"+icon_cate+".gif";
		icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
		if(isbig == 'true')
		icon.iconSize = new GSize(36, 36);
		else
		icon.iconSize = new GSize(25, 25);
		if(isbig == 'true')
		icon.shadowSize = new GSize(36, 36);
		else
		icon.shadowSize = new GSize(25, 25);
		icon.iconAnchor = new GPoint(25, 25);
		icon.infoWindowAnchor = new GPoint(5, 1);
		gicons[icon_cate][icon_id] = icon;
		return icon;
	}
	return gicons[icon_cate][icon_id];
}
function addMarker(marker){
	i++;
	var marker_id = marker.id;
	var marker_cate = marker.cate;
	var marker_lat = marker.lat;
	var marker_lng = marker.lng;
	var marker_status = marker.status;
	var marker_label = marker.label;
	var marker_html = marker.html;
	var marker_guid = marker.guid;
	var marker_guname = marker.guname;
	var marker_gtype = marker.gtype;
	var marker_logo = marker.logo;
	var marker_addr = marker.addr;
	var marker_vok = marker.vok;
	var marker_vno = marker.vno;
	var point = new GLatLng(marker_lat,marker_lng);
	var latlng = new GLatLng(point.lat(),point.lng());
	if(marker_status==1){
		var icon = loadIcon({id:marker_id,lat:marker_lat,lng:marker_lng,label:marker_label,html:marker_html,cate:marker_cate,status:marker_status},'true');
	}else{
		var icon = loadIcon({id:marker_id,lat:marker_lat,lng:marker_lng,label:marker_label,html:marker_html,cate:marker_cate,status:marker_status},'false');
	}
	markers[i] = new GMarker(point,icon);
	var provider = (marker_guid != 0 ? '<a href="space.php?uid='+marker_guid+'">'+marker_guname+'</a>' : '伙聚官方');
	//	var html = '当前位置:'+marker_label+'<br/>信息提供:'+provider+'<br/>简介:'+marker_html+'<br/><a href="javascript:vote('+marker_id+',1);">赞成</a> <a href="javascript:vote('+marker_id+',0);">反对</a>';
	var html = loadIconContent({id:marker_id,label:marker_label,provider:provider,html:marker_html,gtype:marker_gtype,logo:marker_logo,addr:marker_addr,vok:marker_vok,vno:marker_vno});
	GEvent.addListener(markers[i], "click", function() {
	//	map.size=new GSize(800,800);
		map.openInfoWindowHtml(latlng, html);
		//alert(marker_html);
	});
//		alert("i:"+i+",html:"+html);
		htmls[i] = html;
	//	sidebar_html += '<a href="javascript:myclick(' + i + ')">' + marker_label + '</a><br>';
	//	$('locations').innerHTML= sidebar_html;
	return markers[i];
}
function myclick(i) {
	markers[i].openInfoWindowHtml(htmls[i]);
}
function get_contrals() {
	var contrals = document.getElementById("map_contral");

	contrals.style.position = "absolute";
	contrals.style.left = "0px";
	contrals.style.display = "block";

	return contrals;
}

function mark_myicon() {
	
	if(userlogin == 1) {
		var show_tips=setInterval(function(){$("#tips").toggle();},300);//add by shang(添加热点提示)
		var icon = new GIcon();
		icon.image = "http://maps.google.com/intl/zh-CN_ALL/mapfiles/marker.png";
		icon.shadow = "http://maps.google.com/intl/zh-CN_ALL/mapfiles/shadow50.png";
		icon.iconSize = new GSize(20, 34);
		icon.shadowSize = new GSize(37, 34);
		icon.iconAnchor = new GPoint(20, 34);
		icon.infoWindowAnchor = new GPoint(9, 2);

		if(markerD == ''){
			var point = new GLatLng(map.getCenter().lat(),map.getCenter().lng());
			markerD = new GMarker(point, {icon:icon, draggable: true});
			map.addOverlay(markerD);
			markerD.enableDragging();

			GEvent.addListener(markerD, "mouseup", function(){
				subvalue =markerD.getPoint().toUrlValue();
				$('#location').val(subvalue);				
				var formhtml = $('#sub_location').html();
				markerD.openInfoWindowHtml(formhtml);
				clearInterval(show_tips);//add by shang(关闭热点提示)
			});
			GEvent.addListener(markerD, "mousedown", function(){
				markerD.closeInfoWindow();
			});
		} else {
			markerD.show();
		}
	} else{
		alert("请先登录系统");
	}
}
//提交热点
function sub_location(address,location,address_cate,ssid){
	markerD.closeInfoWindow();
	markerD.hide();
	url='ajax.php?cp=sublocation&address='+address+'&location='+location+'&address_cate='+address_cate+'&ssid='+ssid+'&callback=showSubResult&t='+Math.random();
	$.get(url,function(data){
		eval(data);		
	});
}
function sub_location_router(address,location,address_cate,ssid,url){
	markerD.closeInfoWindow();
	markerD.hide();
	var url_old=url;
	url='ajax.php?cp=sublocation&address='+address+'&location='+location+'&address_cate='+address_cate+'&ssid='+ssid+'&callback=showSubResult&t='+Math.random();
	$.get(url,function(data){
		eval(data);
		if(url_old){
		window.location.href = url_old;
		}
		
	});
}
function showSubResult(o){
	var info = o.property.resultinfo
	var result=o.data;
	if(result==1){
		alert(info);
	}else{
		alert(info);
	}
}
function vote(gid,score){
//	alert("gid:"+gid+",score:"+score);
	url='ajax.php?cp=vote&gid='+gid+'&score='+score+'&callback=showvoteResult&t='+Math.random();
	$.get(url,function(data){
		eval(data);
	});
}
function showvoteResult(o) {
	var info = o.property.resultinfo
	var result=o.data;

	if(result==1) {
		//
	}else{
		//
	}
	alert(info);
}
function showAddress(address) {
	loadMarkers('search',address);
}
function usrlogin(name,pw,key) {
	url='ajax.php?cp=login&username='+name+'&password='+pw+'&codekey='+key+'&callback=loginResult&t='+Math.random();
	//FloadJS(url,'','');
	$.get(url,function(data){
		eval(data);
		window.location.reload();
	});
}
function loginResult(o){
	var info = o.property.resultinfo
	var result=o.data;

	if(result==1){
		userlogin = 1;
		alert(info);
		if(!markerD){
			mark_myicon();
		} else {
			markerD.show();
		}
		$("main_location").innerHTML = '请拖动地图中的图标至自己要录入的位置。<br/>然后填写自己的位置信息<br/><br/><br/><br/><br/><br/><br/><br/>';

	}else{
		alert(info);
	}
}
function showErr(code){

	var o=Fid('search_list');

	switch(code){

		case 1:

		o.innerHTML='<div class="status_box"><p><strong>抱歉！系统繁忙，无法进行搜索。</strong></p></div>';

		break;

		default:
		o.innerHTML='<div class="status_box"><p><strong>抱歉！系统繁忙，无法进行搜索。</strong></p></div>';
	}
}
function swith_layer(layer) {
//	var layers = document.getElementById(layer);
//	document.getElementById(main_show).style.display = 'none';
	if (layer == 'main_location') {
		if(!markerD){
			mark_myicon();
		} else {
			markerD.show();
		}

	} else {
		if(markerD){
			markerD.hide();
			markerD.closeInfoWindow();
		}
	}
	//add by shang
//	$(".showtype_out").show();
//	$("#search_result").show();
//	$(".titlebar").show();
//	$("#main_location").hide();
//	
//	layers.style.display = 'block';
//	main_show = layer;
}
function pager(){
	this.option = {tabs:1,pnum:5};
	this.tabs=[];
	this.pages=[];
	this.turners=[];
	this.ontab='';
	this.page=1;
}
pager.prototype.pagetabs = function(a,id){
	if(a == 'insert'){

	} else if(a=='remove'){

	}
}
pager.prototype.loadturner = function(id,page){
	var ontab = this.ontab;

	$('tuner_'+id).style.display='block';
}

function loadIconContent(marker){
	var str="";
	str=str+'<div id=\'rdxx_main\'>';
	str=str+'<div id=\'rdxx_t\'>';
	str=str+marker.label;
	str=str+'</div>';
	str=str+'<div class=\'rdxx_a\'>'+marker.addr+'</div>';
	str=str+'<div id=\'rdxx_i\'>';
	str=str+'<div class=\'rdxx_i\'>场所类型：'+marker.gtype+'</div>';
	str=str+'<div class=\'rdxx_i\'>信息提供：'+marker.provider+'</div>';
	str=str+'<div class=\'rdxx_i\'>相关信息：'+marker.html+'</div>';
	str=str+'</div>';
	str=str+'<div class=\'toup\'>';
	str=str+'<div class="toup_result">';
	str=str+'<img src="http://chart.apis.google.com/chart?cht=bvg&chd=t:'+marker.vok +','+marker.vno +'&chs=80x80&chl='+marker.vok +'|'+marker.vno +'&chco=4d89f9,c6d9fd&chtt=投票结果"/></div>';
	str=str+'<div class=\'toup_k\'>';
	str=str+'<div class=\'toup_yes\'><a href="javascript:vote('+marker.id+',1);"><img src="images/normal.gif" width="80" height="24" /></a></div>';
	str=str+'<div class=\'toup_no\'><a href="javascript:vote('+marker.id+',0);"><img src="images/wrong.gif" width="80" height="24" /></a></div>';
	str=str+'</div>';
	str=str+'</div>';
	str=str+'</div>';
	return (str);
}

function showResult(marker,pape)
{

	/*	var marker_id = marker.id;
	var marker_cate = marker.cate;
	var marker_lat = marker.lat;
	var marker_lng = marker.lng;
	var marker_status = marker.status;
	var marker_label = marker.label;
	var marker_html = marker.html;
	var marker_guid = marker.guid;
	var marker_guname = marker.guname;*/
	var strs="";
	var num=5; //number per pape
	var iStart = pape*num;
	var iEnd = iStart + num ;
	for(var i = iStart; i< iEnd; i++) {
//		alert("pape:"+pape+",i:"+i);
        if(marker[i]){
            strs=strs+showItem(marker[i],i);
        }
//		alert("i:"+i+",id:"+marker.id);
//		markers[i].openInfoWindowHtml(htmls[i]);
	}
//	alert("pape:"+pape+",i:"+i);
		$("#result_sidebar").replaceWith("<ul id=\"result_sidebar\">"+strs+"</ul>");
	//alert(strs);
		$(".resultinfo").mouseover(function(){
		$(this).css("background-color","#FF8080");
	}).mouseout(function(){
		$(this).css("background-color","white");
	});

}
function showItem(marker,i){
	var marker_id = marker.id;
	var marker_cate = marker.cate;
	var marker_lat = marker.lat;
	var marker_lng = marker.lng;
	var marker_status = marker.status;
	var marker_label = marker.label;
	var marker_html = marker.html;
	var marker_guid = marker.guid;
	var marker_guname = marker.guname;
	var marker_logo=marker.logo;
	var marker_gtype=marker.gtype; 
	var marker_title=marker.titile;
	var marker_phone =marker.phone;
	var marker_addr  =marker.addr;
	var marker_images=marker.images;
	var marker_logo  =marker.logo;
	n=i+1;
	var str=("<li><div class='resultinfo other_dotted' onclick=\"showMarker("+n+");\"><div class='h2'>"+ marker.html+" </div><div>"+marker_addr+"</div></div></li>");
	
	return (str);
}

function getThisValue(obj){
	return document.all?obj.firstChild.nodeValue:obj.textContent;
}
function showMarker(i){
	//alert(">>>>>"+markers[i].getLatLng());
	map.setCenter(markers[i].getLatLng());
	markers[i].openInfoWindowHtml(htmls[i]);
	
}
function hide_show(){
	$(".showtype_out").hide();
	$("#search_result").hide();
	$(".titlebar").hide();
}
