/* 
*  Function pour modifier prix pour creation ou modification de commande dans panneau admin
*  
*/
$(document).ready(function() 
{
	
		$('.choisir_produit').change(function()
		{
			
		
			
				var id_produit = $(this).val();
				var prix = $('#' + id_produit + '_prix').val();
				
				var nb_select =  $('.choisir_produit').index(this);
				var qty = $('.quantite_produit').eq(nb_select).val();
				
				$('.prix_produit').eq(nb_select).val(prix);
				
				var total = prix * qty;
				
				total = total.toFixed(2);
				
				$('.prix_total').eq(nb_select).val(total);

				// alert('valeur id_produit: ' + id_produit + '\nprix:' + prix + '\nnb_select = ' + nb_select + 
						// '\nqty = '+ qty + '\ntotal: ' + total );
				 
				 calcul_total();
				 

		});
		
		
		$('.quantite_produit').change(function()
				{
						var nb_select =  $('.quantite_produit').index(this);
						
						recalcul_item(nb_select);
					
						 calcul_total(); 
				});
		
		$('.prix_produit').change(function()
				{
						var nb_select =  $('.prix_produit').index(this);
						
						recalcul_item(nb_select);
					
						 calcul_total(); 
				});
		
		
		
		$('#prix_livraison').change(function()
				{
						 calcul_total(); 
				});
		
});

function recalcul_item(nb_select)
{
	
	
	
	var qty = $('.quantite_produit').eq(nb_select).val();
	var prix = $('.prix_produit').eq(nb_select).val();
	
	var prix_tt = qty * prix;
	
	prix_tt = prix_tt.toFixed(2);
	
	$('.prix_total').eq(nb_select).val(prix_tt);
}



function calcul_total()
{
	try
	{
		// calcul du sous_total
		var arr_total = document.getElementsByName('total[]');
		var int_nb_total =0;
		for(var i = 0; i < arr_total.length; i++)
		{
			var intajout = arr_total[i].value;
			
			if (intajout == '') intajout = 0;
			
		
			
			int_nb_total += parseFloat(intajout);
			
			
		}
		document.getElementById('prix_sous_total').value = int_nb_total.toFixed(2);
		
		//alert('int_nb_total = ' + int_nb_total);
		
		// calcul total net
		
		
		
		
		
		// verifier si rien et remplacer par 0 pour les calcul
		if (int_nb_total == '') int_nb_total = 0; else int_nb_total = parseFloat(int_nb_total);
		
		
		//alert(int_int_nb_total);
		
		// trouver valeur des taxe : 
		var flt_Taxe_tps = document.getElementById('taux_taxe_tps').value;
		var flt_Taxe_tvq = document.getElementById('taux_taxe_tvq').value;
		
		var int_total_net = int_nb_total;
		
		//alert('int_total_net = ' + int_total_net);
		var livraison = parseFloat($('#prix_livraison').val());
		
		int_total_net =int_total_net +  livraison;
		
		//alert('int_total_net = ' + int_total_net);
		
		var int_taxe_tps = int_total_net * flt_Taxe_tps;
		document.getElementById('taxe_tps').value = int_taxe_tps.toFixed(2)
		
		var int_taxe_tvq = (int_total_net + int_taxe_tps) * flt_Taxe_tvq;
		document.getElementById('taxe_tvq').value = int_taxe_tvq.toFixed(2)
		
		var int_total_payer = int_total_net + int_taxe_tps + int_taxe_tvq;
		document.getElementById('prix_total').value = int_total_payer.toFixed(2)
	}
	catch(ex)
	{
		alert("Erreur dans la fonction calcul_sous_total: " + ex.message);
	}

}


/* ***********************************************************************************
   ******    pour ajout au pannier de produit multiple *****************************
   ***********************************************************************************/


// initialisation variable tableau avec tout les produit multiple
// un tableau pour les code , un pour les id et un pour les stock
var nb_couleur = 20;
var nb_size = 10;
var nb_texte = 3;

var produit_code=new Array(nb_couleur);
var produit_id=new Array(nb_couleur);
var produit_stock=new Array(nb_couleur);

for (i=0; i< nb_couleur; i++)
{
	produit_code[i]=new Array();
	produit_id[i]=new Array();
	produit_stock[i]=new Array();
	for (j=0; j< nb_size;j++)
	{
		produit_code[i][j]=new Array();
		produit_id[i][j]=new Array();
		produit_stock[i][j]=new Array();

		for (k=0; k< nb_texte;k++)
		{
			produit_code[i][j][k] = new Array();
			produit_id[i][j][k] = new Array();
			produit_stock[i][j][k] = new Array();
		}
	}
}
// fin initialisation variable tableau 3 dimention




/* 
*	 Function pour ajouter un pannier avec validation 
*  si bon choix de fait pour produit multiple 
*/
$(document).ready(function() {
	try
	{
		$('#ajouter_pannier').click(function()
		{
			// trouver info des menu deroulant
			var couleur_trv = $("select[name='couleur'] option:selected").val();
			var size_trv = $("select[name='grandeur'] option:selected").val();
			var txt_trv = $("select[name='texte'] option:selected").val();

			//alert('Couleur trv = ' + couleur_trv + "\nsize_trv = " + size_trv + "\ntxt_trv = " + txt_trv);

			var code_trv = produit_code[couleur_trv][size_trv][txt_trv];
			var id_trv = produit_id[couleur_trv][size_trv][txt_trv];
			var stock_trv = produit_stock[couleur_trv][size_trv][txt_trv];

			// si un code de produit trouver c'est qu'un bon choix c'est fait
			if (id_trv > 0)
			{
				
				$('#erreur_choix').slideUp();
				var delai = $('#delai_livraison').val();
				
				
				//alert('stock_trv = ' + stock_trv + '\ndelai = ' + delai);
				
				if (stock_trv == 0 && delai == 'contact')
				{
					$('#erreur_stock').slideDown();
					return false;
				}
				else
				{
					$('#erreur_stock').slideUp();
					return true;
				}
			}
			// si aucun id products_options ce choix d'option ne corespond pas a un produit erreur
			else
			{
				$('#erreur_choix').slideDown();
				return false;
			}
		});
	}
	catch (e)
	{
		alert('erreur dans la fonction ajouter_au_pannier()\n' + e.message);
	}
});






/*
* Fonction pour modifier le code du produit et le id du products_options
* et afficher ou enlever message d'erreur 
* Wed Jul 21 15:27:34 EDT 2010
*/
function modifier_choix()
{
	try
	{
		// trouver info des menu deroulant
		var couleur_trv = $("select[name='couleur'] option:selected").val();
		var size_trv = $("select[name='grandeur'] option:selected").val();
		var txt_trv = $("select[name='texte'] option:selected").val();

		
		
		//alert('Couleur trv = ' + couleur_trv + "\nsize_trv = " + size_trv + "\ntxt_trv = " + txt_trv);

		var code_trv = produit_code[couleur_trv][size_trv][txt_trv];
		var id_trv = produit_id[couleur_trv][size_trv][txt_trv];
		var stock_trv = produit_stock[couleur_trv][size_trv][txt_trv];
		
		//alert('code_trv = ' + code_trv);

		$("#code").val(code_trv);
		$("#stock").val(stock_trv);
		$("#id_products_options").val(id_trv);

		// pour verifier si choix valide et si il y a des choix non disponible pas besoin de les remplir
		// setter infio bidon pour savoir si liste des choix valide par la suite
		if ($('#couleur').css("display") == 'none')  couleur_trv = 10;
		if ($('#grandeur').css("display") == 'none')  size_trv = 10;
		if ($('#texte').css("display") == 'none')  txt_trv = 'ok';

		// si tout est bon
		if (couleur_trv > 0 && size_trv > 0 && txt_trv != 'non')
		{
			$('#erreur_choix').slideUp();
			// alert ('ok bon choix');
		}
		else
		{
			// enlever message d'erreur au cas ou plus d'un menu deroulant et que le message s'affiche au premeir changement du menu
			// @todo tester si juste 1 menu deroulant actif et reactiver le message d'erreur dans ce cas et gestion si plus d'un menu deroulant actif
			// $('#erreur_choix').slideDown();
			// alert ('ERREUR de choix');
		}
	}
	catch (e)
	{
		alert('erreur dans la fonction modifier_choix()\n' + e.message);
	}
}

/* fin pour ajout au pannier de produit multiple */












/*
* parmet d'ajouter des choicx de produit
*
*
*/
function ajouter_choix_produit()
{
	try
	{
		var nb_max_ligne = 50;
		var style = '';
		var nb = 0;
		var mmmax = nb_max_ligne - 1;
		// trouver liste des produit et trouver combier de produit afficher
		for (i=mmmax;i>0;i--)
		{
			//	alert('Style: ' + i);
			style = document.getElementById('options_' + i).style.display;

			if (style == 'none') nb = i;

			//alert('Style: ' + i + '\n' + style);

		}
		if (nb == nb_max_ligne) nb = 0;

		//alert('nb_max_ligne = ' + nb_max_ligne + '\nnb cacher premier a reafficher = ' + nb);

		if (nb > 0)
		{
			$('#options_' + nb).fadeIn('slow');

			// si toujour pas afficher on l'affiche bogue IE8 fadeIn
			document.getElementById('options_' + nb).style.display = 'table-row';
			//
		}

	}
	catch(e) { alert('Erreur dans la fonction ajouter_choix_produit()\n' + e.message); }
}



/* ***********************************************************************************
   ******    FIN Script pour ajout au pannier de produit multiple ********************
   ********************************************************************************* */




function supprimer_choix(i)
{
	var test = $('#code_' + i).val();

	$('#code_' + i).val('');

	//alert ('i = ' + i + '\ntest = ' + test);
	$('#options_' + i).fadeOut('slow');

	// si toujour pas enlever on l'efface bogue IE8 fadeIn
	document.getElementById('options_' + i).style.display = 'none';

}
