function chargeFormulaire() {
	tabPost = initTab();
	J.post(
		'php-js/gestionMatch.php',
		tabPost,
		function(data) {			
			actionsAfterLoadingForm(data);
		}
	);
}

function initTab() {
	return tabPost = {
		equipe_type 	:	J('#equipe_type').val(),
		equipeSPHB 		:	J('#equipeSPHB').val(),
		niveauRencontre	:	J('#niveauRencontre').val(),
		niveau			:	J('#niveau').val(),
		division		:	J('#division').val(),
		poule			:	J('#poule').val(),
		lieu 			:	J('input:radio[name=lieu]:checked').val(),		
		clubExt 		:	J('#clubExt').val(),
		equipeExt 		:	J('#equipeExt').val(),
		gymnase 		:	J('#gymnase').val(),
		ville 			:	J('#ville').val(),
		match_id		:	J('#match_id').val()
	};
}

function listenerFormulaire() {
	// Changement valeur des listes déroulantes :
	J("#equipe_type, #equipeSPHB, #lieu, #niveauRencontre, #niveau, #division, #poule, #clubExt, #equipeExt, #gymnase, #ville").change(
		function () {
			chargeFormulaire();			
		}
	);
	
	// Evenement click pour l'ajout de nouvelles entrées
	J("#addClub").click(
		function () {
			var tabPostAddClub = { newClubNom: J('#nouveauClubExt').val() };
			addElement('nouveauClubExt', 'Ajouter un club', 'addClub', tabPostAddClub, 'clubExt');
		}
	);
	
	J("#addEquipe").click(
		function () {
			var tabPostAddEquipe = { clubId: J('#clubExt').val(), newEquipeNom : J('#nouvelleEquipeExt').val(), equipeType : J('#typeEquipeExt').val() };
			addElement('nouvelleEquipeExt', 'Ajouter une équipe', 'addEquipe', tabPostAddEquipe, 'equipeExt');
		}
	);
	
	J("#addVille").click(
		function () {
			var tabPostAddVille = { nouvelleVille: J('#nouvelleVille').val(), cpVille : J('#cpVille').val() };
			addElement('nouvelleVille', 'Ajouter une ville', 'addVille', tabPostAddVille, 'ville');
		}
	);
	
	J("#addGymnase").click(
		function () {
			if (J('input:radio[name=lieu]:checked').val() == 'Ext') {
				var idClub = J('#clubExt').val();
			}
			else {
				var idClub = 1;
			}
			var tabPostAddGymnase = { villeId: J('#ville').val(), clubId : idClub, newGymnaseNom : J('#nouveauGymnase').val(), adresseGymnase : J('#adresseGymnase').val(), numHomologationGymnase : J('#numHomologationGymnase').val()};
			
			addElement('nouveauGymnase', 'Nom gymnase', 'addGymnase', tabPostAddGymnase, 'gymnase');
		}
	);
		
	J("#addNiveau").click(
		function () {
			var arrayPost = { newNiveauNom: J('#nouveauNiveau').val() };
			addElement('nouveauNiveau', 'Ajouter un niveau', 'addNiveau', arrayPost, 'niveau');
		}
	);
	
	J("#addDivision").click(
		function () {
			var arrayPost = { niveauId: J('#niveau').val(), newDivisionNom : J('#nouvelleDivision').val() };
			addElement('nouvelleDivision', 'Ajouter une division', 'addDivision', arrayPost, 'division');
		}
	);
	
	J("#addPoule").click(
		function () {
			var arrayPost = { divisionId: J('#division').val(), newPouleNom: J('#nouvellePoule').val() };
			addElement('nouvellePoule', 'Ajouter une poule', 'addPoule', arrayPost, 'poule');
		}
	);
}

function addElement (inputToCheck, forbiddenValue, ajaxPage, ajaxParams, champTabPost) {						
	var nouvelElement = J('#'+inputToCheck).val();			
	if (nouvelElement && nouvelElement != forbiddenValue) {
		J.post(
			'php-js/'+ajaxPage+'.php', 
			ajaxParams, 										
			function(dataAdd) {
				var newElementId = dataAdd;
				tabPost = initTab();
				tabPost[champTabPost] = newElementId;
				J.post(
					'php-js/gestionMatch.php',
					tabPost,
					function(data) {								
						actionsAfterLoadingForm(data);
					}
				);
			}
		);			
	}
}

function actionsAfterLoadingForm(data) {
	J('#formulaireMatch').html(data);
	listenerFormulaire();
	J("#datepicker").datepicker();
}

