/*
function clearForm() {
userEmail=$('#email').data;
$('#event-submission').data="<p>Your event has been successfully been submitted.<br />A copy has been sent to the followiing email address<br /><br />"+userEmail;
}
 
function submitEvent() {
url="wp-content/themes/options/emailStuff.php";
data="flyer-front="+$('#flyer-front').data+"&flyer-back="+$('#flyer-back').data+"&other-image-1="+$('#other-image-1').data+"&other-image-2="+$('#other-image-2').data+"&event-name="+$('#event-name').data+"&event-description="+$('#event-description').data+"&ticket-price="+$('#ticket-price').data+"&ticket-outlets="+$('#ticket-outlets').data+"&name="+$('#name').data+"&tel="+$('#tel').data++"&email="+$('#email').data+"&website="+$('#website').data+data+"&message="+$('#message').data;
$.post(url, data, clearForm);}
*/
google.load("maps", "2.x");

var bizCard;
var locationLat;
var locationLong;


function parsePage() {
//alert("hello");
bizCard=document.getElementById("business-card");
//alert(bizCard.getElementsByClassName("longitude")[0].firstChild.nodeValue);
locationLong=bizCard.getElementsByClassName("longitude")[0].firstChild.nodeValue;
locationLat=bizCard.getElementsByClassName("latitude")[0].firstChild.nodeValue;
document.getElementById("button-view-map").onclick=initialize2;
//alert(locationLat);
//alert("bye");
}
  
   // Call this function when the page has been loaded
   function createMarker(point,html) {
        var marker = new GMarker(point);
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
        return marker;
      }

  function initialize() {
  
  if (locationLat && locationLong !="") {
  
    var map = new google.maps.Map2(document.getElementById("map"));
	map.addControl(new GLargeMapControl());
	    map.setCenter(new GLatLng(locationLat, locationLong), 15);
map.addControl(new GMapTypeControl());
	map.size=new GSize(559,350);
	
	 
	
var point = new GLatLng(locationLat,locationLong);
var marker = createMarker(point,'<div style="width:120px"><strong>'+bizCard.getElementsByClassName("fn")[0].firstChild.nodeValue + '</strong><br \/>' +
bizCard.getElementsByClassName("adr")[0].innerHTML+'<br \/><a href=\"'+ bizCard.getElementsByClassName("url")[0]+'\">View details<\/a><\/div>');
map.addOverlay(marker); 
document.getElementById("map").style.height="350px";

  }

  }
  //google.setOnLoadCallback(initialize);
  
   function initialize2() {
  
  if (locationLat && locationLong !="") {
  document.getElementById("map").style.height="350px";
  document.getElementById("map").style.width="559px";

setTimeout("var map = new google.maps.Map2(document.getElementById('map'));"+
	"map.addControl(new GLargeMapControl());"+
	 "map.setCenter(new GLatLng(locationLat, locationLong), 15);"+
"map.addControl(new GMapTypeControl());"+
	"map.size=new GSize(559,350);"+
	 
	
"var point = new GLatLng(locationLat,locationLong);"+
"var marker = new GMarker(point);"+
"marker.openInfoWindowHtml('<div style=\"width:120px\"><strong>'+bizCard.getElementsByClassName('fn')[0].firstChild.nodeValue + '</strong><br \/>' +"+
"bizCard.getElementsByClassName('adr')[0].innerHTML+'<br \/><a href=\"'+ bizCard.getElementsByClassName('url')[0]+'\">View details<\/a><\/div>');"+

"map.addOverlay(marker); ", 500);
setTimeout('document.getElementById("button-view-map").removeAttribute("onclick");',300);
  }
  }
  
/** Number stuff **/
/** Converts numeric degrees to radians */
if (typeof(Number.prototype.toRad) === "undefined") {
  Number.prototype.toRad = function() {
    return this * Math.PI / 180;
  }
}

/** Converts radians to numeric (signed) degrees */
if (typeof(Number.prototype.toDeg) === "undefined") {
  Number.prototype.toDeg = function() {
    return this * 180 / Math.PI;
  }
}

  
function calculateDistance(lat1, lon1, lat2, lon2 )
{
try{//alert('calculateDistance start');
        var R = 6371; // km
        var dLat = (lat2-lat1).toRad();
        var dLon = (lon2-lon1).toRad(); 
        var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
                Math.cos(lat1.toRad()) * Math.cos(lat2.toRad()) * 
                Math.sin(dLon/2) * Math.sin(dLon/2); 
        var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
        var d = R * c;
        return d;
    } catch(e)
    {
        //alert(e);
    }
    //alert('calculateDistance end');
}
  
function get_location() {//alert('start');
  navigator.geolocation.getCurrentPosition(setDistance, function(){/*alert('error in location');*/});
}

function setDistance(position)
{
//if(document.getElementsByClassName('vcard').length != (undefined || 0)  ) {return;}
try{//alert('set distance fired');
       var aHLocations = document.getElementsByClassName('vcard');
       var iLen = aHLocations.length;
       for(var x=0; x<iLen; x++)
       {
        var oPositionVen = {};
        
        var hGeo = aHLocations[x].getElementsByClassName('geo')[0];//alert(aHLocations[x]);
        var hLat = hGeo.getElementsByClassName('latitude')[0];
        var hLong = hGeo.getElementsByClassName('longitude')[0];
        var hDistanceH3 = aHLocations[x].getElementsByClassName('distance')[0];
        var hDistance = hDistanceH3.getElementsByClassName('value')[0];
        
        //alert(hLat.innerHTML);
        //alert(hLong.textContent);
        
        oPositionVen.latitude = parseFloat(hLat.textContent);
        oPositionVen.longitude = parseFloat(hLong.textContent);
        
        hDistance.textContent = calculateDistance(position.coords.latitude, position.coords.longitude, oPositionVen.latitude, oPositionVen.longitude ).toFixed(2);
       }
    } catch(e)
    {
        //alert(e);
    }
    //alert('set distance complete');
}

function initPage()
{
    parsePage();
    get_location();
}

window.onload=initPage;
 
//window.onload=parsePage;
