// ============================================================
// GESTION DU PANIER
// ============================================================
function ajout_panier (id) {
	dataString = "id="+id;
	$.ajax (
		{ 
			async   : true,
			type    : "POST", 
			dataType: "html",
			url     : "liste_ajout.php",
			data    : dataString,
			success : function (msg) {
				if (msg.match(/^\s*$/)==null) 
				{
					$("#panier_nb_class").html (msg);
					//alert ("Le jouet a bien été ajouté dans la liste.");
				} 
				else 
				{
					alert ("Ce jouet est déjà dans la liste.");
				}
			} 
		} 
	);
}

function cata_interactif_ajout_panier (id,prov) {
	dataString = "id="+id;
	$.ajax (
		{ 
			async   : true,
			type    : "POST", 
			dataType: "html",
			url     : "../../" + prov + "/liste_ajout.php",
			data    : dataString,
			success : function (msg) {
				if (msg.match(/^\s*$/)==null) 
				{
					$("#panier_nb_class").html (msg);
					window.opener.opener.location.reload(true);
					alert ("Le jouet a bien été ajouté dans la liste.");
				} 
				else 
				{
					alert ("Ce jouet est déjà dans la liste.");
				}
			} 
		} 
	);
}

function supprime_panier (id) {
	
	dataString = "id="+id;
	cpt=0;
	
	$.ajax (
		{ 
			async   : true,
			type    : "POST", 
			dataType: "html",
			url     : "liste_supprimer.php",
			data    : dataString,
			success : function (msg) {
				if (msg != "") 
				{
					$("#panier_nb_class").html (msg);
					
					mesDiv = document.getElementsByTagName("div");
					for (i = 0; i < mesDiv.length; i++) 
					{
						if (mesDiv[i].id.substring(0, 16) == "ligne_cont_jouet" ) cpt++;
					}
					if (cpt-1>0)
					{
						$("td.recherche_titre>span").html (cpt-1);	// mise à jour du nombre
						$("div#ligne_cont_jouet"+id).remove ();				// idem (ya deux <tr>)
					}
					else
					{
						actualiser_liste();
					}
				}
			} 
		} 
	); 
}


function actualiser_liste(){location.reload();}


// ============================================================
// Gestion AJAX des retour pour inscription et modification
// ============================================================
function valide(a_tester,valeur,id_affichage){
	if(valeur.length > 0)
	{
		dataString = "a_tester="+a_tester;
		dataString += "&valeur="+valeur;
		$("#"+id_affichage).html ( '...' );
		$.ajax (
			{ 
				type    : "POST", 
				dataType: "html",
				url     : "recup_liste_cadeaux.php",
				data    : dataString,
				success : function (msg) {
					if (msg != "") {
						$("#"+id_affichage).html (msg);
					}
				} 
			} 
		);
	}
}


// Stock un input dans un bloc d'input
// Blocs necessaire :
// - ave_input_id : bloc contenant 'ok' si la valeur de l'input est valide
// - ave_input_id+'_input' : bloc de type "input" a stocker
// - ave_input_id+'_input_pattern' : bloc contenant le pattern des inputs de stockage
// - ave_input_id+'_storage' : bloc contenant les inputs stockes
function ave_store_input( ave_input_id ) {
	
	// Securite
	if( 'undefined' == typeof ave_input_id ) {
		ave_input_id = ave_mem_input_id;
	}
	
	// Recuperation des blocs
	var ave_input_check_elt = document.getElementById( ave_input_id );
	if( !ave_input_check_elt ) {
		return false;
	}
	var ave_input_elt = document.getElementById( ave_input_id+'_input' );
	if( !ave_input_elt ) {
		return false;
	}
	var ave_input_pattern_elt = document.getElementById( ave_input_id+'_input_pattern' );
	if( !ave_input_pattern_elt ) {
		return false;
	}
	var ave_storage_elt = document.getElementById( ave_input_id+'_storage' );
	if( !ave_storage_elt ) {
		return false;
	}
	
	// Recuperation de la valeur
	var ave_input_value = ave_input_elt.value;
	if( !ave_input_value ) {
		return false;
	}
	
	// Controle de la valeur
	var ave_input_check_value = ave_input_check_elt.innerHTML;
	// Si le test n'est pas fait, on le lance.
	if( ''==ave_input_check_value ) {
		valide( 'email', ave_input_value, ave_input_id );
	}
	// On met a jour la variable de controle
	ave_input_check_value = ave_input_check_elt.innerHTML;
	// Si le test n'est pas fini, on attend 1 seconde.
	if( '...'==ave_input_check_value ) {
		ave_mem_input_id = ave_input_id;
		setTimeout( 'ave_store_input()', 1 );
		return false;
	// Si le test est negatif, on ne fait rien.
	} else if( 'ok'!=ave_input_check_value ) {
		return false;
	}
	
	// Recuperation du pattern de stockage
	var ave_matches = ave_input_pattern_elt.innerHTML.match( /^\s*<!--\s*((?:.|\s)*)\s*-->\s*$/ );
	var ave_input_pattern = ave_matches[1];
	
	// Construction de l'input de stockage
	var ave_input = ave_input_pattern.replace( 'value=""', 'value="'+ave_input_value+'"' );
	
	// Stockage
	ave_storage_elt.innerHTML = ave_storage_elt.innerHTML+ave_input;
	
	// Nettoyage de l'input
	ave_input_elt.value = '';
	
	// Activation du formulaire
	document.getElementById( 'submit' ).style.visibility = 'visible';
}

// Supprime un element
function ave_remove_node( ave_elt ) {
	
	ave_elt.parentNode.removeChild( ave_elt );
}