

var icon_s = new GIcon();
icon_s.image = "http://labs.google.com/ridefinder/images/mm_20_red.png";
icon_s.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
icon_s.iconSize = new GSize(12, 20);
icon_s.shadowSize = new GSize(22, 20);
icon_s.iconAnchor = new GPoint(6, 20);
icon_s.infoWindowAnchor = new GPoint(5, 1);      

icon_s_blue = new GIcon(icon_s,"http://labs.google.com/ridefinder/images/mm_20_blue.png"); 
icon_s_green = new GIcon(icon_s,"http://labs.google.com/ridefinder/images/mm_20_green.png"); 
icon_s_yellow = new GIcon(icon_s,"http://labs.google.com/ridefinder/images/mm_20_yellow.png"); 

var lat_min = null;
var lat_max = null;
var lng_min = null;
var lng_max = null;

function initMap(){
	
	
	initialize_map({
		map_id : "map_canvas",
		lat : 62.512318,
		lng : 16.523438,
		zoom : 4,
		nav_control : "large",
		zoom_control : "small",
		type_control : false,
		type : 'normal',
		geocoder : true,
		default_cc : "Sweden",
		markermanager : true,
		bounds : true,
		onload : false

	});

}

function get_member_markers(cfg){

	cfg = $.extend({
		url : site_url+"gmap/index.php",
		query : {}

	},cfg);

	var args = [];
	for(var i in cfg.query){
		args.push(i+"="+encodeURI(cfg.query[i]));
	}
	var query = args.join("&");

	$.ajax({ 
		type: "GET",
		url: cfg.url,
		data: query,
		dataType: "xml",
		success : function(xml){

			var xml_markers = $("markers marker", xml);
			var newIndex = Math.random();
			gcount[newIndex] = 0;
			var new_gcount = gcount[newIndex];

			$("markers marker", xml).each(function(){

				var current_marker = $(this);

				var id = current_marker.attr("id");
				var lat = current_marker.attr("lat");
				var lng = current_marker.attr("lng");
				var accuracy = current_marker.attr("accuracy");
				var label = $("label", current_marker).text();
				var infotxt = $("infowindow", current_marker).text();

				if(lng && lat && lng != 0 && lat != 0){
					if(!lat_min || parseInt(lat) < lat_min){lat_min = parseInt(lat);}
					if(!lat_max || parseInt(lat) > lat_max){lat_max = parseInt(lat);}

					if(!lng_min || parseInt(lng) < lng_min){lng_min = parseInt(lng);}
					if(!lng_max || parseInt(lng) > lng_max){lng_max = parseInt(lng);}


					var latlng = new GLatLng(lat,lng);
					gbounds.extend(latlng);

					var marker = create_marker({
						type : 'default',
						point : latlng,
						lat : null,
						lng : null,
						icon : icon_s_green,
						index : new_gcount + 1,
						popup : true,
						popuphtml : infotxt
					});			
					gmarkers[new_gcount] = marker;	
					new_gcount++;

				}
			});
			mm_add_markers(gmarkers,{bound:{zoom:true,maxzoom:12,center:true}});


		},
		error : function(d){
			
		}
	});



}

function find_centerpoint(cfg){
	
	cfg = $.extend({
		url : site_url+"gmap/index.php",
		query : {}
	
	},cfg);
	
	$("#search_button_container").hide();
	$("#search_button_status").html("Söker...").show();
	
	$.ajax({ 
		type: "GET",
		url: cfg.url,
		data: {
			output:"xml",
			key:google_map_key,
			city:typeof cfg.query.city != "undefined" ? cfg.query.city : "",
			zipcode:typeof cfg.query.zipcode != "undefined" ? cfg.query.zipcode : ""

		},
		dataType: "xml",
		success : function(xml){
			
			
			var xmldata = $("searchresults", xml);
			var numresults = $("numberofresults",xmldata).text();

			
			
			$("#search_results_list").empty();
			if(numresults == 0){
				$("#search_form_container").show();
				$("#search_results_container").hide();			
				if(typeof cfg.query.zipcode != "undefined" && cfg.query.zipcode.length > 0){
					$("#search_form_zipcode_errors").html("Du har inte fyllt i ett giltigt postnummer. Försök igen.").css({color:"#ff0000"}).show();
					
				}
				if(typeof cfg.query.city != "undefined" && cfg.query.city.length > 0){
					$("#search_form_city_errors").html("Det finns ingen medlem i orten du sökte på. Utöka din sökning till en annan ort eller sök på ett postnummer.").css({color:"#ff0000"}).show();
				}
				$("#search_button_container").show();
				$("#search_button_status").html("").hide();				
			}else{
				$("markers marker", xml).each(function(){

					var cm = $(this);
					var address = $("address", cm).text();
					var administrativearea = $("administrativearea", cm).text();
					var locality = $("locality",cm).text();
					var lng = $("lng", cm).text();
					var lat = $("lat", cm).text();

					var administrativearea = $("administrativearea", cm).text();
					var locality = $("locality", cm).text();
					var searchresult = $("searchresult", cm).text();
					if(searchresult){
						$("#search_results_list").append("<li><a href=\"index.php?displayresults=1&searchstring="+searchresult+"&numberofposts="+(typeof cfg.query.numberofposts != "undefined" ? cfg.query.numberofposts : 10)+"&lng="+lng+"&lat="+lat+"\">"+searchresult+"</a></li>");
					}else{
						$("#search_results_list").append("<li><a href=\"index.php?displayresults=1&searchstring="+address+"&numberofposts="+(typeof cfg.query.numberofposts != "undefined" ? cfg.query.numberofposts : 10)+"&lng="+lng+"&lat="+lat+"\">"+address+"</a></li>");
					}
				});
				$("#search_button_container").show();
				$("#search_button_status").html("").hide();

				$("#search_form_container").hide();
				$("#search_results_container").show();
			}





		},
		error : function(d){
			alert(d.responseText);
		}

	});
		
			

}

function get_member_req_markers(cfg){
	
	cfg = $.extend({
		url : site_url+"gmap/index.php",
		query : {}
	
	},cfg);
	
	var args = [];
	for(var i in cfg.query){
		args.push(i+"="+encodeURI(cfg.query[i]));
	}
	var query = args.join("&");

	$.ajax({ 
		type: "GET",
		url: cfg.url,
		data: query,
		dataType: "xml",
		success : function(xml){
			
			var xml_markers = $("markers marker", xml);
			var newIndex = Math.random();
			gcount[newIndex] = 0;
			var new_gcount = gcount[newIndex];
			$("markers marker", xml).each(function(){
				
				var current_marker = $(this);
				

				var id = current_marker.attr("id");
				var lat = current_marker.attr("lat");
				var lng = current_marker.attr("lng");
				var accuracy = current_marker.attr("accuracy");
				var label = $("label", current_marker).text();
				var infotxt = $("infowindow", current_marker).text();

				if(lng && lat && lng != 0 && lat != 0){
					if(!lat_min || parseInt(lat) < lat_min){lat_min = parseInt(lat);}
					if(!lat_max || parseInt(lat) > lat_max){lat_max = parseInt(lat);}

					if(!lng_min || parseInt(lng) < lng_min){lng_min = parseInt(lng);}
					if(!lng_max || parseInt(lng) > lng_max){lng_max = parseInt(lng);}


					var latlng = new GLatLng(lat,lng);
					gbounds.extend(latlng);
				
					var marker = create_marker({
						type : 'number',
						point : latlng,
						lat : null,
						lng : null,
						icon : icon_letter,
						index : new_gcount + 1,
						popup : true,
						popuphtml : infotxt
					});			
					gmarkers[new_gcount] = marker;	
					new_gcount++;
					/*add_marker(marker);*/
				}				

				
			});
			if(cfg.query.lng && cfg.query.lat){
				
				gmarkers[new_gcount] = create_marker({type:'libicon',libicon:'greendot',popup:true,popuphtml:(typeof cfg.searchstring != "undefined" && cfg.searchstring.length > 0 ? '<h2>'+cfg.searchstring+'</h2><p>Denna plats matchar din sökning.</p>' : '<h2>Din sökning</h2><p>Denna plats matchar din sökning.</p>'),lng:cfg.query.lng,lat:cfg.query.lat});
			}
			
			mm_add_markers(gmarkers,{bound:{zoom:true,maxzoom:12,center:true}});
			
		},
		error : function(d){
			alert(d.responseText);
		}
	});		

}