var htmlCode = '<div class="loading"></div>';

jQuery(document).ready(function(){
	bindArticleSubmitButton();
	jQuery("a.loginRegistrationBox").overlay({
		expose:
		{
			color: '#000',
			loadSpeed: 300,
			opacity: 0.8
		},
		onBeforeLoad: function()
		{
			jQuery("#prologueForm").html(htmlCode);
			loadLoginRegistration();
		}
	});
	jQuery(".infoShare").tooltip({
		tip: '.shareTooltip',
		relative: true,
		offset: [12, 0],
		lazy: false,
		delay: 300,
		position: 'bottom center',
		effect: 'slide'
	});

	jQuery("a.submitArticle").overlay({
		expose:
		{
			color: '#000',
			loadSpeed: 300,
			opacity: 0.8
		},
		onBeforeLoad: function()
		{
			jQuery ("#prologueForm").html (htmlCode);
			loadLoginRegistration();
		}
	});
	jQuery("ul.tab-nav").tabs(
		"div.tab-panes > div", {
			effect: 'fade',
			history: true
		}
	);

});

function loadLoginRegistration() {
	jQuery("#modalContent").load(
		"http://www.votetags.info/wp-content/themes/nominate/includes/ajax-loginRegistration.php",
		"",
		function() {
			jQuery("ul.tabs").tabs(
				"div.panes > div", {
					effect: 'fade'
				}
			);
		}
	);
}


function bindArticleSubmitButton() {

	jQuery("form#prologuePostForm").submit(function() {

		setFormActive ('disabled');

		var error = false;

		// data validation
		var prologueAjax = jQuery("input#prologueAjax").val();
		var prologueText = jQuery("textarea#prologueText").val();
		var prologueAgreement = jQuery("input#prologueAgreement").is(':checked');
		var prologueUrl = jQuery("input#prologueUrl").val();

		if (!isValidURL(prologueUrl)) {
			jQuery("label#prologueUrl_error").slideDown(200);
			jQuery("input#prologueUrl").focus();
			error = true;
		} else {
			jQuery("label#prologueUrl_error").slideUp(200);
		}
		var prologueCategory = parseInt (jQuery("select#prologueCategory").val());

		if (prologueCategory <= 0) {
			jQuery("label#prologueCategory_error").slideDown(200);
			jQuery("input#prologueCategory").focus();
			error = true;
		} else {
			jQuery("label#prologueCategory_error").slideUp(200);
		}
		var prologueCaptcha = jQuery("input#bmCaptcha").val();

		if (prologueCaptcha.length < 5) {
			jQuery("label#prologueCaptcha_error").slideDown(200);
			error = true;
		} else {
			jQuery("label#prologueCaptcha_error").slideUp(200);
		}
		if (prologueText == "" || prologueText.length < 50) {
			jQuery("label#prologueText_error").slideDown(200);
			jQuery("textarea#prologueText").focus();
			error = true;
		} else {
			jQuery("label#prologueText_error").slideUp(200);
		}
		if (error == false) {
			if (prologueAjax == 1) {
				jQuery(this).ajaxSubmit ({
					target: '#prologuePostForm',
					timeout: 5000,
					method: 'POST',
					dataType:  'html',
					success: function (data) {
						jQuery("#prologuePostForm").html(data);
						return false;
					}
				});
			} else {
				return true;
			}
		} else {
			setFormActive ('');
		}

		return false;

	});

	jQuery('#prologueText').elastic();

	jQuery ("textarea.htmlEditor").each (function () {
		edWrite (jQuery (this));
	});

}


function setFormActive (enabled) {
	jQuery('#prologueSubmitButton').attr('disabled', enabled);
}


function isValidURL (url) {

	var filter = new RegExp();

	filter = /https?:\/\/([-\w\.]+)+(:\d+)?(\/([\w/_\.]*(\?\S+)?)?)?/;

	if (filter.test (url)) {
		return true;
	} else {
		return false;
	}

}
