// JavaScript Document
// test si numeric
function isNumber(input) {
    var reg = new RegExp("^-?(\\d\\d*\\.\\d*$)|(^-?\\d\\d*$)|(^-?\\.\\d\\d*$)");
	if(reg.test(input)) {
	    return true;
	} else {
	    return false;
	}
}
/*Test pour authentification
*
*/
function TestLogin ()
{
	var Login = $("#txtLogin").val() ;
	var Password = $("#txtPassword").val() ;	
	var SessionUtilisateur = "" ;
	var MessageError = "" ;
	
	if (Login == "")
	{
		MessageError += "Veuillez renseigner votre login/ Fill your login please \n" ;		
	}
	if (Password == "")
	{
		MessageError += "Veuillez renseigner votre mot de passe/ Fill your password please \n" ;
	}
	
	if (MessageError == "")
	{
			document.frmLogin.submit () ;
	}
	else
	{
		alert (MessageError) ;
		return false ;	
	}
}
/*Inscription
*
*/
function InscriptionUtilisateur ()
{
	var Nom = $("#txtNom").val() ;
	var Prenom = $("#txtPrenom").val() ;	
	var Email = $("#txtEmail").val() ;
	var Tel = $("#txtTel").val() ;
	var Service = $("#txtService").val() ;
	var Fonction = $("#txtFonction").val() ;	
	var Hierarchie = $("#txtHierarchie").val() ;
	var Imputation = $("#txtImputation").val() ;
	var Company = $("#txtCompany").val() ;
	var Adresse1 = $("#txtAdresse1").val() ;	
	var Adresse2 = $("#txtAdresse2").val() ;
	var CodePostale = $("#txtCP").val() ;
	var Ville = $("#txtVille").val() ;
	var Pays = $("#txtPays").val() ;	
	var Langue = $("#selectLangue").val() ;
	var Zone = $("#selectZone").val() ;
	var Commentaire = $("#txtCommentaire").val() ;
	var MessageError = "Vous devez remplir les champs suivants / You must fill the following fields : <br>" ;
	//à activer après avoir réçu le top
	if (Email != "")
	{
		var tzEmailSplited = Email.split ("@") ;
		if (tzEmailSplited[1] != "danone.com" && tzEmailSplited[1] != "danone.fr")
		{
			MessageError += "Email non valide pas de la forme de prenom.nom@danone.com ou prenom.nom@danone.fr/ Email must be like prenom.nom@danone.com or prenom.nom@danone.fr<br>  " ;
		}
	}
	
	if (Nom == "")
	{
		MessageError += "Nom / Last name<br>  " ;
	}
	if (Prenom == "")
	{
		MessageError += "Prénom / First name<br>  " ;
	}
	if (Email == "prenom.nom@danone.com")
	{
		MessageError += "Email<br>  " ;
	}
	if (Tel == "")
	{
		MessageError += "Téléphone / Phone<br>  " ;
	}
	if (Service == "")
	{
		MessageError += "Service / Departement<br>  " ;
	}
	if (Fonction == "")
	{
		MessageError += "Fonction / Position<br>  " ;
	}
	if (Hierarchie == "")
	{
		MessageError += "Responsable hierarchique / Hierarchical person in charge<br>  " ;
	}
	if (Company == "")
	{
		MessageError += "Société / Company<br>  " ;
	}
	if (Adresse1 == "")
	{
		MessageError += "Adresse / Adress<br>  " ;
	}
	if (CodePostale == "")
	{
		MessageError += "Code Postale / Zip Code<br>  " ;
	}
	if (Ville == "")
	{
		MessageError += "Ville / City<br>  " ;
	}
	if (Pays == "")
	{
		MessageError += "Pays / Country<br>  " ;
	}
	if (Langue == "")
	{
		MessageError += "Langue / Language<br>  " ;
	}
	if (Zone == "")
	{
		MessageError += "Zone de livraison / Delivery zone<br>  " ;
	}
	if (MessageError == "Vous devez remplir les champs suivants / You must fill the following fields : <br>")
	{
		document.frmRegistration.action = "actions/EnvoiRegistration.php" ;
		document.frmRegistration.submit () ;
		alert ("Inscription avec succès, vous allez recevoir un mail pour validation \n Inscription successfully, you will receive an email for validation") ;
		window.close () ;
	}
	else
	{
		$("#divMessageErreur").html(MessageError) ;
	}
	return false ;
}
/*Recalculer Prix selon quantité
*
*/
function Recalculer (Quantite, Total, PrixUnitaire, QuantiteHidden, TotalHidden)
{
	var Quantite = $("#" + Quantite).val () ;
	var PrixUnitaire = $("#" + PrixUnitaire).val () ;
	if (Quantite < 0)
	{
		alert ("quantité invalide/invalide quantity") ;		
		$("#QuantiteProduit").val ("") ;
		return false ;
	}
	else
	{
		TotalRecalcule = Quantite * PrixUnitaire ;
		TotalRecalculeDecimal = TotalRecalcule.toFixed(2) ; // mettre à 2 chiffres après la virgule
		$("#" + Total).val (TotalRecalculeDecimal) ;
		$("#" + TotalHidden).val (TotalRecalculeDecimal) ;	
		$("#" + QuantiteHidden).val (Quantite) ;	
	}
}
/*Ajouter article dans le Panier
*
*/
function AjoutPanier ()
{
	if ($("#QuantiteProduit").val () == "" || $("#QuantiteProduit").val () == 0)
	{
		alert ("Pas de quantité/Quantity empty") ;
		return false ;
	}
	else
	{
		document.frmPanier.submit () ;
	}
}
/*Changer Mode de règlement
*
*/
function ChangerModeReglement ()
{
	var ModeReglement = $("#modereglement").val() ;
	if (ModeReglement != "choix")
	{
		$("#cg").val("accord") ;
		$("#valider").css("visibility", "visible") ;
	}
	else
	{
		$("#cg").val("") ;
		$("#valider").css("visibility", "hidden") ;
	}
}
/*Photo suivante
*
*/
function PhotoSuivante (Reference, Alphabet, Numero, NombrePhoto)
{
	NomFichier = Reference + "" + Alphabet + ".jpg" ;
	$("#divPhotoChange").html("<a href='#' target='_self'><img id='imgProduitPhoto' src='img/photos/" + NomFichier +"' border='0' style='width:100%; height:100%'></a>") ;
//	$("#imgProduitPhoto").attr("src", "img/photos/" + NomFichier) ;
	for (i=1; i<=NombrePhoto; i++)
	{
		$("#Pagination" + i).css("font-weight", "normal") ;		
	}
	$("#Pagination" + Numero).css("font-weight", "bold") ;
}
/*Changer de taille
*
*/
function changeTaille (NumeroTopicPourTaille)
{
	var Reference = $("#reftaille").val() ;
	//document.location.href = "front.php?page=TousLesProduits&ref=" + Reference + "&NumeroTopic=" + NumeroTopicPourTaille ;
	var tzReferenceSplited = Reference.split("_") ;
	$("#referenceProduit").html (tzReferenceSplited[0]) ;
	$("#affichageStock").html (tzReferenceSplited[1]) ;
	$("#ref").val (tzReferenceSplited[0]) ;
	$("#code").val (tzReferenceSplited[0]) ;	
}
/*Supprimer article panier
*
*/
function suppressionArticlePanier (NbreLigne, Seq, NbPanier)
{
	var ConcatArticle = $("#ConcatArticle").val() ;
	var NombreLigneArticle = $("#NombreLigneArticle").val() ;	
	$.get(
	"pages/front/actions/SuppressionArticlePanier.php",
		{
			seq: Seq,
			nbpanier: NbPanier
		},
		function (RetourSuppression)
		{	
			if (RetourSuppression == 0)
			{
				alert ("erreur de suppresion") ;
			}
			else
			{
				/******Effacement de ligne*********/
				for (i=1; i<5; i++)
				{
					$("#ligne" + i + "_" + NbreLigne).remove () ;
				}
				/*********************************/
				/****************Changer la valeur des hidden (ConcatArticle , NombreLigneArticle)******/
				if (ConcatArticle == NbreLigne)
				{
					ConcatArticle = "" ;
					NombreLigneArticle = 0 ;
				}
				else
				{
					if (NbreLigne == ConcatArticle[0])
					{
						var tzConcatArticleSplitedFirst = ConcatArticle.split (NbreLigne + "_") ; 	
						ConcatArticle = tzConcatArticleSplitedFirst[1] ;
					}
					else
					{
						var tzConcatArticleSplited = ConcatArticle.split ("_" + NbreLigne) ; 	
						ConcatArticle = tzConcatArticleSplited[0] ;
						ConcatArticle += tzConcatArticleSplited[1] ;
					}
					NombreLigneArticle = NombreLigneArticle - 1 ;
				}
				$("#NombreLigneArticle").val(NombreLigneArticle) ;	
				$("#ConcatArticle").val(ConcatArticle) ;
				/******************************************************************************************/
			}
		}			
	);				
}
/*Modification de quantité de chaque article
*
*/
function modificationQuantite ()
{
	var ConcatArticle = $("#ConcatArticle").val() ;
	var NombreLigneArticle = $("#NombreLigneArticle").val() ;
	var tzConcatArticleSplited = ConcatArticle.split("_") ;
	var zCommentairePanier = $("#comg").val() ;
	var tzRefArticle = "" ;
	var tzSeq = "" ;
	var tzPrix = "" ;
	var iPoidsTotal = 0 ;
	var tzNewQuantite = "" ;
	var zMessageError = "" ;
	var iDifferentiel = "" ;
	var iStock = "" ;
	var iRefArticle = "" ;
	var iNewQuantite = "" ;
	var iNumDanone = $("#numdanone").val() ;
	var zTypeLivraison = $("#typelivraison").val() ;
	var zModeReglement =  $("#zModeReglementText").val() ;
	var vide =  $("#vide").val() ;	
	var zNumPanier = $("#zNumPanier").val() ;	
	var zTestNewQuantiteIsNumber = "" ;
	/****************************Serializer*********************/
	for (i=0; i<NombreLigneArticle; i++)
	{
		iPoidsTotal = iPoidsTotal + parseInt($("#poidsArticle_" + tzConcatArticleSplited[i]).val()) ;
		if (i==0)
		{
			tzRefArticle +=  $("#ref_" + tzConcatArticleSplited[i]).val () ; 
			tzSeq += $("#seq_" + tzConcatArticleSplited[i]).val () ;
			tzPrix += $("#prix_" + tzConcatArticleSplited[i]).val () ;
			tzNewQuantite += $("#newqte_" + tzConcatArticleSplited[i]).val () ;
		}
		else
		{
			tzRefArticle +=  "_" + $("#ref_" + tzConcatArticleSplited[i]).val () ; 
			tzSeq += "_" + $("#seq_" + tzConcatArticleSplited[i]).val () ;
			tzPrix += "_" + $("#prix_" + tzConcatArticleSplited[i]).val () ;
			tzNewQuantite += "_" + $("#newqte_" + tzConcatArticleSplited[i]).val () ;
		}
	/**************Test de stock*************************************************/
		iDifferentiel = parseInt($("#differentiel_" + tzConcatArticleSplited[i]).val ()) ;
		iStock = parseInt($("#stockArticle_" + tzConcatArticleSplited[i]).val ()) ;
		iNewQuantite = parseInt($("#newqte_" + tzConcatArticleSplited[i]).val ()) ;
		zTestNewQuantiteIsNumber = isNumber(iNewQuantite) ;
		if (parseInt($("#newqte_" + tzConcatArticleSplited[i]).val ()) == "")
		{
			zMessageError += "->Champ quantité vide pour" + $("#ref_" + tzConcatArticleSplited[i]).val () + "/Field quantity empty for" + $("#ref_" + tzConcatArticleSplited[i]).val () + "\n" ;	
			$("#newqte_"  + tzConcatArticleSplited[i]).css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
			$("#labelProduit_" + tzConcatArticleSplited[i]).css({'color': '#FF0000'}) ;		
		}
		else
		{
			if (zTestNewQuantiteIsNumber == false)
			{
				zMessageError += "->Veuillez saisir une quantité pour" + $("#ref_" + tzConcatArticleSplited[i]).val () + "/Please select a quantity for" + $("#ref_" + tzConcatArticleSplited[i]).val () + "\n" ;	
				$("#newqte_"  + tzConcatArticleSplited[i]).css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
				$("#labelProduit_" + tzConcatArticleSplited[i]).css({'color': '#FF0000'}) ;		
			}
			else
			{
				if (parseInt($("#newqte_" + tzConcatArticleSplited[i]).val ()) == 0)
				{
					zMessageError += "->Pas de quantité pour" + $("#ref_" + tzConcatArticleSplited[i]).val () + "/No quantity for" + $("#ref_" + tzConcatArticleSplited[i]).val () + "\n" ;	
					$("#newqte_"  + tzConcatArticleSplited[i]).css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
					$("#labelProduit_" + tzConcatArticleSplited[i]).css({'color': '#FF0000'}) ;		
				}
				if (parseInt($("#newqte_" + tzConcatArticleSplited[i]).val ()) < 0)
				{
					zMessageError += "->Quantité invalide pour" + $("#ref_" + tzConcatArticleSplited[i]).val () + "/Invalid quantity for" + $("#ref_" + tzConcatArticleSplited[i]).val () + "\n" ;	
					$("#newqte_"  + tzConcatArticleSplited[i]).css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
					$("#labelProduit_" + tzConcatArticleSplited[i]).css({'color': '#FF0000'}) ;		
				}
				if (iDifferentiel<0  && parseInt($("#stockArticle_" + tzConcatArticleSplited[i]).val ()) > 0 )
				{
					zMessageError += "->Partiellement disponible pour" + $("#ref_" + tzConcatArticleSplited[i]).val () + "/Partially available for" + $("#ref_" + tzConcatArticleSplited[i]).val () + "\n" ;
					$("#newqte_"  + tzConcatArticleSplited[i]).css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
					$("#labelProduit_" + tzConcatArticleSplited[i]).css({'color': '#FF0000'}) ;		
				}
				if (iStock < iNewQuantite)
				{
					zMessageError += "->Indisponible pour" + $("#ref_" + tzConcatArticleSplited[i]).val () + "/Indisponible for" + $("#ref_" + tzConcatArticleSplited[i]).val () + "\n" ;
					$("#newqte_"  + tzConcatArticleSplited[i]).css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
					$("#labelProduit_" + tzConcatArticleSplited[i]).css({'color': '#FF0000'}) ;		
				}
			}
		}
	/**************Test de stock*************************************************/
	}
	/***********************Test num danone***********************************************/
	if (zModeReglement == "facture")
	{
		if (iNumDanone == "")
		{
			zMessageError += "->Vous navez pas de numero de commande danone valide , veuillez vous en procurer 1/You dont have a valid danone command number, please acquire one \n" ;
			$("#numdanone").css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
			$("#labelNumDanone").css({'color': '#FF0000'}) ;		
		}
		else 
		{
			var zTestIsNumber = isNumber(iNumDanone) ;
			if (zTestIsNumber == false)
			{
				zMessageError += "->Numero de commande danone INVALIDE (pas numerique)/INVALID danone command number (not numeric) \n" ;
				$("#numdanone").css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
				$("#labelNumDanone").css({'color': '#FF0000'}) ;		
			}
			if (iNumDanone.length != 10)
			{
				zMessageError += "->Numero de commande danone INVALIDE (doit être 10 chiffres)/INVALID danone command number (must be 10 numbers) \n" ;
				$("#numdanone").css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
				$("#labelNumDanone").css({'color': '#FF0000'}) ;		
			}
		}
	}
	if (zTypeLivraison == "") 
	{
		zMessageError += "->Pas de type de livraison choisi/No type of delivery selected \n" ;
		$("#typelivraison").css({'border-width': 'medium' , 'border-color': '#FF0000'}) ;
		$("#labelTypeLivraison").css({'color': '#FF0000'}) ;		
	}
	if (iPoidsTotal > 30 || iPoidsTotal == 30)
	{
		zMessageError += "->Poids total > 30kg/Total of Weight > 30kg \n" ;
	}
	/*************************************************************************************/
	if (zMessageError != "")
	{
		alert (zMessageError) ;
	}
	else
	{
//    	alert (tzRefArticle + "\n" + tzSeq + "\n" + tzPrix + "\n" + tzNewQuantite + "\n" + iPoidsTotal + "kg\n" + zModeReglement) ;
		document.location.href = "front.php?page=ValidationCommande&tzRefArticle=" + tzRefArticle + "&tzSeq=" + tzSeq + "&tzPrix=" + tzPrix + "&tzNewQuantite=" + tzNewQuantite + "&iNombreLigneArticle=" + NombreLigneArticle + "&zTypeLivraison=" + zTypeLivraison + "&iNumDanone=" + iNumDanone + "&zModeReglement=" + zModeReglement + "&vide=" + vide + "&zNumPanier=" + zNumPanier + "&zCommentairePanier=" + zCommentairePanier;		
	}
}
function changementQuantitePanier (_iNumLigne)
{
//	alert ("Changement de la quantité de" + _iNumLigne) ;
	var iPoidsUnArticle = parseInt($("#poidsUnArticle_" + _iNumLigne).val()) ;
	var iNewQuantite = parseInt($("#newqte_" + _iNumLigne).val()) ;
	var iStockArticle = parseInt($("#stockArticle_" + _iNumLigne).val()) ;
	var iNewPoidsArticle = iPoidsUnArticle * iNewQuantite ;
	var iNewDifferentielArticle = iStockArticle - iNewQuantite ;
//	alert (iNewPoidsArticle + "::" + iNewDifferentielArticle + "::" + iNewQuantite) ;
	$("#poidsArticle_" + _iNumLigne).val(iNewPoidsArticle) ;
	$("#differentiel_" + _iNumLigne).val(iNewDifferentielArticle) ;	
}
function modificationFraisDePort ()
{
	var iSommePoids = parseInt($("#iSommePoidPourCalculFraisDePort").val()) ;
	var zTypeLivraison = $("#typelivraison").val() ;
	$.get(
	"pages/front/actions/ModificationFraisPort.php",
		{
			iSommePoids: iSommePoids,
			zTypeLivraison: zTypeLivraison
		},
		function (RetourFrais)
		{	
			$("#spanFraisPort").html(RetourFrais) ;
		}			
	);				
}


