$(document).ready(function()
{
	/* Call Cufon replacement. */
	Cufon.replace($("h1"), {textShadow: "2px 2px rgba(0, 0, 0, 0.4)"});
	Cufon.replace($("h2"));
	Cufon.replace($("h3"));
	Cufon.replace($(".block h3:not(.block.dark h3)"));
	Cufon.replace($(".block.dark h3"), {textShadow: "1px 1px rgba(0, 0, 0, 0.6)"});
	Cufon.replace($(".overslide"), {textShadow: "1px 1px rgba(0, 0, 0, 0.9)"});
	Cufon.replace($(".subwrapper.feedback span strong"), {textShadow: "1px 1px rgba(0, 0, 0, 0.9)"});
	
	$.extend(
		$.expr[":"],
		{
			large_tag: 'Number($(a).css("fontSize").split("%")[0]) > 300'
		}
	);
	Cufon.replace($(".cloud.big a:large_tag"));
	
	/* Cut off the tag clouds. */
	/*var $cloud = $(".wrapper .blocks .block.tagcloud .cloud");
	var $cloud_items = $(".wrapper .blocks .block.tagcloud .cloud a");
	console.log($cloud.height());
	var n = 0;
	while ($cloud.height() > 50) {
		var item = $($cloud_items[(Math.random() * $cloud_items.length) << 0]);
		item.remove();
		console.log($cloud.height());
		if (n++ == 50) {
			break;
		}
	}*/
	//var tag_html = $cloud.html().split("\n").join("");
	//console.log(tag_html);
	//$cloud.html(tag_html);
	
	/* Languages aren't ready yet! */
	$("p.languages a.lang.off").click(function()
	{
		alert(__lang._interface_language_not_ready);
		return false;
	});
	
	
	$(".noclick").click(function()
	{
		return false;
	});
	
	/* Code to make form field defaults disappear. */
	$(".eraseme").each(function()
	{
		$.data(this, "default", $(this).val());
	});
	$(".eraseme").focus(function()
	{
		var $this = $(this);
		if ($this.val() == $.data(this, "default")) {
			$this.val("");
		}
	});
	$(".eraseme").blur(function()
	{
		var $this = $(this);
		if ($this.val() == "") {
			$this.val($.data(this, "default"));
		}
	});
	
	/* Make a new category. */
	$("#newcat").click(function()
	{
		var n = prompt("What will be the name of the new category?", "enter name here");
		$.post(__lang._site_url+"post/new_favdir", {name: n}, function(data)
		{
			console.log(data);
		}, 'json');
		return false;
	});
});


$(document).ready(function()
{
	window.play_slideshow = function()
	{
		var $card = $(this).parents(".card");
		if ($card.length > 0) {
			rel = $card.attr("rel");
			__search_ids = window["list_"+rel];
		}
		var url = __lang._site_url+"slideshow/"+__search_ids;
		var w = 800;
		var h = 600;
		var l = (screen.width / 2) - (w / 2);
		var t = (screen.height / 2) - (h / 2);
		var slideshow = window.open(url, 'slideshow', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=1,width='+w+',height='+h+',left='+l+',top='+t);
		return false;
	}
	$("#play_slideshow").click(play_slideshow);
	
});


$(document).ready(function()
{
	var $slider = $("div.blocks div.block.slider");
	$slider.each(function()
	{
		var slider = this;
		var $slider = $(slider);
		var $slider_contents = $("ul.slider_contents", $slider);
		var width = $("div.sub", $slider).width();
		var $items = $("li.slider", $slider_contents);
		$.data(slider, "slider", {a: 0, z: $items.length});
		var $prev = $("div.arrow.prev", $slider);
		var $next = $("div.arrow.next", $slider);
		
		slider.toggle_arrow = function(arrow, new_state)
		{
			var $arrow = $(arrow);
			if (new_state == true) {
				$arrow.fadeTo(1000, 1);
				$arrow.removeClass("off");
			} else {
				$arrow.fadeTo(1000, 0.4);
				$arrow.addClass("off");
			}
		}
		slider.update = function()
		{
			var data = $.data(slider, "slider");
			if (data.a <= 0) {
				data.a = 0;
				slider.toggle_arrow($prev, false);
			} else {
				slider.toggle_arrow($prev, true);
			}
			if (data.a >= data.z - 1) {
				data.a = data.z - 1;
				slider.toggle_arrow($next, false);
			} else {
				slider.toggle_arrow($next, true);
			}
			$slider_contents.animate({
				marginLeft: -data.a * width
			}, {
				duration: 500,
				easing: "easeInOutQuad",
				queue: false
			});
		}
		slider.update();
		
		var $arrows =  $("div.arrow", $slider);
		$arrows.each(function()
		{
			if ($(this).hasClass("next")) {
				$.data(this, "inc", 1);
			} else {
				$.data(this, "inc", -1);
			}
		});
		$arrows.bind("click", function()
		{
			var data = $.data(slider, "slider");
			data.a += $.data(this, "inc");
			slider.update();
	    });
	});
});

