var selectedBilling;
var selected;
var metodo;

function ciudadesAjax(url, codigo_postal, _metodo){
	if(_metodo=="billing"){
		do_call(url+'/cities_ajax.php','cp=' + codigo_postal,'POST',true,actualizaCiudadesBilling,'TEXT');
	} else {
		metodo=_metodo;
		do_call(url+'/cities_ajax.php','cp=' + codigo_postal,'POST',true,actualizaCiudadesShipping,'TEXT');
	}
}

function get_ajax_component(){
   try 
   {
      ajax_comp = new ActiveXObject("Msxml2.XMLHTTP");
   } 
   catch (e) 
   {
      try 
      {
         ajax_comp= new ActiveXObject("Microsoft.XMLHTTP");
      } 
      catch (E) 
      {
         ajax_comp= false;
      }
   }
  if (!ajax_comp && typeof XMLHttpRequest!='undefined') ajax_comp = new XMLHttpRequest();
  return ajax_comp
}

function do_call(_url,_params,_mode,_async,_callback,_return){
	var ac=get_ajax_component();
	if(_mode=="GET")	ac.open(_mode, _url+_params, _async);
	else				ac.open(_mode, _url, _async);
	if(_return=="XML"){
		ac.onreadystatechange=function(){
		  if (ac.readyState==4){
		  	_callback(ac.responseXML);
		  }
		}
	}else{
		ac.onreadystatechange=function(){
		  if (ac.readyState==4){
		  	_callback(ac.responseText);
		  }
		}
	}	
	ac.setRequestHeader('User-Agent', navigator.userAgent);
	ac.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	if(_mode=="GET")	ac.send(null);
	else				ac.send(_params);
}
    
function actualizaCiudadesBilling (opcions) {
	var combo = document.getElementById("billing:city");
	var div = combo.parentNode;	
	
	/*Creamos el Combo con los mismos tags */
	
	dropdown = document.createElement("SELECT");
	dropdown.id=combo.id;
	dropdown.className=combo.className;
	dropdown.title=combo.title;
	dropdown.name=combo.name;
	dropdown.options.add(new Option('Seleccione una ciudad',''));
	opcionsInfo = opcions.split(';');
	var option;
	for(i=0;i<(opcionsInfo.length-1);i++){
		option = new Option(unescape(opcionsInfo[i]),unescape(opcionsInfo[i]));
		if(unescape(opcionsInfo[i])==selectedBilling){
			option.defaultSelected=true;
		}
		dropdown.options.add(option);
	}
	
	/* Quitamos el combo actual */
	div.removeChild(combo);
	/* Aņadimos el combo */
	div.appendChild(dropdown);
}

function actualizaCiudadesShipping (opcions) {
	var combo = document.getElementById(metodo+":city");
	var div = combo.parentNode;	
	
	/*Creamos el Combo con los mismos tags */
	
	dropdown = document.createElement("SELECT");
	dropdown.id=combo.id;
	dropdown.className=combo.className;
	dropdown.title=combo.title;
	dropdown.name=combo.name;
	dropdown.options.add(new Option('Seleccione una ciudad',''));
	opcionsInfo = opcions.split(';');
	var option;
	for(i=0;i<(opcionsInfo.length-1);i++){
		option = new Option(unescape(opcionsInfo[i]),unescape(opcionsInfo[i]));
		if(unescape(opcionsInfo[i])==selected){
			option.defaultSelected=true;
		}
		dropdown.options.add(option);
	}
	
	/* Quitamos el combo actual */
	div.removeChild(combo);
	/* Aņadimos el combo */
	div.appendChild(dropdown);
}

function stockAjax(url, codigo_postal, _metodo){
	metodo=_metodo;
	do_call(url,'id_producto=' + codigo_postal,'POST',true,muestraStock,'TEXT');
}

function muestraStock (opcions) {
	var div = document.getElementById(metodo);
	div.style.display='';
	stocks = opcions.split(';');
	for(i=0;i<(stocks.length-1);i++){
		tienda = stocks[i].split(':');
		if(document.getElementById(tienda[0])){
			if(tienda[1]>0){
				document.getElementById(tienda[0]).style.display='';
				document.getElementById(tienda[0] + "_no").style.display='none';
			} else {
				document.getElementById(tienda[0]).style.display='none';
				document.getElementById(tienda[0] + "_no").style.display='';
			}
		}
	}
}

function cerrarStock(){
	var div = document.getElementById(metodo).style.display='none';
}
