var icons = [];
var gmarkers = [];
var gdata = [];
var map;

var noRefresh = false;

var oldCenter;
var maxZoomOut;

function loadmap(){
	if (!GBrowserIsCompatible()) {
		return false;
	}

	if (document.forms.searchform.mType.value==0 || document.forms.searchform.mType.value==1){
		var immoIcon = new GIcon();
		immoIcon.image = "images/marker/marker_ie.gif";
		immoIcon.iconSize = new GSize(62, 71);
		immoIcon.iconAnchor = new GPoint(10, 70);
		immoIcon.infoWindowAnchor = new GPoint(32, 7);
		immoIcon.transparent = "images/marker/marker_trans.png";
		immoIcon.printImage = "images/marker/marker_ie.gif";
		immoIcon.mozPrintImage = "images/marker/marker_ff.gif";
		icons[0] = immoIcon;
		icons[1] = immoIcon;
		icons[2] = immoIcon;
	}

	map = new GMap2(document.getElementById("map"));
	//map.addControl(new GLargeMapControl());
	//map.addControl(new GMapTypeControl());
	map.addControl(new GOverviewMapControl());
	map.setCenter(new GLatLng(51.1898,9.5923),6);
	oldCenter = map.getCenter();

	GEvent.addListener(map, "zoomend", function(oldLever,newLevel) {
			if (newLevel<maxZoomOut){
				if (document.forms.frel.autoreload.checked) liveSearchStart(true);
			}
		});
	GEvent.addListener(map, "moveend", function() {
		 	if (noRefresh==false){
				var mapbounds = map.getBounds();
				var width = Math.abs(mapbounds.getNorthEast().lat() - mapbounds.getSouthWest().lat());
				var height = Math.abs(mapbounds.getNorthEast().lng() - mapbounds.getSouthWest().lng());

				var latMove = Math.abs(oldCenter.lat() - map.getCenter().lat());
				var lngMove = Math.abs(oldCenter.lng() - map.getCenter().lng());

				var latPC = 100*latMove/width;
				var lngPC = 100*lngMove/height;

				if (latPC > 25 || lngPC > 25){
				//if (latMove > 0.005 || lngMove > 0.015){
		 			if (document.forms.frel.autoreload.checked){
		 				liveSearchStart(true);
		 				bMove = true;
		 			}
				}
	 		}else{
	 			noRefresh = false;
	 		}
		});
	showOrte();
}

function createMarker(point,index,icontype) {
  	var marker = new GMarker(point,icons[icontype]);
  	GEvent.addListener(marker, "click", function() {
    										noRefresh = true;
    										marker.openInfoWindowHtml(getInfo(index));
  										});
  	return marker;
}

function createMarkerS(pos,point,index,icon) {
  	var marker = new GMarker(pos,icon);
  	GEvent.addListener(marker, "click", function() {
  											map.setCenter(point,13);
  											if (document.forms.frel.autoreload.checked==false) liveSearchStart(true);
  										});
  	return marker;
}


function showInfo(index){
	noRefresh=true;
	gmarkers[index].openInfoWindowHtml(getInfo(index));
}

function zoom(lat,lng,lvl){
	noRefresh=true;
	map.setCenter(new GLatLng(lat,lng),lvl);
}

function setGMapType(type){
	switch (type){
	case 2:
		map.setMapType(G_HYBRID_MAP);
		break;
	case 1:
		map.setMapType(G_SATELLITE_MAP);
		break;
	default:
		map.setMapType(G_NORMAL_MAP);
		break;
	}
}

function GZoomIN(){
	tmp=map.getZoom();
	if (tmp<17)map.setZoom(tmp+1);
}

function GZoomOUT(){
	tmp=map.getZoom();
	if (tmp>=6)map.setZoom(tmp-1);
}