function setup_handlers () {

//Brew U Sections
$("#tutorialTabs").tabs({
	fx: {opacity: 'toggle' },
	select: function(event,ui) {
		var num = parseInt(ui.index) + 1;
		var li = "bbp" + num;
		$("#tutorialTabs li").removeClass("itsme");
		$("#"+li).addClass("itsme");			
	}
});

function switchBrewUTabs(id){
	switch(id){
		case "TutorialLink": var toShow = $("#tutorialTabs"); break;
		case "StylesLink": var toShow = $("#stylesTab"); break;
		case "IngredsLink": var toShow = $("#Ingred_Roundabout"); break;
	}

	var current = $("#bts_brewU div.divider_right:visible");
	$(current).fadeOut('slow', function(){
		$(toShow).fadeIn('slow');
		if(!($.support.opacity)){this.style.removeAttribute("filter");}
	});
}

$("#TutorialLink, #StylesLink, #IngredsLink").click(function(e){
	e.preventDefault();
	switchBrewUTabs( $(this).attr('id') );
	$("#bts_brewU div.divider_left a").removeClass('currentLink');
	$(this).addClass('currentLink');
});
								  

//Store Section
$("#storeTabs").tabs({
	fx: {opacity: 'toggle' },
	select: function(event,ui) {
		var num = parseInt(ui.index) + 1;
		var li = "store" + num;
		$("#storeTabs li").removeClass("itsme");
		$("#"+li).addClass("itsme");
		var newDiv = $("<div></div>")
			.attr("id","clearFixDiv")
			.height('297px');
		
		$("#bts_store").append(newDiv);
	},
	show: function(ev,ui){
		$("#clearFixDiv").remove();
	}
});


//Recipes Section
$("#searchLink").click(function(e){
	e.preventDefault();
	$("#basic_keyword").val("");
	$("#searchForm").tabs('select',0);
	$("#recipeTabs").fadeOut('slow',function(){
		$("#searchBox").fadeIn('slow',function(){
			if(!($.support.opacity)){this.style.removeAttribute("filter");}
			setAutoComplete("basic_keyword", "results", "Functions/recipeSearch.cfc?method=autocomplete&returnformat=json&string=");
		});
	});
	$("#browseLink").removeClass("currentLink");
	$(this).addClass("currentLink");
});

$("#browseLink").click(function(e){
	e.preventDefault();
	$("#searchBox").fadeOut('slow', function(){
		$("#recipeTabs").fadeIn('slow',function(){
    		if(!($.support.opacity)){this.style.removeAttribute("filter");}
		});
	});
	$("#searchLink").removeClass("currentLink");
	$(this).addClass("currentLink");
});

$("#searchForm").tabs({
	fx:{opacity:'toggle'},
	select: function(ev,ui){
		if(ui.index == 0){
			$("#basicLink").addClass("current");
			$("#advancedLink").removeClass("current");
			$("#basic_keyword").val("");
		}
		else{
			$("#advancedLink").addClass("current");
			$("#basicLink").removeClass("current");
		}
	}
});

}

$(document).ready(function(){
	setup_handlers();
	var recipeTabs={};
	initRecipeScroll();
	
	$("#recipeTabs").tabs({
		fx: {opacity:'toggle'},
		select: function(ev,ui){
			var num = parseInt(ui.index) + 1;
			var li = "rTab" + num;
			$("#recipeTabs li").removeClass("itsme");
			$("#"+li).addClass("itsme");
			if(ui.index == 0){
				var theDiv = "newest";
				recipeTabs.current = 'newest';
			} else{
				var theDiv = "topRated";
				recipeTabs.current = 'topRated';
			}
		},
		show: function(ev,ui){
			scrollRecipes();
		}
	});
	
	$("#tutorialTabs").tabs('select',0);
	$("#stylesTab").hide();
	//$("#tutorialTabs").hide();
	
	$("#storeTabs").tabs('select',4);
	$("#recipeTabs").tabs('select',0);
	$("#searchForm").tabs('select',0);
	$("#basicLink").click(function(){
		$("#searchForm").tabs('select',0);
	});
	$("#advancedLink").click(function(){
		$("#searchForm").tabs('select',1);
	});

	$("#basic_submit").click(function(e){
		e.preventDefault();
		document.basic_search_form.submit();
	});
	$("#aS_Submit").click(function(e){
		e.preventDefault();
		document.advanced_search_form.submit();
	});
	
	function initRecipeScroll(){
		recipeTabs = {
			'current':'newest',
			"topRated":{
				"divs":[],
				"showing":{
					"start":1,
					"end":4
				}
			},
			"newest":{
				"divs":[],
				"showing":{
					"start":1,
					"end":4
				}
			}
		};
		var newest = $("#newestRecipes .holders");
		var topRated = $("#topRatedRecipes .holders");
		$.each(newest, function(a,b){
			recipeTabs.newest.divs.push($(this));
		});
		$.each(topRated, function(a,b){
			recipeTabs.topRated.divs.push($(this));
		});
		recipeTabs.outerDivTop = recipeTabs.newest.divs[0].parents().offset().top;
	}
	
	function scrollRecipes(scrollUp){
		var theDiv = recipeTabs.current;
		var divs = recipeTabs[theDiv].divs;
		var outerDivTop = recipeTabs.outerDivTop + 2;
		var startRow = recipeTabs[theDiv].showing.start;
		var endRow = recipeTabs[theDiv].showing.end;
		//find height container must be
		var totalHeight = 0;
		//firefox crappy animation fix
		/*if($.browser.mozilla && $.browser.version < "1.9.2"){
			for(var i=0;i<startRow-1;i++){divs[i].hide();}//if(start:2 end:5)  - 1
			for(var i=endRow;i<divs.length;i++){divs[i].hide();}//6 - 10
			for(var i=startRow-1;i<endRow;i++){divs[i].show();}
		}*/
		for(var i=startRow-1;i<endRow;i++){
			totalHeight+=divs[i].height();
		}
		//$("#"+theDiv+"Container").height(totalHeight+'px');
		//scroll if necessary
		var startDivTop = divs[startRow-1].offset().top;
		var scrollSpot = startDivTop - outerDivTop;
		var scrollTime = 500;
		if(startRow == 2 && !scrollUp){scrollSpot+=30;}
		$("#"+theDiv+"Container").animate({height:totalHeight+8, scrollTop:"+="+scrollSpot},scrollTime);
		if(endRow == 10){
			$("#"+theDiv+"ScrollDown").attr('href','index.cfm?action=recipe').html('Browse More').css('paddingTop','5px');
		}else{$("#"+theDiv+"ScrollDown").attr('href','#').html('<img src="/'+bSaur.version+'/images/Down_Button.png" />').css('padding','0');}
		if(startRow == 1){$("#"+theDiv+"ScrollUp").hide().html("").css({'cursor':'default','height':'0'});}else{$("#"+theDiv+"ScrollUp").html('<img src="/'+bSaur.version+'/images/Up_Button.png" />').css({'cursor':'pointer','height':'30px'}).fadeIn();
		}

		
	}
	
	$("#recipeTabs a.scrollLink").live('click', function(e){
		if($(this).attr('href') == '#'){e.preventDefault();}
		//where to scroll to
		var theDiv = recipeTabs.current;
		var scrollUp = $(this).attr('id') == theDiv+'ScrollUp';
		var startRow = recipeTabs[theDiv].showing.start;
		var endRow = recipeTabs[theDiv].showing.end;
		if(scrollUp) {
			if(startRow != 1){
				recipeTabs[theDiv].showing.start = startRow - 1;
				recipeTabs[theDiv].showing.end = endRow - 1;
			}
		}else{
			if(endRow != 10){
				recipeTabs[theDiv].showing.start = startRow + 1;
				recipeTabs[theDiv].showing.end = endRow + 1;
			}
		}
		scrollRecipes(scrollUp);
	});
	
	//---------------------Roundabout----------------------------------------------
	if($.support.opacity){
		if( typeof(startingChild) == 'undefined' ) { var startingChild = 0; }
		
		function startMoving() {
			return setInterval(function() {
				$('#Ingred_Roundabout ul').roundabout_animateToNextChild()
			}, 5000);
		}
		
		var interval = startMoving();
		
		$("#Ingred_Roundabout ul li").not(':eq('+startingChild+')').children('h5').children('a').css('display','none');
		
		$("#Ingred_Roundabout ul").css('width','650px').roundabout({
			minScale:0.5,
			startingChild:startingChild
		});
		
		$("#Ingred_Roundabout ul li").focus(function(e){
			$(this).children('h5').children('a').fadeIn('fast');
		}).blur(function(e){
			$(this).children('h5').children('a').fadeOut('fast');
		}).hover(function(e){
			clearInterval(interval);
		}, function(e){
			interval = startMoving();
		});
	}
	
});

