// MeHere example user script
//
// ==UserScript==
// @name        MeHere Example 3 - Placeopedia
// @namespace   http://mehere.glenmurphy.com/
// @description Connecting MeHere to Placeopedia
// @include     http://www.placeopedia.com/
// @include     http://placeopedia.com/
// ==/UserScript==

(function () {
  var coordInterval;
  var coords;

  function getcoords() {
    GM_xmlhttpRequest({
      method: 'GET',
      url: 'http://localhost:7305/csv',
      onload: function(responseDetails) {
        coords = responseDetails.responseText.split(',');
        if(!coordInterval && coords && coords[2]) {
          mh_setup();
          coordInterval = setInterval('getcoords()',1000);
        }
      }
    });
  }

  function mhrecenter() {
    if(typeof(coords[2]) != undefined) {
      var map = unsafeWindow.map;
      if(map.getZoomLevel() > 4) {
        map.centerAndZoom({x:coords[0], y:coords[1]}, 4);
      }
      else {
        map.recenterOrPanToLatLng({x:coords[0], y:coords[1]});
      }
    }
  }

  function mh_setup() {
    output = document.createElement('h3');
    output.className = 'blue';
    output.innerHTML = '<a href="#" onclick="return false;" style="color:white;">'
                     + '<img src="http://mehere.glenmurphy.com/i/mh_ico.gif" '
                     + '  width="32" height="32" alt="MeHere" border="0" />'
                     + '&nbsp;Center Map On Me</a>';
    output.addEventListener("click", mhrecenter, false);
    document.getElementById('main').insertBefore(
      output, 
      document.getElementById('search_container')
    );
  }

  getcoords();
})();
