/* 
www.Kompass.com:
SIC NAICS NACE CPV
Specific classification

		min		wildcard
KOMPASS(7)	2		4
SIC(8)		2		3
NAICS(8)	2		3
NACE1(4)	2		2
NACE11(4)	2		2	
CPV(9)		1		4
HS(6)		2		3
*/

/* length max, min, min if wildcard*/
var clxConf = new Array();
clxConf["K"] = new Array(7,2,4); /* KOMPASS */ 
clxConf["S"] = new Array(8,2,3); /* SIC */   
clxConf["N"] = new Array(8,2,3); /* NAICS */ 
clxConf["A"] = new Array(4,2,2); /* NACE1 */ 
clxConf["D"] = new Array(4,2,2); /* NACE11 */ 
clxConf["V"] = new Array(9,1,4); /* CPV */   
clxConf["H"] = new Array(6,2,3); /* HS */   

function checkClx(val,clx)
{
	var maxi = clxConf[clx][0];
	var mini = clxConf[clx][1];
	var miniwld = clxConf[clx][2];
	var objRegExp  = new RegExp("(^\\d{"+mini+","+(maxi)+"}$)|(^\\d{"+miniwld+","+(maxi-1)+"}\\*$)","");
	var val = Trim(val);
	
	switch(clx)
	{
		case "V":
		case "K":
		case "S":
		case "N":
		case "A":
		case "D":
		case "H":
			/* il est possible d'indiquer plusieurs codes séparé par des , ou  de blanc */
			pattern = new RegExp("\\s|,", "");
			var cc_array=val.split(pattern);
			var i=0;
			while (i < cc_array.length)
			{
				if(!objRegExp.test(Trim(cc_array[i])))
				{
					alert(txt_code_invalid+" "+Trim(cc_array[i]));
					return false;	
				}
				//alert("Code : |"+Trim(cc_array[i])+"|");
			  	i++;
			}
			break;
		default:
			alert("_ClassifPub inconnu");
			return false;
	}
	return true;
}

/*

Fonctions annexes

*/


function validateInteger( strValue ) {
  var objRegExp  = /(^\d\d*$)/;
  //check for integer characters
  return objRegExp.test(strValue);
}

function Trim(TRIM_VALUE){
if(TRIM_VALUE.length < 1){
return"";
}
TRIM_VALUE = RTrim(TRIM_VALUE);
TRIM_VALUE = LTrim(TRIM_VALUE);
if(TRIM_VALUE==""){
return "";
}
else{
return TRIM_VALUE;
}
} //End Function

function RTrim(VALUE){
var w_space = String.fromCharCode(32);
var v_length = VALUE.length;
var strTemp = "";
if(v_length < 0){
return"";
}
var iTemp = v_length -1;

while(iTemp > -1){
if(VALUE.charAt(iTemp) == w_space){
}
else{
strTemp = VALUE.substring(0,iTemp +1);
break;
}
iTemp = iTemp-1;

} //End While
return strTemp;

} //End Function

function LTrim(VALUE){
var w_space = String.fromCharCode(32);
if(v_length < 1){
return"";
}
var v_length = VALUE.length;
var strTemp = "";

var iTemp = 0;

while(iTemp < v_length){
if(VALUE.charAt(iTemp) == w_space){
}
else{
strTemp = VALUE.substring(iTemp,v_length);
break;
}
iTemp = iTemp + 1;
} //End While
return strTemp;
} //End Function

