var $current = null;
var duration = 200;

$.fn.fadeItIn = function() {
	this.stop();
	this.css('opacity', '0');
	this.css('visibility','visible');
	this.animate({opacity: '1'});
};

$.fn.fadeItOut = function() {
	var elem = this;
	this.stop();
	this.animate({opacity: '0'}, function() {
		elem.css('visibility', 'hidden');
	});
};

$(document).ready(function() {
	$('.nojs').removeClass('nojs');
	
	if (isIE()) {
		$('#minimap').addClass('nojs');
		$('#contact').addClass('nojs');
		//$('#faq').addClass('nojs');
  }
	
	$('#navigation li.active div').css('height', '49px');

	$('#navigation li').bind('mouseenter', function(e) {
		var $newcurrent = $(this).find('div');
		
		if ($newcurrent.height() != 0) {
			return;
		}
	
		if ($current) {
			$current.stop();
			$current.animate({height: '0px'}, duration);
		} else {
			$('#navigation li.active div').animate({height: '0px'}, duration);
		}
		
		$newcurrent.animate({height: '49px'}, duration);
		
		$current = $newcurrent;
	});
	
	$('#sharethisbutton').toggle(
		function() {
			$('#sharethis').animate({height: '51px'});
		},
		function() {
			$('#sharethis').animate({height: '16px'});
		}
	);
	
	/*$('#faq').bind('mouseenter', function(e) {
		if (isIE()) {return;}
	
		if ($('#faq .popup').css('visibility') == 'hidden') {
			$('#faq .popup').fadeItIn();
		}
	});
	
	$('#faq').bind('mouseleave', function(e) {
		if (isIE()) {return;}
	  
		$('#faq .popup').fadeItOut();
	});*/
	
	$('#minimap').bind('mouseenter', function(e) {
		if (isIE()) {return;}
	
		if ($('#minimap .popup').css('visibility') == 'hidden') {
			$('#minimap .popup').fadeItIn();
		}
	});
	
	$('#minimap').bind('mouseleave', function(e) {
		if (isIE()) {return;}
	
		$('#minimap .popup').fadeItOut();
	});
	
	$('#contact').bind('mouseenter', function(e) {
		if (isIE()) {return;}
	
		if ($('#contact .popup').css('visibility') == 'hidden') {
			$('#contact .popup').fadeItIn();
		}
	});
	
	$('#contact').bind('mouseleave', function(e) {
		if (isIE()) {return;}
		
		$('#contact .popup').fadeItOut();
	});
	
	$('#route').bind('click', function() {
		calculateRoute($('#startaddress').val());
	});
	
	$('#cities a').bind('mouseover', function() {
		var val = $(this).attr('rel');
		var xval = val.split(',')[0];
		var yval = val.split(',')[1];
		$('#worldmapimg').stop().animate({marginLeft: -xval + 'px'});
		$('#worldmapdot').stop().animate({marginTop: yval + 'px'});
	});
	
	$('#cities a').bind('click', function(e) {
		e.preventDefault();
	});
});

function isIE() {
	return navigator.appName == 'Microsoft Internet Explorer';
}