// JavaScript Document

var listaComunas = new Array();
var consultaDespacho = false;
var nombre = "slComuna";

function aviso() {
		alert('aviso');
}

function cierra_ventana() {
	window.close();
}

function ocultatd() {
	/*
	$('hc2').style.display = 'none';
	$('hd12').style.display = 'none';
	$('hd22').style.display = 'none';
	*/
}

function mostrartd() {
	var lista = new Array('hc2', 'hd12', 'hd22', 'hc1', 'hd11', 'hd21');

	lista.each(function(item, i) {
			if($(item))
				$(item).setStyle('display', 'block');
		}
	);
}

function actualizaValores(plu) {
	mostrartd();
	$('mensajetemporal').innerHTML = '...espere un momento por favor';
	var comuna = $('slComuna');
	if(comuna) {
		if(comuna.selectedIndex != 0) {
			if($('idcombo').value != '0')
				plu = plu + 'combo' + $('idcombo').value;
			var raiz = 'http://'+$('url_site').value;
			var ruta = raiz+'/'+$('uribase').value+'/despacho/actualiza/'+plu+'/'+comuna.value;
			var objAjax = new Ajax(ruta, {method: 'get', 
						onComplete: function(e) {
									muestraValores(e);
						   		}
			}).request();
		} else {
			alert('Debe elegir comuna antes de actualizar');
		}
	} else {
		alert('Debe elegir region antes de actualizar!');
	}
}

function muestraValores(content) {
	bb = /|/;
	if(!bb.test(content)){
		$('mensajetemporal').innerHTML = 'No contamos con despachos hacia esta comuna.  (Puede cambiar la comuna si lo desea)';
                $('hd22').innerHTML = 'No Disponible';
                $('hd12').innerHTML = '';
		return;
	}
	
	var lista = content.split('|');
	var express = lista[0];
	var normal = lista[1];
	var lista = express.split(':');
	var fecha_express = lista[0];
	var valor_express = lista[1];
	var lista = normal.split(':');
	var fecha_normal = lista[0];
	var valor_normal = lista[1];
	var valor_sin_fmt = unformatNumber(valor_normal);
	if(valor_sin_fmt != '0') {
		$('hd11').innerHTML = fecha_express;
		$('hd21').innerHTML = valor_express;
		$('hd12').innerHTML = fecha_normal;
		$('hd22').innerHTML = valor_normal;
		
		$('mensajetemporal').innerHTML = 'El valor de este despacho corresponde a una unidad de este producto';
		//if(fecha_express != fecha_normal)
			//mostrartd();
	} else {
		$('mensajetemporal').innerHTML = 'No contamos con despachos hacia esta comuna.  (Puede cambiar la comuna si lo desea)';
		$('hd22').innerHTML = 'No Disponible';
		$('hd12').innerHTML = '';
	}

	ocultaPorRegion();
}

function ocultaPorRegion() {
	if($('slRegion').value == 13) {
		var lista = new Array('hc2', 'hd12', 'hd22');
	} else {
		var lista = new Array('hc1', 'hd11', 'hd21');
	}
	lista.each(function(item, i) {
			$(item).setStyle('display', 'none');
		}
	);
}

function cargaComunas(obj, seleccionar) {
	var indiceRegion = obj.options[obj.selectedIndex].value;
	var aComunas = filtraRegion(indiceRegion);

	var objSlComuna = $('slComuna');
	if(objSlComuna) {
		var padre = objSlComuna.parentNode;
		padre.removeChild(objSlComuna);
	}
	objSlComuna = new Element('select');
	objSlComuna.setAttribute('id', 'slComuna');
	objSlComuna.setAttribute('name', nombre);
	objSlComuna.setAttribute('class','selectRegiones');

	i = 1;
	var initOption = new Element('option');
	initOption.setAttribute('value', '0');
	objSlComuna.options[0] = initOption;
	objSlComuna.options[0].text = 'Seleccione una comuna';
	valorSeleccionado = 0;
	while(i <= aComunas.length) {
		var infocomuna = aComunas[i-1].split('-');

		var comuna = infocomuna[0];
		var valor = infocomuna[1];
		var stOption = new Element('option');
		stOption.setAttribute('value', valor);
		stOption.setAttribute('text', comuna);
		objSlComuna.options[i] = stOption;
		objSlComuna.options[i].text = comuna;
		i++;
		if(seleccionar && comuna == 'SANTIAGO') {
			seleccionar = i-1;
			valorSeleccionado = valor;
		}
	}
	if(consultaDespacho)
	objSlComuna.addEvent('change', function() {
								actualizaValores($('NroPLU').value);
					});
	var divPadre = $('slComunaContainer');
	divPadre.innerHTML = '';
	divPadre.appendChild(objSlComuna);
	if(seleccionar) {
		objSlComuna.selectedIndex = seleccionar;
		objSlComuna.value = valorSeleccionado;
	}
	//history.go(0);
}

function cargaComunasFichaCorrida(obj, seleccionar) {
	var indiceRegion = obj.options[obj.selectedIndex].value;
	var aComunas = filtraRegion(indiceRegion);

	var objSlComuna = $('comuna');
	if(objSlComuna) {
		var padre = objSlComuna.parentNode;
		padre.removeChild(objSlComuna);
	}
	objSlComuna = new Element('select');
	objSlComuna.setAttribute('id', 'comuna');
	objSlComuna.setAttribute('name', 'comuna');

	i = 1;
	var initOption = new Element('option');
	initOption.setAttribute('value', '0');
	objSlComuna.options[0] = initOption;
	objSlComuna.options[0].text = 'Seleccione una comuna';
	while(i <= aComunas.length) {
		var infocomuna = aComunas[i-1].split('-');

		var comuna = infocomuna[0];
		var valor = infocomuna[1];
		var stOption = new Element('option');
		stOption.setAttribute('value', comuna);
		stOption.setAttribute('text', comuna);
		objSlComuna.options[i] = stOption;
		objSlComuna.options[i].text = comuna;
		i++;
		if(seleccionar && comuna == 'SANTIAGO') {
			seleccionar = i-1;
		}
	}
	var divPadre = $('slComunaContainer');
	divPadre.innerHTML = '';
	divPadre.appendChild(objSlComuna);
	if(seleccionar)
		objSlComuna.selectedIndex = seleccionar;
	//history.go(0);
}

function filtraRegion(idregion) {
	var comunasSeleccionadas = new Array();
	var i = 0;
	var j = 0;
	var infocomuna = new Array();
	while(i < listaComunas.length) {
		infocomuna = listaComunas[i].split('>>');
		if(infocomuna[1] == idregion) {
			comunasSeleccionadas[j] = infocomuna[0];
			j++;
		}
		i++;
	}
	return comunasSeleccionadas;
}

function eligeDefecto() {
	var objSl = $('slRegion');
	if(objSl) {
		objSl.selectedIndex = 13;
		cargaComunas(objSl, true);
	}
	
}

function unformatNumber(num) {
        return num.replace(/([^0-9\,\-])/g,'')*1;
}

var semaforo_desp = false;
function servDespacho() {
	if(semaforo_desp)
		return;
	$('buscando').setStyle('display','inline');
        var uri_sitio = $('url_sitio').value;
	var uri_base = $('uribase_cl').value;
	var num_boleta = $('nboleta').value;
	var obj_form = $('formtienda');
        var ruta = 'http://'+uri_sitio+'/despacho/tracking/';
	obj_form.action = ruta;
	if(validaNumero(num_boleta))
	{
		semaforo_desp = true;
        	obj_form.send({method: 'post', onComplete: function(e){
					   $('buscando').setStyle('display','none');	
					   resp = e.split('$#$');
					   if(resp[0] == 'ERR')	
                	                   	alert(resp[1]);
					   else
					   	$('cont_despacho').innerHTML = resp[1];
					   semaforo_desp = false; 		
                      	} });
	}
	else
	{
		$('buscando').setStyle('display','none');
		alert('Numero de Boleta no Valido');
	}	
}

function validaNumero(valor) {
        var er = /^([0-9]+)$/;
        if(!er.test(valor))
                return false;
        else
                return true;
}
//addEvent(window, 'load', eligeDefecto);
