$(document).ready(function() {
	// li hover
	$('#links li').live('mouseenter', function() {
		$('.shorturl', this).css('background', '#feff9a');
		$('.copy', this).css('visibility', 'visible');
	});
	$('#links li').live('mouseleave', function() {
		$('.shorturl', this).css('background', 'none');
		$('.copy', this).css('visibility', 'hidden');
	});
	// submit form
	$('#rurl').submit(function() {
		// variablen declareren
		var form = $(this),
		formData = form.serialize(),
		formMethod = form.attr('method'),
		formUrl = '/ajax';
		// Verstu de data naar de server
		$.ajax({
			url: formUrl,
			type: formMethod,
			data: formData,
			success:function(data) {
				// Vang de data op
				var responseData = jQuery.parseJSON(data);
				// Kijken of er een error is
				if(responseData.status == 'error') {
					show_message(responseData.message);
				}
				else {
					var rurl = responseData.message,
						surl = responseData.surl,
						srurl = responseData.srurl,
						id = responseData.ts,
						fav = responseData.favicon;
					link = '<li><img src="http://www.google.com/s2/favicons?domain='+fav+'" alt="" /> <a href="'+rurl+'" class="shorturl">'+srurl+'</a> <span class="longurl">(<strike>'+surl+'</strike>)</span> <a href="'+rurl+'+" class="visits">0</a> <span class="ccopy" id="ccopy'+id+'"><a href="#" class="copy" id="copy'+id+'">click to copy</a></span></li>';
					$('#links li').hover(function() {
						$('.shorturl', this).css('background', '#feff9a');
						$('.copy', this).css('visibility', 'visible');
					}, function() {
						$('.shorturl', this).css('background', 'none');
						$('.copy', this).css('visibility', 'hidden');
					});
					$('#links').prepend(link);
					init_clip();
				}
			}
		});
		// Formulier mag niet gesubmit worden
		return false;
	});
});
// message
function show_message(text) {
	if($('#message').css('display') == 'none') {
		$('#message').html(text + '<span>x</span>');
		$('#message').slideDown();
		// close message
		$('#message span').click(function() {
			$('#message').slideUp();
		});
	} else {
		$('#message').slideUp(400, function() {
			$(this).html(text + '<span>x</span>');
			$(this).slideDown();
			// close message
			$('#message span').click(function() {
				$('#message').slideUp();
			});
		});
	}
}
// click to copy
function init_clip() {
	$('#links li').each(function() {
		ZeroClipboard.setMoviePath('http://rurl.me/inc/flash/ZeroClipboard.swf')
		var clip = new ZeroClipboard.Client();

		var copy = $('.copy', this).attr('id');
		var ccopy = $('.ccopy', this).attr('id');
		var shorturl = $('.shorturl', this).attr('href');

		clip.glue(copy, ccopy);
		clip.setText(shorturl);
		clip.addEventListener('complete', function(client, text) {
			show_message('Copied "' + shorturl + '" to clipboard');
		})
	});
}
