$(function () {
	ajaxPing();
	
	fieldHint('#url-content', 'enter a website address to shorten');
	fieldHint('#email-content', 'enter an email address to shorten');
	fieldHint('#text-content', 'enter some text to link to');
	fieldHint('#image-content', 'enter an image URL to link to');
	
	$('#forms form').hide();
	if (self.document.location.hash && $('#forms ' + self.document.location.hash).length > 0) {
		showForm($('#forms ' + self.document.location.hash).eq(0));
	} else {
		showForm($('#forms form').eq(0));
	}
	$('#forms ul.links a').click(function () {
		showForm($(this).attr('href'));
		return false;
	});
	
	$('#forms div.advanced').hide().before('<p class="advanced"><a href="#">advanced &raquo;</a></p>');
	$('#forms p.advanced a').click(function () {
		$(this).parent('p').next('div.advanced').slideToggle();
		return false;
	});
	
	$('#forms form').submit(function () {
		var input = $('input[name=content], textarea[name=content]', this)
		var content = input.val();
		if (content == "" || content == input.data('default_value')) {
			alert("You must enter something to link to!");
			return false;
		}
		return true;
	});
	
	$('#code-copy').focus(function() {
		this.select();
	});
	
	$('#why').hide().each(function () {
		var link = $('<a href="#">why?</a>').click(function () {
			$('#why').slideToggle(500);
			return false;
		}).css({
			'margin-left': '5px'
		});
		$(this).prev('p.logo').append(link);
	});
	
	
});

var showForm = function(id) {
	id = $(id, '#forms').attr('id');
	$('#forms form').hide();
	$('#' + id, '#forms').fadeIn(300);
	$('#forms ul.links li').removeClass('current');
	$('#forms ul.links a[href=#' + id + ']').parent('li').addClass('current');
}

var ajaxPing = function () {
	setTimeout("$.post(document.location.href, { ajax_ping : '1' }, ajaxPing)", 10 * 60 * 1000);
}

function fieldHint(element, default_value) {
	$(element).data('default_value', default_value);
	$(element).each(function () {
		if (this.value == "" || this.value == default_value) {
			$(this).val(default_value).addClass("blur");
		}
	});
	$(element).focus(function () {
		if (this.value == default_value) {
			$(this).val("").removeClass("blur");
		}
	});
	$(element).blur(function () {
		if (this.value == "") {
			$(this).val(default_value).addClass("blur");
		}
	});
}