/*
 *
 * @author		SOMARE Ludovic (MOURATIMMOBILIER.FR)
 * @type    	jQuery - http://www.jquery.com/
 *
 * @version		1.0
 *
 * @copyright © 2010 MOURATIMMOBILIER.FR
 *
 */
 
$.concept = {
	init: function() {
		var buttons 	= $('#conceptPack h3');
		var captions 	= $('#conceptPack div');
		var idTab = $('#conceptPack').length;
		
		//Check counts
		if (captions.length != buttons.length) {
			alert('Error : Captions count != Buttons count');
			return false;
		}

		
		//Hide
		$('#conceptPack div, #conceptPack h2').css('display', 'none');	
			
		//Construct base
		$('#conceptPack').prepend('<h3 id="conceptTabContainerTitle"></h3><div id="conceptTabContainerButton"><ul></ul></div><div id="conceptTabContainerContent"></div>');
		
		//Place elements in container
		$('#conceptTabContainerTitle').html( $('#conceptPack h2').html() );

		$.each(buttons, function(key, value) {
			$('#conceptTabContainerButton ul').append('<li caption="tab0caption' + key + '">' + $(value).html() + '</li>');
			$(value).css('display', 'none');
		});
		$.each(captions, function(key, value) {
			$('#conceptTabContainerContent').append('<div id="tab0caption' + key + '">' + $(value).html() + '</div>');
			$(value).css('display', 'none');
		});
		
		//Init tab
		this.tab.init();
		
		$('li[caption*=tab0caption]').click(function () {
			$.concept.tab.reset();
			$('li[caption=' + $(this).attr('caption') + ']').addClass('conceptTabContainerButtonSelect');
			$('#' + $(this).attr('caption')).css('display', 'block');
		});
	},
	
	tab: {
		init: function() {
			this.reset();
			$('li[caption=tab0caption0]').addClass('conceptTabContainerButtonSelect');
			$('#tab0caption0').css('display', 'block');
		},
		
		reset: function() {
			$('li[caption*=tab0caption]').removeClass('conceptTabContainerButtonSelect');
			$('div[id*=tab0caption]').css('display', 'none');
		}
	}
}; //End concept


$.contact = {
	init: function () {
		$('#contactSubmit').click(function() {
			$.contact.send();
		});
	},
	
	send: function () {
		var data = $("form#formContact").serializeArray();
		
		$.ajax({
			type: "POST",
			url: 'contact/check',
			data: data,
			dataType: 'json',
			
			success: function(res) {
				var error;
				
				//Form valid
				if (res.success) {
					$("form#formContact").submit();
					
				//Form error
				} else {
					//Reset form error
					$("#formContact input, #formContact select, #formContact textarea").removeClass('formError');
					
					//Set input error
					for(x in res.error_obj) {
						$('#' + res.error_obj[x]).addClass('formError');
					}
					
					//Set msg error
					$("#contactContainer div.error ul").empty();
					for(x in res.error_msg) $("#contactContainer div.error ul").append('<li>' + res.error_msg[x] + '</li>');
					
					
					//Display
					$("#contactContainer div.error").css('display', 'block');
				}
			},
			
			error: function (XMLHttpRequest, textStatus, errorThrown) {
				alert('Ajax form validation request error ! (' + textStatus + ')');
			}
		});
	}
	
}; //End contact

