var msgNotNumeric = "Valeur incorrecte, veillez à ne saisir que des chiffres";
var msgNotNul = "Valeur incorrecte, veillez à ne pas saisir un chiffre nul";
var msgOneNumber = "Valeur incorrecte, veillez à saisir au moins un chiffre";
var msgTwoNumber = "Valeur incorrecte, veillez à ne saisir que deux chiffres";


var regM = new RegExp("(_m)", "i");
var regCM = new RegExp("(_cm)", "i");
var regVirgule = new RegExp("(,)", "i");
var regSpace = new RegExp("( )", "i");

function IsNumeric(sText){
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

   for (i = 0; i < sText.length && IsNumber == true; i++){ 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) {
         IsNumber = false;
      }
   }
   return IsNumber;  
}

function calculSurface() {
	$(document).ready(function(){
		
		var doCalcul = true;
		
		$('.input_dim').each(function (i) {				   
			//vérification du format
			if(IsNumeric($(this).val()) == false) {
				alert(msgNotNumeric);
				$(this).val($(this).val().substring(0,($(this).val().length-1)));			
			}
			//vérification qu'il n'y ai pas plus de deux chiffres pour les cm
			if($(this).attr('id').match(regCM) && $(this).val().length > 2 ) {
				alert(msgTwoNumber);
				$(this).val($(this).val().substring(0,($(this).val().length-1)));
			}
			/*
			//vérification qu'il n'y ai pas un 0 dans les m
			if($(this).attr('id').match(regM) && $(this).val() == 0) {
				alert(msgNotNul);
				$(this).val('1');
			}
			*/
			//vérification qu'il n'y ai ou moin un chiffre
			if($(this).val().length < 1) {
				alert(msgOneNumber);
				if($(this).attr('id').match(regCM)) {
					$(this).val('00');
				}
				if($(this).attr('id').match(regM)) {
					$(this).val('1');
				}
			}
		});
		
		if(doCalcul == true) {
			
			var longueur = $("#longueur_m").val()+'.'+$("#longueur_cm").val();
			var largeur = $("#largeur_m").val()+'.'+$("#largeur_cm").val();
			var surface = longueur * largeur;
			surface = Math.round(surface*100)/100;

			var longueurId = $("#lst_2").val();
			var largeurId = $("#lst_3").val();
			if($("#lst_15").length != 0) {
				var venduParId = $("#lst_15").val();
			}else{
				var venduParId = 0;	
			}
			
			getCaracVal(longueurId,largeurId,venduParId,surface);
			
		}
	});
}

function getCaracVal(longueurId,largeurId,venduParId,surface) {
	$.ajax({
	   type: "POST",
	   url: "article_carac_ajax.php",
	   data: "longueurId="+longueurId+"&largeurId="+largeurId+"&venduParId="+venduParId,
	   success: function(data){
			var tabVal = data.split("##");
			var longueur = tabVal[0];
			var largeur = tabVal[1];
			var venduPar = tabVal[2];
			
			var surfaceArticle = (longueur*largeur)*venduPar;
			
			$('#surfaceArticle').val(surfaceArticle);
			
			var qte = Math.ceil(surface/surfaceArticle);
			var qteMax = $('#qteMax').val();
			
			if(qte > qteMax) {
				qte = qteMax;
				surface = qte*surfaceArticle;
				surface = Math.round(surface*100)/100;
				$("#longueur_m").val('1')
				$("#longueur_cm").val('00');
				$("#largeur_m").val('1');
				$("#largeur_cm").val('00');
				alert("Quantité maximale atteinte ! Surface Maximale commandable : "+surface+"m²");
				
			}
			
			var surfaceToOrder = qte*surfaceArticle;
			surfaceToOrder = Math.round(surfaceToOrder*100)/100;
			$('#surfaceTotal').html(surfaceToOrder);
			$('#surface').html(surface);
			$('#qte').val(qte);
			
			var prixM2 = $('#prixBase').val().replace(regVirgule,'.').replace(regSpace,'');
			var prixTotal = prixM2*surfaceToOrder;
			prixTotal = Math.round(prixTotal*100)/100;
			$('#prix_total').html(prixTotal);
	   }
	});		
}


function calculPrixTotal() {
	$(document).ready(function(){
		var qte = $('#qte').val();
		var prix = $('#prixBase').val().replace(regVirgule,'.').replace(regSpace,'');
		var prixTotal = prix*qte;
		prixTotal = Math.round(prixTotal*100)/100;
		$('#prix_total').html(prixTotal);
	});
}


