(function($) {
	$(document).ready(function() {
		$('.comment-link').live('click', function() {
			var url = $(this).attr('href');
			var bindSubmit = function(dialog, start, finish) {
				if (!start) {
					start = function() {}
				}
				if (!finish) {
					finish = function() {}
				}
				var form = $(dialog).find('form');
				form.submit(function() {
					start();
					$.post(url, form.serializeArray(), function(data) {
						if (data.message) {
							$(dialog).html(data.message);
							bindSubmit(dialog, start, finish);
						}
						if (data.success) {
							window.setTimeout(function() {
								$(dialog).dialog('close');
							}, 1500);
						}
						finish();
					}, 'json');
					return false;
				});
				return form;
			}
			var dialog = $('<div><i>Een moment geduld a.u.b.</i></div>').dialog({
				modal: true,
				draggable: false,
				resizeable: false,
				closeText: 'Sluiten',
				title: 'Deze reactie is niet ok',
				buttons: {
					'Meld': function() {
						$('form', this).trigger('submit');
					},
					'Annuleren': function() {
						dialog.dialog('close');
					}
				},
				open: function(event, ui) {
					$.get(url, function(data) {
						$(event.target).html(data);
						bindSubmit(event.target, function() {
							$(event.target).dialog('option', 'disabled', true);
						}, function() {
							$(event.target).dialog('option', 'disabled', false);
						});
					});
				}
			});
			return false;
		});
	});
})(jQuery);
