// IE console fix
if(typeof(console) === 'undefined') {
	var console = {}
	console.log = console.error = console.info = console.debug = console.warn = console.trace = console.dir = console.dirxml = console.group = console.groupEnd = console.time = console.timeEnd = console.assert = console.profile = function() {};
}

// ////////////////////////////////////////////////////////////////////
// START INIT 

$(function(){
	var startIndex = 0;
	if(document.location.hash)
	{
		var hash = document.location.hash.substring(1);
		startIndex = hash;
		$(".menuBox a").removeClass("selected").filter(":eq("+startIndex+")").addClass("selected");
	}
	 
	// tabClicked variable makes sure the bluecontainer doesn't close when the searchbar looses focus
	var tabClicked = false;
	// skipheaderbar variable makes sure the bluecontainer doesn't close when the searchbar gets focus
	var skipHeaderBar = false;
	$(".headerBar").click(function(e){
		if(skipHeaderBar)
		{
			skipHeaderBar = false;
			return;
		}
		e.preventDefault();
		var blue = $(".blueContainer");
		if(blue.is(":visible"))
		{
			$(this).find(".selected").removeClass("selected");
			blue.slideUp();
		}
		return false;
	});
	
	// tab click
	$(".headerBar .tab").click(function(e){
		tabClicked = true;
		e.preventDefault();
		toggleBlueContainer($(this));
		return false;
	});
	
	// search bar focus / blur
	$(".headerBar input").click(function(){
		tabClicked = false;
		skipHeaderBar = true;
	}).focus(function(e){
		tabClicked = false;
		skipHeaderBar = true;
		toggleBlueContainer($(this));
		$(this).parents(".searchbox").addClass("selected");
	}).blur(function(e){
		var $this = $(this);
		if ($this.parents(".searchbox").hasClass("selected")) {
			setTimeout(function() {
				if (tabClicked) {
					tabClicked = false;
					return false;
				}
				skipHeaderBar = true;
				toggleBlueContainer($this);
				$this.parents(".searchbox").removeClass("selected");
			}, 125);
			return false;
		}
	});
	
	// hide stuff
	$(".onLoadHide").hide().removeClass("onLoadHide");
		
	// add slideshow func
	$(".contentBoxContainer").creunaSlideshow({startIndex: startIndex, fullWidth: true});	
	$(window).resize(function(){
		$(".contentBoxContainer").creunaSlideshow("resize");	
	});
		
	//  change slides
	$(".menuBox a").click(function(e){
		var links = $(".menuBox a");
		links.removeClass("selected");
		$(this).addClass("selected");
		var index = links.index($(this));
		if(index >= 0){
			$(".contentBoxContainer").creunaSlideshow("setSlide",index);
		}
		
        $(".fishCampaignOverlay").hide();
	});
	
	
	// change tabs
	$(".newTabs .tabs a").click(function(){
		if($(this).hasClass("selected")) return false;
	
		// remove selected class
		$(this).parents(".newTabs").find(".selected").removeClass("selected");
		
		// get tab class name
		var type = $(this).get(0).className;
		
		// set selected class
		$(this).parents(".newTabs").find("."+type).addClass("selected");
		
		return false;
	});
	$(".newSlides").creunaSlideshow({dibs: true, autoplay: true, sliderInterval: $("#hdfTimeInterval").val()});	

}); 

// END INIT 
// ////////////////////////////////////////////////////////////////////

// Blue header container
function toggleBlueContainer($el, force)
{
	var blue = $(".blueContainer");
	var blueChildren = blue.find(".inner").children();
	var selected = 	blueChildren.filter(":visible");
	if($el.hasClass("selected")){
		$el.removeClass("selected");
		blue.slideUp("fast");
		return;
	}
	
	$el.parents(".headerBar").find(".selected").removeClass("selected");
	$el.addClass("selected");
	
	var find = "tagCloud";
	if($el.hasClass("produce")){
		// råvarer
		find = "produce";		

	}else if($el.hasClass("recipes")){
		find = "recipes";
	}else if($el.hasClass("search")){
		find = "tagCloud";
	}

	if(blue.is(":visible") && selected.hasClass(find)){
		// close
		blue.slideUp("fast");
		return;
	}else if(blue.is(":visible") && !selected.hasClass(find)){
		var visible = blue.find(".inner").children().filter(":visible");
		visible.fadeOut("fast", function(){ 
			blue.find("."+find).fadeIn("fast", function(){
				if(find == "produce")
				{
					eqHeight(".blueContainer .produce .column");
				}
			}); 
		});
			
	}else if(!blue.is(":visible")){
		blueChildren.hide().filter("."+find).show();
		blue.slideDown("fast");
		if(find == "produce")
		{
			eqHeight(".blueContainer .produce .column");
		}
	}
	
	return find;
}

function eqHeight(el)
{
	var mh = 0;
	var $el = $(el);
	$el.each(function(){
		mh = $el.height()>mh ? $el.height() : mh;
	}).height(mh);
}

