$(document).ready(function() {
	$('a[href^="http://"], a[href^="https://"]').attr('target', '_blank');

	$('.deleteButton').livequery('click', function() {
		deleteItemAction($(this));
		return false;
	});

	$('.addButton').livequery('click', function() {
		addItemAction();
		return false;
	});

	$('.editButton').livequery('click', function() {
		editItemAction($(this));
		return false;
	});

	$('.saveButton').livequery('click', function() {
		addItemInlineAction();
		return false;
	});
});

function deleteItemAction(button) {
	$.get(button.attr('href'));
	$('#item_' + button.attr('id').replace(/itemDelete_/, '')).slideUp('slow');
}

function reserveItemAction(button) {
	$.get(button.attr('href'));
	if (button.html() == 'Reserve') {
		button.empty().append('Un-Reserve');
	} else {
		button.empty().append('Reserve');
	}
}

function addItemAction() {
	$.ajax({
		type: 'GET',
		url: '/item/add.php?jquery=true',
		data: $('#addItemForm').serialize(),
		dataType: 'html',
		success: function(data) {
			if ($(data).hasClass('error')) {
				$('#errorMsgs').hide().empty().append(data).fadeIn('slow');
			} else {
				$('#itemList').prepend(data);
				$('#itemList li').eq(0).hide().fadeIn('slow');
				$('#errorMsgs').fadeOut('slow');
				$('#itemId, #itemTitleFinal, #itemURLFinal, #itemDesc').val('');
			}
		}
	});
}

function addItemInlineAction() {
	$.ajax({
		type: 'GET',
		url: '/item/add.php',
		data: $('#addItemInlineForm').serialize(),
		dataType: 'html',
		success: function(data) {
			if ($(data).hasClass('error')) {
				$('#errorMsgs').hide().empty().append(data).fadeIn('slow');
			} else {
				$('#item_' + $('#addItemInlineForm #itemId').val()).hide().empty().append(data).fadeIn('slow');
				editLock = 0;
			}
		}
	});
}

var editLock = 0;
function editItemAction(button) {
	if (editLock == 0) {
		editLock = 1;
		$.ajax({
			type: 'GET',
			url: '/item/edit.php',
			data: 'id=' + button.attr('rel'),
			dataType: 'html',
			success: function(data) {
				$('#item_' + button.attr('rel')).hide().empty().append(data).fadeIn('slow');
			}
		});
	}
}