﻿function checkMouseLeave(element, evt) {

 /* Avoid firing a mouseout event
 *  when the mouse moves over a child element.
 *  Borrowed from:
 *  http://www.faqts.com/knowledge_base/view.phtml/aid/1606/fid/145
 */
 if(element.contains && evt.toElement) {
   return !element.contains(evt.toElement);
 }
 else if(evt.relatedTarget) {
   return !containsDOM(element, evt.relatedTarget);
 }
}

function closeOverlayboxfromClick()
{
  var layerbox = document.getElementById("divOverlay");
  layerbox.style.display = "none";
}

function closeOverlaybox(e) {
 if(!e) e = window.event;
 var layerbox = document.getElementById("divOverlay");

 if(checkMouseLeave(layerbox, e))
  timer = setTimeout(function() {
   layerbox.style.display = "none"; }, 400);
}


function showOverlaybox() {

 var layerbox = document.getElementById("divOverlay");
 //var poibox = document.getElementById("divPOI");
 // Left size of more control plus mapdiv.style.left
 var offsetX = 70 + 15;
 // Top size of more control plus mapdiv.style.top plus more button height
 var offsetY = 7 + 35;

 var lpos = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(offsetX, offsetY));
 lpos.apply(layerbox);
 if(window.timer) clearTimeout(timer);
 layerbox.style.display = "block";
 //poibox.style.display = "none";
}

function overlayControl(){};
overlayControl.prototype = new GControl();
overlayControl.prototype.initialize = function(map) {

 var overlay = document.createElement("div");
 overlay.style.border = "1px solid black";
 overlay.title = "School Zones for 2011-12";
 var inner = document.createElement("div");
 inner.id = "list_overlay";
 inner.appendChild(document.createTextNode("School Zones for 2011-12..."));
 overlay.appendChild(inner);
 //overlay.onmouseover = showOverlaybox;
 //overlay.onmouseout = closeOverlaybox;
 overlay.onclick = showOverlaybox;
 map.getContainer().appendChild(overlay);
 return overlay;
}


overlayControl.prototype.getDefaultPosition = function() {
 return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(75, 7));
}

//function closePOIboxfromClick()
//{
//  var layerbox = document.getElementById("divPOI");
//  layerbox.style.display = "none";
//}

//function closePOIbox(e) {
// if(!e) e = window.event;
// var layerbox = document.getElementById("divPOI");

// if(checkMouseLeave(layerbox, e))
//  timer = setTimeout(function() {
//   layerbox.style.display = "none"; }, 400);
//}

//function showPOIbox() {

// var poibox = document.getElementById("divPOI");
// var layerbox = document.getElementById("divOverlay");
// // Left size of more control plus mapdiv.style.left
// var offsetX = 328 + 150;
// // Top size of more control plus mapdiv.style.top plus more button height
// var offsetY = 7 + 130 + 18;

// var lpos = new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(offsetX, offsetY));
// lpos.apply(poibox);
// if(window.timer) clearTimeout(timer);
// poibox.style.display = "block";
// layerbox.style.display = "none";
//}

//function poiControl(){};
//poiControl.prototype = new GControl();
//poiControl.prototype.initialize = function(map) {

// var poi = document.createElement("div");
// poi.style.border = "1px solid black";
// poi.title = "Available Points of Interest";
// var inner = document.createElement("div");
// inner.id = "list_poi";
// inner.appendChild(document.createTextNode("Points of Interest..."));
// poi.appendChild(inner);
// //poi.onmouseover = showPOIbox;
// //poi.onmouseout = closePOIbox;
// poi.onclick = showPOIbox;
// map.getContainer().appendChild(poi);
// return poi;
//}


//poiControl.prototype.getDefaultPosition = function() {
// return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(328, 7));
//}
