// This code is executed after all elements (DOM) have been loaded in the browser.
// Requires jQuery.

$(document).ready(function()
{
	// Manages the inputs of the #frmPhotoMystere form.
	$("#frmPhotoMystere input[type='text'], #frmPhotoMystere textarea").each(function()
	{
		$(this).blur(function()
		{
			if ($(this).val() == "")
			{
				if (!$(this).hasClass("error"))
				{
					$(this).addClass("error");
				}
			}
			else
			{
				if ($(this).hasClass("error"))
				{
					$(this).removeClass("error");
				}
			}
		});
	});
	
	
	// Sends the contest infos to 'req_send-answer.php' via ajax.
	$("#frmPhotoMystere").submit(function()
	{
		var message_container = $('#frmPhotoMystere .message');
		
		// Hide form button and replaces it with text.
		$("#b_photo_mystere").css("display","none");
		$("#submit_button").append("<p><img src='admin/img/loading.gif' alt='Envoi de la requ&ecirc;te...' title='Envoi de la requ&ecirc;te...' /></p>");
	
		// Gets the input data.
		var photo_id_input = $("#h_pid");
		var full_name_input = $("#i_nom");
		var city_input = $("#i_ville");
		var answer_input = $("#t_reponse");
		
		var photo_id = jQuery.trim(photo_id_input.val());
		var full_name = jQuery.trim(full_name_input.val());
		var city = jQuery.trim(city_input.val());
		var answer = jQuery.trim(answer_input.val());
		
		// Ajax POST request if email address is present.
		var parameters = {"photo_id":photo_id, "full_name":full_name, "city":city, "answer":answer};
		var baseHref = document.getElementsByTagName("base")[0].href;

		$.post(baseHref + 'req-send-answer.php', parameters, function(data)
		{
			if (!data.error)
			{
				// Success!
				if (message_container.hasClass("error")) {
					message_container.removeClass("error");
				}
				if (!message_container.hasClass("success")) {
					message_container.addClass("success");
				}
				message_container.html("Merci de votre participation. Vos informations ont &eacute;t&eacute; envoy&eacute;es avec succ&egrave;s. Surveillez notre page facebook pour conna&icirc;tre le nom du ou des gagnants!");
				message_container.css('display','block');
				$("#frmPhotoMystere fieldset").css('display','none');
			}
			else	// Error occured.
			{
				// Converts error string to array.
				var strErrors = data.error;
				var arrErrors = strErrors.split(";");
				var strErrors = "<ul>";

				for (var i=0; i<arrErrors.length; i++)
				{
					strErrors += "<li>"+arrErrors[i]+"</li>";
				}
				
				strErrors += "</ul>";
				
				if (!message_container.hasClass("error")) {
					message_container.addClass("error");
				}
				message_container.html(strErrors);
				message_container.css('display','block');
				full_name_input.focus();
				
				// Display form button and delete loading image.
				$("#b_photo_mystere").css('display','block');
				$("#submit_button p").remove();
			}
		}, 'json');
		
		return false;
	});


	
	//var membership_input = $("input[name='type_adhesion']");
	$("input[name='type_adhesion']").change(function()
	{
		// Gets the membership info.
		var membership_type = jQuery.trim($(this).val());
		var membership_title = jQuery.trim($(this).attr("title"));
		
		var paypal_item_name_input = $("#h_item_name");
		var paypal_amount_input = $("#h_amount");
		
		paypal_item_name_input.val(membership_title);
		paypal_amount_input.val(membership_type);
	});
	
	

	//****************************************************************************
	// Applique une animation de deplacement entre les liens pointant sur une ancre et leur ancre (href='#ancre').
	$('a[href*=#]').click(function()
	{
		var linkPathName = this.pathname;
		
		if (linkPathName == "")
		{
			this.pathname = location.pathname;	// S'assure que les liens pointant vers les ancres (entrees via le CMS) contiennent le chemin complet de la page.
		}
		
		if (location.hostname == this.hostname)
		{
			var $target = $(this.hash);
			$target = $target.length && $target || $('[name=' + this.hash.slice(1) +']');
			if ($target.length)
			{
				var targetOffset = $target.offset().top;
				$('html,body').animate({scrollTop: targetOffset-20}, 500);
				return false;
			}
		}
	});

});

