
function getStates(selectCountry){
	uobjCountry = selectCountry[selectCountry.selectedIndex].value;
	datas = 'function='+encodeURIComponent('getStatesFromCountry')+'&uobjCountry='+encodeURIComponent(uobjCountry);
	objAjax = new ajaxCall('/tools/product-register/index.lbl',datas,getStatesToHTML);
	objAjax.sendData();
	
}


function getStatesToHTML(response){
	g_arrStates = eval('(' + response+ ')');
	var stateDiv = document.getElementById('stateDiv');
	var html = '';
	if(g_arrStates == '0'){
		stateDiv.innerHTML = '';
		document.getElementById('stateTitle').style.display = 'none';
	}
	else{
		html += '<select id="state" name="state" style="font-size:11px;font-family:Arial;color:white;background-color:#5B7085;margin-left:9px;" >';
		for(uidState in g_arrStates)
			html += '<option id="'+uidState+'" name="'+uidState+'" value="'+uidState+'" >'+g_arrStates[uidState]+'</option>';
		
		html += '</select>';
		stateDiv.innerHTML = html;
		document.getElementById('stateTitle').style.display = 'block';
	}
}

function serialValidator(numSerie,uobjProduct){
	datas = 'numSerie='+encodeURIComponent(numSerie)+'&uobjProduct='+encodeURIComponent(uobjProduct);
	objAjax = new ajaxCall('/tools/product-register/index.lbl',datas,getProductToHTML);
	objAjax.sendData();
}


function getProductToHTML(response){
	eval('var bolFindSerial = '+response+';');
	existInputProduct = document.getElementById('product_'+g_numSerie+g_uobjProduct);
	if(existInputProduct){
		alert('This product and this serial number has been already registered');
	}
	else{
		if(bolFindSerial){
			if(!confirm('This product and this serial number has been already registered, do you want to save it?'))
				return;
		}
		g_numSerie = document.getElementById("numserie").value;
  	g_nameProduct = document.getElementById("product")[document.getElementById("product").selectedIndex].getAttribute("label");
	        
		document.getElementById("numserie").value = "";	
		var htmlProduct = "<input id=\'product_"+g_numSerie+g_uobjProduct+"\' name=\'product_"+g_numSerie+g_uobjProduct+"\' type=\'hidden\' value=\'"+g_uobjProduct+"\' />";
  	htmlProduct += "<input id=\'numseri_"+g_numSerie+g_uobjProduct+"\' name=\'numseri_"+g_numSerie+g_uobjProduct+"\' type=\'hidden\' value=\'"+g_numSerie+"\' />";
  	htmlProduct += "<input id=\'nameproduct_"+g_numSerie+g_uobjProduct+"\' name=\'nameproduct_"+g_numSerie+g_uobjProduct+"\' type=\'hidden\' value=\'"+g_nameProduct+"\' />";
  	htmlProduct += g_nameProduct+" - "+g_numSerie;
  	document.getElementById("divSelectedProduct").innerHTML += "<div>"+htmlProduct+"</div>";
  	document.getElementById('titleProductRegister').style.visibility = 'visible';
  	
	}
}

function ajaxCall(urlPost,datas,returnFunction){
	this.urlPost = urlPost;
	this.datas = datas;
	
	//Methode pour la création de l'objet XHR
	ajaxCall.prototype.createXHR = function (){
		 var request = false;
      try{
          request = new ActiveXObject('Msxml2.XMLHTTP');
      }
      catch(err2){
      	try{
        	request = new ActiveXObject('Microsoft.XMLHTTP');
        }
        catch(err3){
					try{
						request = new XMLHttpRequest();
					}
					catch(err1){
						request = false;
					}
       }
     }
    return request;
	}
	
	//Methode pour l'envoi de données et l'appelle de la fonction de retour
	ajaxCall.prototype.sendData = function(){
		var req = this.createXHR(); 
		req.onreadystatechange = function(){ 
			
			if(req.readyState == 4 ){
				if(req.status == 200){
				  returnFunction(req.responseText);
				}
				else{
					alert('Error: returned status code '+req.status+' '+req.statusText);
				}	
			} 
		}
		req.open("POST", urlPost, true); 
		req.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=iso-8859-1");     
		req.send(datas); 
	}
}