//*******************************************************************************************
// Google Maps
//*******************************************************************************************
var map, box;
var draggable = false, resizable = false;
var mouseX, mouseY, drawnX, drawnY;
//var resizedX, resizedY;
var iMapLeft;

window.onload = function() {
 // Make the variable box global
 box = document.getElementById("drag");
 iMapLeft = box.style.left.substr(0,box.style.left.length-2);
 // Register mouse move listener
 document.onmousemove=watchMouse;
 
 moveAd();
 moveMap();
}

window.onresize = function() {
 moveAd();
 moveMap();
}


window.onunload = function() {
  // Make sure that GUnload() is called when necessary on unload
  if(box.style.visibility == "visible")
     GUnload();
}



//Mouse move listener
function watchMouse(e) {
  // Include possible scroll values
  var sx = window.scrollX || document.documentElement.scrollLeft|| 0;
  var sy = window.scrollY || document.documentElement.scrollTop|| 0;

  if(!e) e = window.event; // IEs event definition
  mouseX = e.clientX + sx;
  mouseY = e.clientY + sy;

 if(draggable) { 
   //The box is being dragged
   box.style.left= (mouseX - drawnX) + "px";
   box.style.top = (mouseY - drawnY) + "px";
 }
}


function dragstart(e) { // Calculate mouse position for dragging

 draggable = true;

 // Avoid selecting the content of the box while dragging
 if(e.cancelable) { e.preventDefault(); }
 if(window.event) { box.onselectstart = new Function("return false"); }

 drawnX = mouseX - parseInt(box.style.left);
 drawnY = mouseY - parseInt(box.style.top);

 //The box is being dropped
 box.onmouseup = function() { draggable = false; }
}




function loadMap(lat, lng, zoom, gmls, title) {

 if(GBrowserIsCompatible()) {

  if (!IsNumeric(lat) || !IsNumeric(lng)) {
     lat=35.497889;
     lng=12.616253;
  }
  if (!IsNumeric(zoom)) {
     zoom=1;
  }

  var point = new GLatLng(lat, lng);
  map = new GMap2(document.getElementById("map"));
  map.setCenter(point, parseInt(zoom), G_NORMAL_MAP);
  map.addControl(new GLargeMapControl());
  var mapControl = new GMapTypeControl();
  map.addControl(mapControl);
  
  if (title!='') {
     var marker = new GMarker(point,{draggable:false});
     map.addOverlay(marker);
     map.openInfoWindow(map.getCenter(), document.createTextNode(title));
  } else {
     var marker = new GMarker(point,{draggable:true});
     map.addOverlay(marker);
     GEvent.addListener(marker, "dragend", function() {
	if (marker) {
	   map.setCenter(marker.getPoint());
	   //marker.setPoint(map.getCenter());
	}
	updateURL(marker);
     });
  }

  //GEvent.addListener(marker, "click", function() {
  // marker.openInfoWindowHtml(name);
  //});
  
  if (gmls) {
     //bind a search control to the map, suppress result list
     map.addControl(new google.maps.LocalSearch(), new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10,20)));
  }
  
  box.style.visibility = "visible";
 }
}


function hideMap() {
 box.style.visibility = "hidden";
 GUnload();
}


function updateURL(marker){
  var lat = marker.getPoint().lat().toFixed(6);
  var lng = marker.getPoint().lng().toFixed(6);
  document.getElementById("lat").value = lat;
  document.getElementById("lng").value = lng;
  document.getElementById("zoom").value = map.getZoom();
}
//*******************************************************************************************

// Adverts

function moveAd() {
    if (!document.images.hhd) return
    if (ie) {
        winWidth=document.body.offsetWidth;
    } else {
        winWidth=window.innerWidth;
    }
    adPos=(winWidth/2)+400-180
    ad = document.getElementById("advert");
    ad.style.left= adPos + "px";
}

function moveMap() {
    if (ie) {
        winWidth=document.body.offsetWidth;
    } else {
        winWidth=window.innerWidth;
    }
    //currPos = box.style.left.substr(0,box.style.left.length-2);
    //alert (box.style.centerOffset);
    //bPos=(winWidth/2)-box.style.centerOffset;
    bPos=(winWidth/2)-iMapLeft;
    box.style.left = bPos + "px";
}