/* Variables */
var GP_Nb_Pays = 27;
var GP_Nb_Livraison = 5;
var GP_Nb_Payement = 10;
var GP_PaysVisiteur = 1;
var GP_TvaTaux_Article = 0;
	
 
 
function verif_formulaire_de_contact()
{
	if(isEmail(document.getElementById('CoEmail').value) == false)
	{
		alert("-- Choisissez une catégorie --");
		document.getElementById('CoEmail').select();
		document.getElementById('CoEmail').focus();
		return false;
	}
	document.getElementById('cooo').submit();	
}
 

/* Fonction de vérification de validité des formulaires  */
isEmail = function(emailStr) {
	var checkTLD = 1;
	var knownDomsPat = /^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|fr)$/;
	var emailPat = /^(.+)@(.+)$/;
	var specialChars = "\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars = "\[^\\s" + specialChars + "\]";
	var quotedUser = "(\"[^\"]*\")";
	var ipDomainPat = /^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom = validChars + '+';
	var word = "(" + atom + "|" + quotedUser + ")";
	var userPat = new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat = new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray = emailStr.match(emailPat);
	if (matchArray == null) { return false; }
	var user = matchArray[1];
	var domain = matchArray[2];
	for (i=0; i < user.length; i++) {

		if (user.charCodeAt(i) > 127) { return false; }
	}
	for (i=0; i < domain.length; i++) {
		if (domain.charCodeAt(i) > 127) { return false; }
	}
	if (user.match(userPat) == null) { return false; }
	var IPArray=domain.match(ipDomainPat);
	if (IPArray != null) {
		for (var i=1; i<=4; i++) {
			if (IPArray[i] > 255) { return false; }
		}
		return true;
	}
	var atomPat = new RegExp("^" + atom + "$");
	var domArr = domain.split(".");
	var len = domArr.length;
	for (i=0; i<len; i++) {
		if (domArr[i].search(atomPat) == -1) { return false; }
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) { return false; }
	if (len < 2) { return false; }
	return true;
}
	
function Remplace(expr,a,b) {
  if(expr == null) {expr = ''; }
  expr = '' + expr;
  var i=0
  while (i!=-1) {
	 i=expr.indexOf(a,i);
	 if (i>=0) {
		expr=expr.substring(0,i)+b+expr.substring(i+a.length);
		i+=b.length;
	 }
  }
  return expr
}


function To2(expr) {
  if(expr == null) {expr = '0'; }
  expr = Remplace(expr, ",", ".");
  var v = eval(expr);
//	  console.log("v = ",v);
//	  console.log("expr = ",expr);
  v = v.toFixed(2);
//	  console.log("v = ",v);
  expr = '' + v;
  var i=0
  while (i!=-1) {
	 i=expr.indexOf('.',i);
	 if (i>=0) {
		expr=expr.substring(0,i)+","+expr.substring(i+1);
		i+=1;
	 }
  }
  return expr
}

function To2_0(expr) {
  if(expr == null) {expr = '0'; }
  expr = Remplace(expr, ",", ".");
  var v = eval(expr);
  v = v.toFixed(2);
  expr = '' + v;
  var i=0
  while (i!=-1) {
	 i=expr.indexOf('.',i);
	 if (i>=0) {
		expr=expr.substring(0,i)+","+expr.substring(i+1);
		i+=1;
	 }
  }
  if(v == 0) expr = "0";
  return expr;
}

function To2_E(expr) {
  if(expr == null) {expr = '0'; }
  if(expr == '') {expr = '0'; }
  expr = Remplace(expr, ",", ".");
  var v = eval(expr);
  v = v.toFixed(2);
  expr = '' + v;
  var i=0
  while (i!=-1) {
	 i=expr.indexOf('.',i);
	 if (i>=0) {
		expr=expr.substring(0,i)+","+expr.substring(i+1);
		i+=1;
	 }
  }
  if(v == 0) expr = "";
  return expr;
}

function To2_E_P(expr) {
  if(expr == null) {expr = '0'; }
  if(expr == '') {expr = '0'; }
  expr = Remplace(expr, ",", ".");
  var v = eval(expr);
  v = v.toFixed(2);
  if(v < 0) v = 0;
  expr = '' + v;
  var i=0
  while (i!=-1) {
	 i=expr.indexOf('.',i);
	 if (i>=0) {
		expr=expr.substring(0,i)+","+expr.substring(i+1);
		i+=1;
	 }
  }
  if(v == 0) expr = "";
  return expr;
}

function To2_0_P(expr) {
  if(expr == null) {expr = '0'; }
  if(expr == '') {expr = '0'; }
  expr = Remplace(expr, ",", ".");
  var v = eval(expr);
  v = v.toFixed(2);
  if(v < 0) v = 0;
  expr = '' + v;
  var i=0
  while (i!=-1) {
	 i=expr.indexOf('.',i);
	 if (i>=0) {
		expr=expr.substring(0,i)+","+expr.substring(i+1);
		i+=1;
	 }
  }
  if(v == 0) expr = "0,00";
  return expr;
}

function get_num(expr)
{
	var v;
	v = Remplace(expr, ",", ".");
	v = trim(v);
	if(v == '') { v = 0; }
	if(isNaN(v) == true) {
		v = 0;
	}
	v = eval(v);		

	return v; 
}

function get_num_p(expr)
{
	var v;
	v = Remplace(expr, ",", ".");
	v = trim(v);
	if(v == '') { v = 0; }
	if(isNaN(v) == true) {
		v = 0;
	}
	v = eval(v);		
	if(v < 0) { v = 0; }
	return v; 
}

function get_int(expr)
{
	var v;
	v = Remplace(expr, ",", ".");
	v = trim(v);
	if(v == '') { v = 0; }
	if(isNaN(v) == true) {
		v = 0;
	}
	v = eval(v);
	v = v.toFixed(0);
	v = eval(v);

	return v; 
}

function trim (myString) 
{ 
//	return myString.replace(/^\s+/g,'').replace(/\s+$/g,'') 
	return myString.replace(/^\s+|\s+$/g,"");
} 

/* Recherche generale */
function vvv()
{
	if(document.getElementById("R_Kw").value == '')	{ return false; } else { return true; }
}

/* Importateurs - Gestion des articles */
function aff_importateur()
{
	table_rech_more.style.display = "none";
	table_rech_form.style.display = "block";
	return false;
}

/* Importateurs - Marques importées */
function importateurs_view_ong(num)
{
	for(cpt=0; cpt <28; cpt++)
	{
		if(document.getElementById('ong_1_' + cpt))
		{
			document.getElementById('ong_1_' + cpt).style.cssText='background:url(design/Onglet_1.jpg) top left no-repeat; border-bottom: #B3C3CF solid 1px;';
			document.getElementById('ong_2_' + cpt).style.cssText='background:url(design/Onglet_2.jpg) top; padding-top:4px; padding-bottom:3px; border-bottom: #B3C3CF  solid 1px;';
			document.getElementById('ong_3_' + cpt).style.cssText='background:url(design/Onglet_3.jpg) top right no-repeat; border-bottom: #B3C3CF  solid 1px;';
			document.getElementById('table_' + cpt).style.display = 'none';
			document.getElementById('lien_' + cpt).className = 'lien_onglet';
		}
	}
	
	cpt = 999
	if(document.getElementById('ong_1_' + cpt))
	{
		document.getElementById('ong_1_' + cpt).style.cssText='background:url(design/Onglet_1.jpg) top left no-repeat; border-bottom: #B3C3CF solid 1px;';
		document.getElementById('ong_2_' + cpt).style.cssText='background:url(design/Onglet_2.jpg) top; padding-top:4px; padding-bottom:3px; border-bottom: #B3C3CF  solid 1px;';
		document.getElementById('ong_3_' + cpt).style.cssText='background:url(design/Onglet_3.jpg) top right no-repeat; border-bottom: #B3C3CF  solid 1px;';
		document.getElementById('table_' + cpt).style.display = 'none';
		document.getElementById('lien_' + cpt).className = 'lien_onglet';
	}
	
	document.getElementById('ong_1_' + num).style.cssText='background:url(design/Onglet_1.jpg) top left no-repeat; border-bottom: #3A5E81 solid 0px;';
	document.getElementById('ong_2_' + num).style.cssText='background:url(design/Onglet_2.jpg) top; padding-top:4px; padding-bottom:3px; border-bottom: #3A5E81 solid 0px;';
	document.getElementById('ong_3_' + num).style.cssText='background:url(design/Onglet_3.jpg) top right no-repeat; border-bottom: #3A5E81 solid 0px;';
	document.getElementById('table_' + num).style.display = 'block';
	document.getElementById('lien_' + num).className = 'lien_onglet_selected';
	document.getElementById('num_ong').value = num;
//	nd(); ##SPECIFIQUE##
	return false;
}

/*************************************************************************************************************************/
function to_w3c_inverse(vall)
{
	vall = Remplace(vall, "&lt;", Chr(60));
	vall = Remplace(vall, "&gt;", Chr(62));
	return vall;
}

function Asc(String)
{
	return String.charCodeAt(0);
}

function Chr(AsciiNum)
{
	return String.fromCharCode(AsciiNum)
}

function test_tva_valide(tva_intra)
{
	// Pour la constitution de l'expression rgulire, voir sur http://www.eic.ccip.fr/informations/tva/tva2.htm#som04
	// Pour les vieilles casseroles (ou navigateurs antdiluviens), remplacer \d par [0-9] et [A-Z\d] par [A-Z0-9]

	var motif = /^(ATU\d{8}|BE\d{10}|)$/;
	var motif = /^(RO\d{2,10}|GB\d{5}|GBGD\d{3}|GBHA\d{3}|(ATU|DK|FI|HU|LU|MT|CZ|SI)\d{8}|IE[A-Z\d]{8}|(DE|BG|EE|EL|LT|BE0|PT|CZ|FR)\d{9}|CY\d{8}[A-Z]|(ES|GB)[A-Z\d]{9}|(BE|PL|SK|CZ|BG)\d{10}|(BE)\d{9}|(FR|IT|LV)\d{11}|(LT|SE)\d{12}|(NL|GB)[A-Z\d]{12})$/;
	if (window.RegExp)
	{
		if (!motif.test(tva_intra))
		{
			return false;
		}
		else
		{
			return true;
		}
	}
	else
	{
		if (tva_intra.length < 4 || tva_intra.length > 14)
		{
			return false;
		}
		else
		{
			return true;
		}
	}
}

function distance(lat_a, lon_a, lat_b, lon_b) 
{
  a = Math.PI / 180;
  lat1 = lat_a * a;
  lat2 = lat_b * a;
  lon1 = lon_a * a;
  lon2 = lon_b * a;

  t1 = Math.sin(lat1) * Math.sin(lat2);
  t2 = Math.cos(lat1) * Math.cos(lat2);
  t3 = Math.cos(lon1 - lon2);
  t4 = t2 * t3;
  t5 = t1 + t4;
  rad_dist = Math.atan(-t5/Math.sqrt(-t5 * t5 +1)) + 2 * Math.atan(1);

  return (rad_dist * 3437.74677 * 1.1508) * 1.6093470878864446;
}

function isDate(d) {
	// Cette fonction permet de vérifier la validité d'une date au format jj/mm/aa ou jj/mm/aaaa
	if (d == "") // si la variable est vide on retourne faux
		return true;
	e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
	
	if (!e.test(d)) // On teste l'expression régulière pour valider la forme de la date
		return false; // Si pas bon, retourne faux
	// On sépare la date en 3 variables pour vérification, parseInt() converti du texte en entier
	j = parseInt(d.split("/")[0], 10); // jour
	m = parseInt(d.split("/")[1], 10); // mois
	a = parseInt(d.split("/")[2], 10); // année
	// Si l'année n'est composée que de 2 chiffres on complète automatiquement
	if (a < 1000) {
		if (a < 89)	a+=2000; // Si a < 89 alors on ajoute 2000 sinon on ajoute 1900
		else a+=1900;
	}
	// Définition du dernier jour de février
	// Année bissextile si annnée divisible par 4 et que ce n'est pas un siècle, ou bien si divisible par 400
	if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
	else fev = 28;
	// Nombre de jours pour chaque mois
	nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
	// Enfin, retourne vrai si le jour est bien entre 1 et le bon nombre de jours, idem pour les mois, sinon retourn faux
	return ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] );
}

function Keyboard_Vendeur(pEvent)
{
  if(pEvent.keyCode == 13) // ENTER
  {
	 //aa_vendeur(0,0);
	 //alert(document.activeElement.name);
	 var byenter;
	 byenter = 1;
	 if(document.getElementById(document.activeElement.name)) { document.getElementById(document.activeElement.name).blur(); }
	 byenter = 0;
  }
}



function Plus_Criteres()
{
	if(document.getElementById('ppp').value == 1)
	{
		document.getElementById('plus_criteres_row').style.display = 'none';
		document.getElementById('bt_plus').src = 'design/Bt_Plus_Criteres_1.jpg';
		document.getElementById('ppp').value = 0;
	}
	else
	{
		document.getElementById('plus_criteres_row').style.cssText = 'display: table-row;';
		document.getElementById('bt_plus').src = 'design/Bt_Moins_Criteres_1.jpg';
		document.getElementById('ppp').value = 1;
	}
	return false;
} 

function disp_ordre_tri()
{
	if(document.getElementById('lien_afficher')) { document.getElementById('lien_afficher').style.display = 'none'; 
		document.getElementById('div_ordre_tri').style.display = 'none'; }
	if(document.getElementById('SP_Ordre_SSElmt'))
	{
		if(document.getElementById('SP_Ordre_SSElmt').options[document.getElementById('SP_Ordre_SSElmt').selectedIndex].value == 3)
		{
			if(document.getElementById('lien_afficher')) { document.getElementById('lien_afficher').style.display = 'inline'; }
		}
	}
}	

function verif_aj_panier_fiche(num)
{
	if(document.getElementById('qte' + num))
	{
		if(get_int(document.getElementById('qte' + num).value) == 0)
		{
			alert("Veuillez specifier le prix !");
			document.getElementById('qte' + num).select();
			document.getElementById('qte' + num).focus();
			return false;
		}
	}
	document.getElementById('aj_panier').submit(); 
	return false;	
}

function goto_page(maxx, nbpages, cptnblignes, v_r_qte)
{
	document.getElementById('goto').value = get_int(document.getElementById('goto').value);
	if(get_int(document.getElementById('goto').value) > 0 && get_int(document.getElementById('goto').value) <= maxx)
	{
		disp_page(document.getElementById('goto').value, nbpages, cptnblignes, v_r_qte);
	}
	else
	{
		document.getElementById('goto').value = '';	
	}
	
	document.getElementById('goto').select();
	return false;	
}

function disp_page_recherche(numpage)
{
	if(document.getElementById("R_Page"))
	{
		document.getElementById("R_Page").value = numpage;
		document.getElementById("aa").submit();
		return false;
	}
	return true;
}


function disp_page(numpage, nbpages, cptnblignes, v_r_qte)
{
	numpage = get_int(numpage);
	for(i = 1 ; i <= cptnblignes ; i++)
	{
		document.getElementById('lg_a_' + i).style.cssText = "display:none;";
		document.getElementById('lg_b_' + i).style.cssText = "display:none;";
		document.getElementById('lg_c_' + i).style.cssText = "display:none;";
	}
	
	for(i = (numpage - 1) * v_r_qte + 1 ; i <= numpage * v_r_qte ; i++)
	{
		if(document.getElementById('lg_a_' + i)) document.getElementById('lg_a_' + i).style.cssText = "display:table-row;";
		if(document.getElementById('lg_b_' + i)) document.getElementById('lg_b_' + i).style.cssText = "display:table-row;";
		if(document.getElementById('lg_c_' + i)) document.getElementById('lg_c_' + i).style.cssText = "display:table-row;";
	}		
	
	for(i = 1 ; i <= nbpages ; i++)
	{
		document.getElementById('lk_' + i).className = "art_cptpages";	
	}
	document.getElementById('lk_' + numpage).className = "art_cptpages_selected";
	
	if(nbpages > 15)
	{
		for(i=2 ; i < nbpages ; i++)
		{
			document.getElementById('td_lk_' + i).style.cssText = "display:none; width:0px;";
		}
		document.getElementById('td_lk_pp1').style.cssText = "display:none; width:0px;";
		document.getElementById('td_lk_pp2').style.cssText = "display:none; width:0px;";
		if(numpage > 5 && numpage < nbpages - 4)
		{
			document.getElementById('td_lk_pp1').style.cssText = "display:table-cell;";
			document.getElementById('td_lk_pp2').style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (numpage - 2)).style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (numpage - 1)).style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (numpage - 0)).style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (numpage + 1)).style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (numpage + 2)).style.cssText = "display:table-cell;";
		}
		if(numpage <= 5)
		{
			document.getElementById('td_lk_1').style.cssText = "display:table-cell;";
			document.getElementById('td_lk_2').style.cssText = "display:table-cell;";
			document.getElementById('td_lk_3').style.cssText = "display:table-cell;";
			document.getElementById('td_lk_4').style.cssText = "display:table-cell;";
			document.getElementById('td_lk_5').style.cssText = "display:table-cell;";
			document.getElementById('td_lk_6').style.cssText = "display:table-cell;";		
			document.getElementById('td_lk_7').style.cssText = "display:table-cell;";		
			document.getElementById('td_lk_pp2').style.cssText = "display:table-cell;";		
		}
		if(numpage >= nbpages - 4)
		{
//				document.getElementById('lk_2').style.cssText = "display:inline;";
			document.getElementById('td_lk_' + (nbpages - 0)).style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (nbpages - 1)).style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (nbpages - 2)).style.cssText = "display:table-cell;";
			document.getElementById('td_lk_' + (nbpages - 3)).style.cssText = "display:table-cell;";		
			document.getElementById('td_lk_' + (nbpages - 4)).style.cssText = "display:table-cell;";		
			document.getElementById('td_lk_' + (nbpages - 5)).style.cssText = "display:table-cell;";		
			document.getElementById('td_lk_' + (nbpages - 6)).style.cssText = "display:table-cell;";		
			document.getElementById('td_lk_pp1').style.cssText = "display:table-cell;";		
		}
	}
	else
	{
		if(document.getElementById('td_lk_pp1')) document.getElementById('td_lk_pp1').style.cssText = "display:none;";
		if(document.getElementById('td_lk_pp2')) document.getElementById('td_lk_pp2').style.cssText = "display:none;";
		for(i=1 ; i <= nbpages ; i++)
		{
			document.getElementById('td_lk_' + i).style.cssText = "display:table-cell; ";
		}
	}
	return false;
}

