// Version 0.5
// Last Updated: January 14

$(document).ready(function() {

if ($.browser.safari) $('body').addClass('safari');

// Stingray
function stingray() {

	// Hide the colors
	setTimeout(function() {
		$("#navigation a span").fadeOut("slow");
		$("#fonts a span").fadeOut("slow");
		$("#search button span,#search_again button span").fadeOut("slow");
		}, 300);
	
	// Fade em in on hover
	$("#navigation a,#search button,#search_again button,#fonts a").hover(
		function() {
		$(this).find("span").fadeIn('250');
		},
		function() {
		$(this).find("span").fadeOut("normal");
		});
	}

// Inject the spans
function shrinkWrap() {
	$("a.symbol,ul.links a,h3.leaking a,.anchors a,.options a,#subnavigation a,#company_overview dt,.messages.attached li").each(
		function(i) { 
		$(this).html('<span>' +$(this).html() + '</span>');
	});
	}

// Attack of the Clones
function cloneSheep() {
	$("a.symbol span,.bar_right span,#subnavigation a span,.options a span,.anchors a span,#company_overview dt span,.messages.attached li span").each(function(i) { 
	$(this).clone().appendTo($(this).parent()).addClass("dolly");
	});
	}

// Patch it up!
function patchIt() {
	$(".splash").append('<span class="patch a"></span><span class="patch b"></span>');
	$(".advertisment").append('<span class="patch a"></span><span class="patch b"></span><span class="patch c"></span><span class="patch d"></span>');
	// Add A spacer
	$("ul.links a,h3.leaking a").prepend('<span class="spacer"></span>');
	}

function tagIt() {
	// Give IE a hand with those tricky forms
	$("input:text,input:password").addClass("text");
	$("input:checkbox").addClass("checkbox");

	// Last child support
	$(".sandwich li:last-child").addClass("last");
	// Striping the Posts
	$("ul li.post:odd").addClass("odd");
	$("ul.posts li:first").addClass("first");
	$("ul.posts li:last").addClass("last");
	
	// 2 column stripes
	/*
	$("dl dd:even,dl dt:even,li:even").addClass("even");
	$("dl dd.even:even,dl dt.even:even,li.even:even").addClass("doubleEvenZero");
	$("li.even:even + li + li + li").addClass("doubleEven");
	$("dl dd:odd,dl dt:odd,li:odd").addClass("odd");
	$("dl dd.odd:even,dl dt.odd:even,li.odd:even:next").addClass("doubleOdd");

	$("dl dt:first,dl dd:first,li:first").addClass("first");
	$("dl dt:last,dl dd:last,li:last").addClass("last");
	*/

		$("ul.stocks_grid").each(function(i) {
			var lis = $(this).children();

			lis.filter(":first").addClass("first").end().filter(":last").addClass("last");
			lis.each(function(x) {
				if (x % 2 == 0) { $(this).addClass("even"); }
				if (x % 2 == 1) { $(this).addClass("odd"); }
				if (x % 4 == 3) { $(this).addClass("xdoubleEven"); }
			})
		})

	}

// Sexy Sliding Action
function showSubnav() {
	// $("#subnavigation,#subnav_container").hide(); // done via CSS now, except in Safari cause it sucks
	$("#subnavigation").slideDown("500",
		function() {
		$("#subnavigation #subnav_container").fadeIn("slow");
	});
	}

// Bookmark Posts -- Cheers Jake
$("li.post .star").click(function() {
    var bookmarkedPost = $(this).parents("li:first");
    bookmarkedPost.toggleClass("bookmarked");
    return false;
});

// Opening and closing the little board posts search

$(".options .search_posts").toggle(function() {
	$("#search_posts_form").fadeIn('fast');
	},function() {
	$("#search_posts_form").fadeOut('fast');
	});

// Our Board Posts JavaScript Extravaganza

// Hovering on posts
$("ul.posts li").hover(function() {
    
    if( $(this).is(".opened") )
        return;
    
    $(this).addClass('hovering');
},function() {
    
    $(this).removeClass('hovering');
});

// Opening Posts (It's pretty simple, just click on it!)
$("ul.posts li.post").click(function() {

    if( $(this).is(".opened") )
        return; // Don't do anything

    var openingPost = $(this);

    openingPost.removeClass("hovering");


	if ($.browser.msie) {
		openingPost.addClass("opened");
		openingPost.find(".user span.user_name").hide();
		openingPost.find(".user a.user_name").show();
	} else {
		openingPost.find(".time_short,.user span.user_name").fadeOut('150').end()
			.find('.rating').fadeOut('150');
	
		openingPost.find(".excerpt").fadeOut('150', function() {
			openingPost.addClass("opened");
			openingPost.find(".closePost,.full,.signature,.controls,.user .info,.user a.user_name").fadeIn('300').end()
				.find('.time').fadeIn('300');
		});
	}

}).find('.closePost, h3').click(function() {
	// Closing Posts (Clicking on the Red X ball) OR by clicking on the h3 again

    var closingPost = $(this).parents("li:first"); // This is the post

    if( !closingPost.is(".opened") ) // we cant close the post if its already closed 
    	return;

	if ($.browser.msie) {
		closingPost.removeClass("opened");
		closingPost.find(".user a.user_name").hide();
		closingPost.find(".user span.user_name").show();
	} else {
		closingPost.find(".time,.closePost,.signature,.controls,.user .info,.user a.user_name").fadeOut('150');

		closingPost.find(".full").fadeOut('150', function() {
			closingPost.removeClass("opened")
				.find(".excerpt,.user span.user_name").fadeIn('350').end()
				.find(".rating").fadeIn('600').end()
				.find(".time_short").fadeIn('150');
		});
	}

});

// From Detailed view to Minimal View (Close em all)
$(".views .minimal a").click(function() {

	if( $(this).parents("#board_posts").is(".minimal") )
		return; // don't do anything -- minimal was already clicked, clicking it again does nothing

	$(".views li").toggleClass("selected");
	$("#board_posts").removeClass("detailed").addClass("minimal");
	
	var closingPosts = $("ul.posts li.post");

	closingPosts.find(".time, .user a.user_name").hide();
	closingPosts.find(".excerpt").fadeIn('75').end().find(".rating").fadeIn('75');
	closingPosts.removeClass("opened").find(".time_short, .user span.user_name").show();

    return false;
});

// From Minimal to Detailed View (open em up again)
$(".views .detailed a").click(function() {

	if( $(this).parents("#board_posts").is(".detailed") )
		return; // don't do anything -- the detailed button has already been clicked

	$(".views li").toggleClass("selected");
	$("#board_posts").removeClass("minimal").addClass("detailed");

	var openingPosts = $("ul.posts li.post");

	openingPosts.find(".excerpt, .time_short, .user span.user_name").hide();
    openingPosts.find(".rating").hide();
	openingPosts.addClass("opened");
	openingPosts.find(".closePost,.full,.signature,.controls,.user .info,.time, .user a.user_name").show();

	});

// The Editing Action
/*
$("#edit_picks_sell,#edit_picks_buy,.edit_favorite_boards").click(function() {
	if( $(this).parent().is(".editing") ) 
		$(this).parent().toggleClass("editing").find(".findAndAdd").fadeOut('fast');

	else
		$(this).parent().toggleClass("editing").find(".findAndAdd").fadeIn('normal');
	});

$(".edit_watchlist").click(function() { 
	if( $(this).parent().parent().is(".editing") )
		$(this).parent().parent().toggleClass("editing").find(".findAndAdd").fadeOut('fast');

	else
		$(this).parent().parent().toggleClass("editing").find(".findAndAdd").fadeIn('normal');
	});
*/

// Nix me!
/*
$("a.delete").click(function() {
	$(this).parent().remove();
	});
*/

// Activate !

shrinkWrap();
cloneSheep();
patchIt();
tagIt();
stingray();

// Tabs

$('#company > ul').tabs();
$('#stock_graph > ul').tabs();
$('#user_profile > ul').tabs();
$('#your_blog > ul').tabs();
$('#contacts > ul').tabs();
$('#blog > ul').tabs();
$('#latest_board_posts .anchors').tabs();
$('#top_users .anchors').tabs();

//$(".slider").slider();

});