var $slider_started = true;

$(function() { 
	
	$("body").addClass("js");
	
	// External Link
	$("a[href*='http://']:not([href*='"+location.hostname+"']),.external").click( function() {
    	window.open(this.href);
    	$(this).addClass("external");
    	return false;
    });
	
	
	// Drop downmenu
	$("#mainNav li").hover(function(){
        $('ul',this).show();    
    }, function(){
        $('ul',this).hide();    
    });

	if($('#accordion').length >= 1){
		$('#accordion').easyAccordion({ 
			autoStart: false, 
			slideNum: false,
			slideInterval: 3000
		});
	}
	
	if($('.contact').length >= 1){
		$('.contact').ketchup();
	}
	
	if($('.callback').length >= 1){
		$('.callback').ketchup();
	}
	
	var tabContainers = $('div.tabs > div');
	tabContainers.hide().filter(':first').show();
	
	$('div.tabs ul.tabNavigation a').click(function () {
		tabContainers.hide();
		tabContainers.filter(this.hash).show();
		$('div.tabs ul.tabNavigation li').removeClass('selected');
		$(this).parent().addClass('selected');
		return false;
	}).filter(':first').click();

	function filterPath(string) {
		return string
		.replace(/^\//,'')
		.replace(/(index|default).[a-zA-Z]{3,4}$/,'')
		.replace(/\/$/,'');
	}
	var locationPath = filterPath(location.pathname);
	var scrollElem = scrollableElement('html', 'body');

	$('a[href*=#]').click(function(e) {
		e.preventDefault();
		var thisPath = filterPath(this.pathname) || locationPath;
		if(locationPath == thisPath && (location.hostname == this.hostname || !this.hostname) && this.hash.replace(/#/,'') ) {
			var $target = $(this.hash), target = this.hash;
			if (target) {
				var targetOffset = $target.offset().top;
				$(scrollElem).animate({scrollTop: targetOffset}, 400, function() {
					location.hash = target;
				});
			}
		} else {
			window.location = this.href;
		}
	});
					

	function scrollableElement(els) {
		for (var i = 0, argLength = arguments.length; i <argLength; i++) {
			var el = arguments[i],
			$scrollElement = $(el);
			if ($scrollElement.scrollTop()> 0) {
				return el;
			} else {
				$scrollElement.scrollTop(1);
				var isScrollable = $scrollElement.scrollTop()> 0;
				$scrollElement.scrollTop(0);
				if (isScrollable) {
					return el;
				}
			}
		}
		return [];
	}

	
	

});

