var targetFieldName = null;
var isFileBrowser = false;

$(document).ready(function() {
	
	$('form.ajax').submit(function(e) {
		e.preventDefault();

		var formData = new Object();
		tinyMCE.triggerSave(true, true);

		$(this).find('input[type!=submit], select, textarea').each(function() {
			formData[$(this).attr('name')] = $(this).val();
		});
		
		$.ajax({
			type: 'POST',
			url: $(this).attr('action'),
			data: formData,
			dataType: 'xml',
			success: function(response) {
				var responseAction = $(response).find('action').text();
				var responseData = $(response).find('data').text();
			
				switch(responseAction) {
					case "redirect":
						parent.window.location = responseData;
						break;
					case "reload":
						parent.window.location.reload();
						break;
					case "close":
						parent.Shadowbox.close();
						break;
					case "success":
					case "warning":
					case "error":
						$('#message').text(responseData);
						$('#message').show();
						$('#message').addClass(responseAction);
						break;
				}
			}
		});
		
		return false;
	});
	
	$('#tabs').tabs({
		collapsible: true,
		select: function(e, ui) {
			//console.log(targetFieldName + ' : ' + filename);
			
			if(!isFileBrowser) {
				targetFieldName = null
			}
			
			isFileBrowse = false;
		}
	});
});

tinyMCE.init({
	mode : "textareas",
	theme : "simple"
});

function fileBrowse(fieldName) {
	targetFieldName = fieldName;
	isFileBrowser = true;
	
	$('#tabs').tabs('select', 1);
}

function fileSelect(filename) {	
	if(targetFieldName) {
		//console.log(targetFieldName + ' : ' + filename);
		
		$('#' + targetFieldName).val(filename);
		$('#tabs').tabs('select', 0);
	} else {
		//Error when not browsing for a specific file
	}
}


/*
	$('ul.sortable').sortable({
		update : function () { 
			var order = $(this).sortable('serialize'); 

			$.ajax({
				type: 'POST',
				url: $(this).attr('action'),
				data: orderData,
				dataType: 'xml',
				success: function(response) {
				
				var data = $(response).find('data').text();
					console.log('data : ' + data);
				}
			});
		} 
	});

	$('ul.sortable').disableSelection();
	
	//Set up sortable tables
	$('.sortable tbody').tableDnD({
		onDragClass: 'showDrag',
		onDrop: function(table, row) {
			$.ajax({
				type: 'POST',
				url: base_url + 'sortorder/' + $('.sortable tbody').attr('id'),
				data: $.tableDnD.serialize()
			});
		},
		dragHandle: ".handle"
	});
	
	$(".sortable tbody tr").hover(function() {
	      $(this.cells).addClass('showHover');
	      $(this.cells[0]).addClass('showHandle');
	}, function() {
	      $(this.cells).removeClass('showHover');
	      $(this.cells[0]).removeClass('showHandle');
	});
	
	function getSortTitle() {
		var title = $('.sortable tbody').attr('title');
		var dashPosition = title.indexOf('-');
		
		if(dashPosition > 0) {
			return title.substr(0, dashPosition-1);
		} else {
			return title;
		}
	}

*/
