var Art = {
	Folder: {
		select: function(callback) {
			var dialog = $('<div>Loading...</div>');
			
			dialog.dialog({ 
			    title: 'Manage Artwork Folders',
			    modal: true, 
			    width: 640,
			    height: 480,
			    close: function() {
			    	$(this).dialog('destroy').remove();
			    } 
			}).load('/art/folder/manage/', {}, function(){
				$('#folder-selection-button').bind('click', function(){
					callback(Art.Folder.selected, $('#folder-item-name-' + Art.Folder.selected).text());
					dialog.dialog('close');
				});
			});
		},
		add: function()
		{
			$('#folder-add input').attr('disabled', 'disabled');
			
			$.ajax({
				url: '/art/folder/add/',
				data: $('#folder-create').serializeArray(),
				type: 'POST',
				dataType: 'json',
				success:  function(folder){
					$('#folder-manage-list').append('<li id="folder-item-'+folder.id+'" class="ui-state-default ui-corner-all"><a href="#" onclick="Art.Folder.remove('+folder.id+');return false;"><span class="ui-icon ui-icon-close">{X}</span></a> <a id="folder-item-name-'+folder.id+'" href="#" onclick="Art.Folder.edit('+folder.id+');return false;">'+folder.name+'</a></li>');
					$('#folder-create input[name=\'folder\[name\]\']').val('');
					$('#folder-add input').removeAttr('disabled');
				},
				error: function(data) {
					$('#folder-add input').removeAttr('disabled');
				}
			});
		},
		setImage: function(id)
		{
			$("#folder-image-save").attr('disabled', 'disabled');
			$("#folder-image-save").val('Sending...');
			
			$.ajaxFileUpload({
				url:'/art/folder/setImage/'+id+'/', 
				secureuri:false,
				fileElementId:'folder-image-file',
				dataType: 'json',
				success: function (data, status) {
					$("#folder-image-save").val('Saved');
				},
				error: function() {
					$("#folder-image-save").val('Resend');
					$("#folder-image-save").removeAttr('disabled');
				}
			}); 
		},
		remove: function(id)
		{
			if (confirm('Are you sure you wish to delete this folder?')) {
				$.getJSON('/art/folder/delete/'+id+'/', {}, function(folder){
				});
			
				$('#folder-item-' + id).remove();
			
				if (Art.Folder.selected == id) {
					$('#folder-manage-select').hide();
					$('#folder-manage-edit').html("Select a folder on the left to continue.");
				}
			}
		},
		edit: function(id)
		{
			$('#folder-manage-list li').removeClass("ui-state-active");
			$('#folder-item-' + id).addClass("ui-state-active");
			$('#folder-manage-select').show();
			$('#folder-manage-edit').html('Loading...');
			$('#folder-manage-edit').load('/art/folder/edit/' + id + '/');
			
			Art.Folder.selected = id;
			
			$('#folder-manage-add').show();
		},
		selectGroup: function(id, name)
		{
			$('#folder-privacy').html('Viewable by: ' + name);
			$('input[name=\'folder\[aclId\]\']').val(id);
			
			$.post('/art/folder/save/'+Art.Folder.selected+'/', {'folder[aclId]': id}, function(){}, 'json');
		},
		save: function(id)
		{
			$("#folder-save").attr('disabled', 'disabled');
			$("#folder-save").val('Saving...');
			$('#folder-item-name-' + id).text($('#folder-edit input[name=\'folder\[name\]\']').val());
			$.post('/art/folder/save/'+id+'/', $('#folder-edit').serializeArray(), function(folder){
				$("#folder-save").val('Save');
				$("#folder-save").removeAttr('disabled');
			}, 'json');
		}
	}
};