var markItUpSettings = {
	onShiftEnter: {keepDefault:false, replaceWith:'\n\n'},
	markupSet: [
		{name: 'Link', className: 'link', key: 'L', replaceWith: function (markItUp) {
			MarkupHelper.showDialog(markItUp);
			return false;
		}}
	]
};

var MarkupHelper = {
	eventsAttached: false,

	showDialog: function (markItUp) {
		this.bindEvents(markItUp);
		$('#dialog').jqm({overlay: 40, modal: true}).jqmShow();
		$('#link-text').val('');
		$('#link-url').val('');
	},

	bindEvents: function (markItUp) {
		if (this.eventsAttached) {
			return;
		}
		this.eventsAttached = true;

		$('#link-submit').bind('click', function (event) {
			event.stopPropagation();
			event.preventDefault();
			var text = $('#link-text').val();
			var url = $('#link-url').val();
			var linkElement = '[' + url + ' ' + text + ']';
			$(markItUp.textarea).trigger('insertion', [{replaceWith: linkElement}]);
			$('#dialog').jqmHide();
		});

		$('#link-cancel').bind('click', function (event) {
			event.preventDefault();
			$('#dialog').jqmHide();
		});
	}
};

$(document).ready(function () {
	$('#text-region').markItUp(markItUpSettings);
});
