if (lat == undefined || lon == undefined) {

	// geo location code hasn't run
	var lat = 37.4419;
	var lon = -122.1419;
	var user_location = 'Not specified';
	var gZoom = 1;
}
else {
	var user_location = lat + ',' + lon;
	var gZoom = 9;
}

function map_plot_location() {
			
	if (GBrowserIsCompatible()) {
		
		markerCount = 0;
		map = new GMap2(document.getElementById("location-map"));
		map.setCenter(new GLatLng(lat, lon), gZoom);
		map.addControl(new GSmallMapControl());
		
		GEvent.addListener(map, 'click', function(overlay, point) {
			
			if (markerCount < 1) { 
				
				var marker = new GMarker(point, { draggable: true });
				marker.mCount = ++markerCount;
				marker.bindInfoWindowHtml(marker.mCount);
				map.addOverlay(marker);
				
				user_location = point.lat().toFixed(4) + ',' + point.lng().toFixed(4);
				
				GEvent.addListener(marker, "dragend", function() {
					
					user_location = point.lat().toFixed(4) + ',' + point.lng().toFixed(4);

				});
			} 
		});
		
	}
}


var dosubmit = false;

$(document).ready(function(){ 

	$('form.comment').removeAttr('onsubmit');
	
	$('form.comment input[name=name]').parent().after('<dt><label for="email">Your email (optional):</label></dt><dd><input id="email" class="text" type="text" name="email"/></dd><dt><label for="telephone">Your telephone (optional):</label></dt><dd><input id="telephone" class="text" type="text" name="telephone"/></dd>');

	function commentSubmit(e) { 
			
		if(!dosubmit) {
		
			var date = new Date();      
			var comment = $('textarea#comments').val();
			$('textarea#comments').val(comment + " LOCATION: " + user_location + " DATE: " + date.toUTCString());
		
			var data = ("name="+$('input[name=name]').val()+"&comment="+$('textarea[name=comment]').val()+"&email="+$('input[name=email]').val()+"&telephone="+$('input[name=telephone]').val());
			
			e.preventDefault();
						
			$.ajax({
				dataType: 'jsonp',
				data: data,
				jsonp: 'jsonp_callback',
				url: 'http://'+'wotm.bbc.airlock.net'+'/email-handler/',
				success: function (response) {
					dosubmit = true;									
					$('form.comment').submit();					
				}
			});
			
			var timeout = setTimeout(function() {
				$('form.comment').unbind('submit', commentSubmit).submit();			
			}, 4000);			
			
			return false;
			
		}
		
		      
    }
	
	$('form.comment').submit(commentSubmit);
	
	if($('#location-map').length > 0) {
	
		map_plot_location();
	
	}
	
});
