$(document).ready(function() {

	$('#lienNouveauSujet, #lienRepondre, .lienCiter').click(function(){

		var lien = this;

		$('#edition').html('<div style="text-align: center"><img src="/extension/ezteamroom/design/europe_en_france_extranet/images/loading.gif" alt="loading ..." /></div>');
		$.ajax({
			  url: '/ezjscore/run/ajaxEditing/edit',
			  type: 'POST',
			  data: $("#form_forum").serialize(),
			  success: function(data) {
			    $.ajax({
					  url: '/ezjscore/run/'+data,
					  type: 'POST',
					  success: function(data) {
					    $('#edition').html($(data).find('.comment-send'));

						// initialiser le message dans le cas du lien citer
						if( $(lien).attr('class') == 'lienCiter'){
							$("#messageReply textarea").text('<blockquote style="color: black;border: 1px solid #F0F1F2;background: #C6C8C9;padding: 10px;">'+$(lien).parents('.right-detail-forum').find('.messageReponse').text()+'</blockquote><br/><p></p>');
						}
						replaceCheckboxes();

						/* évenement cancel pour les formulaire*/
						$('#lienCancelSujet, #lienCancelRepondre').click(function(){
							if(confirm( 'Voulez-vous vraiment annuler votre réponse ?' )){
								$.ajax({
									  url: '/ezjscore/run'+$("#editform").attr('action'),
									  type: 'POST',
									  data: $("#editform").serialize()+'&'+$(this).attr('name')+'='+$(this).attr('value'),
									  success: function(data) {
										$('#edition').html('');
									  }
								});
							}
							return false;
						});
					  }
				});

			  }
		});
	});

});

/***********************************************************************/
/* validation des formulaires                                          */
/***********************************************************************/

/* || Vérification des champs et décompte des erreurs || */
var submitEditForm = function(element){

	var err = 0;
	var chmperr = 0;
	var zone_erreur = '';
	var reg_mail = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/; // regular expression pour email
	var reg_number = /^[0-9]{10}$/; // regular expression pour telephone : 10 numeros

	$(element).find(".check input, .check textarea").each(function(){
		// controle de saisie - cas donnees vides ou donnees d'origine
		if($(this).attr("value")== "" || $(this).prev().html() == $(this).attr("value")){
			$(this).addClass("error");

			// cas pratique pour les textareas avec mise en forme, avec tinyMCE
			if($(this).is('textarea'))
				$('#'+$(this).attr('id')+'_tbl').addClass("error");

			err++;
			chmperr++;
			if(chmperr==1){
				zone_erreur += '<p>Veuillez remplir les champs obligatoires</p>';
			}
		}else{

			$(this).removeClass("error");

			// controle de saisie - cas format erronne
			if(
			   (($(this).hasClass("mail")) && !($(this).attr("value").match(reg_mail)))
			){
				$(this).addClass("error");
				err++;
				zone_erreur += "<p>L'adresse mail est incorrecte</p>";
			} else if(
			   (($(this).hasClass("number")) && !($(this).attr("value").match(reg_number)))
			){
				$(this).addClass("error");
				err++;
				zone_erreur += "<p>Le num&eacute;ro est incorrect</p>";
			}
		}
	});

	if(err == 0){
		element.submit();
	} else {
		$it = $("#zone_erreur");
		$it.html(zone_erreur)
		$it.slideDown('fast');
		$(element).find(".error:first").select();
		return false;
	}

};

