/***************************************/
// jQuery Tabber
// By Jordan Boesch
// www.boedesign.com
// Dec 25, 2007 (Merry Christmas!)
/***************************************/

(function($){

        J.jtabber = function(params) {
				
				// parameters
				var navDiv = params.mainLinkTag;
				var selectedClass = params.activeLinkClass;
				var hiddenContentDiv = params.hiddenContentClass;
				var showDefaultTab = params.showDefaultTab;
				var showErrors = params.showErrors;
				var effect = params.effect;
				var effectSpeed = params.effectSpeed;
				
				// If error checking is enabled
				if(showErrors){
				    if (!J(navDiv).attr('title')) {
						alert("ERROR: The elements in your mainLinkTag paramater need a 'title' attribute.\n ("+navDiv+")");	
						return false;
					}
					else if (!J("." + hiddenContentDiv).attr('id')) {
						alert("ERROR: The elements in your hiddenContentClass paramater need to have an id.\n (."+hiddenContentDiv+")");	
						return false;
					}
				}
				
				// If we want to show the first block of content when the page loads
				if(!isNaN(showDefaultTab)){
					showDefaultTab--;
					J("." + hiddenContentDiv + ":eq(" + showDefaultTab + ")").css('display', 'block');
					J(navDiv + ":eq(" + showDefaultTab + ")").addClass(selectedClass);	
				}
				
				// each anchor
				J(navDiv).each(function() {

				J(this).click(function() {
						// once clicked, remove all classes
				J(navDiv).each(function() {
				J(this).removeClass();
						})
						// hide all content
						J("." + hiddenContentDiv).css('display', 'none');
						
						// now lets show the desired information
						J(this).addClass(selectedClass);
						var contentDivId = J(this).attr('title');
						
						if(effect != null){
							
							switch(effect){
								
								case 'slide':
								    J("#" + contentDivId).slideDown(effectSpeed);
								break;
								case 'fade':
								    J("#" + contentDivId).fadeIn(effectSpeed);
								break;
								
							}
								
						}
						else {
						    J("#" + contentDivId).css('display', 'block');
						}
						return false;
					})
				})
			
			}
	
})(jQuery);	