var url = "/admin/listar_ciudades.php?id_state="; // The server-side script
var price_type='person';

function handleHttpResponse(){
	if(http.readyState == 4){
//		var response = http.responseText;
		var response = http.responseXML;

		document.getElementById('city_list').innerHTML = response.getElementsByTagName('data').item(0).firstChild.data;

		isWorking = false;
	}
}

var isWorking = false;
function listarCiudad(id_city){
	if(document.getElementById("record[id_state]")){
		id=document.getElementById("record[id_state]").value;
	
		if (id == ''){
			document.getElementById('city_list').innerHTML = '';
		}else{
			if(!isWorking && http){
				http.open("GET", url + id + '&id_city=' + id_city, true);
				http.setRequestHeader('X-Requested-With', 'XMLHttpRequest');

				http.onreadystatechange = handleHttpResponse;
				isWorking = true;
				http.send(null);
			}
		}
	}
}

function deleteconfirm(iddeleteimage) {
   if (confirm("¿Esta seguro de querer borrar ésta imagen?")) {
   	document.step5.deleteimage.value=iddeleteimage;
	document.step5.submit(); 
	return false;
   } else {
	return false;
   }
}

function mark(check, capa, input2, id){ 
    if (check.checked) {
		$(capa).style.visibility='visible';
		$(input2).disabled=false;
	}else{
		$(capa).style.visibility='hidden';
		$(input2).disabled=true;

		$('comp_baja_' + id).value='';
		$('comp_media_' + id).value='';
		$('comp_alta_' + id).value='';
		$('comp_especial_' + id).value='';
	}
} 

function mark_room(check, capa, input2, id){ 
	if (check.checked) {
		$(capa).style.visibility='visible';
		$(input2).disabled=false;
	}else{
		$(capa).style.visibility='hidden';
		$(input2).disabled=true;

		$('room_baja_' + id).value='';
		$('room_media_' + id).value='';
		$('room_alta_' + id).value='';
		$('room_especial_' + id).value='';
	}
} 

function mark_comp(check, capa){ 
    if (check.checked) {
		$(capa).style.visibility='visible';
	}else{
		$(capa).style.visibility='hidden';
	}
} 

var NumRoom = 1;
var ind_room = 1;
var MaxRoom = 10;

function add_room(capa, value, id){ 
	if(NumRoom > MaxRoom){
		alert('El número máximo de habitaciones que puede introducir es de ' + MaxRoom);
	}else{
		if(id){
			ind_room = id;
		}

		elDiv=document.createElement('div');
		elDiv.id = "room_div_"+ind_room;

		elem1=document.createElement('input');
		elem1.type='text';
		elem1.name='room_name_' + ind_room;
		elem1.id='room_name_' + ind_room;
		if(value){
			elem1.value=value;
		}else{
			elem1.value='Nombre Habitación';		
		}

		elembr=document.createElement('br');
		elDiv.appendChild(elem1);

		var a = 'room_name_' + ind_room
		elem1.onclick = function(){clearRoomName(a)};


		newanchor = document.createElement("a");
		sometext = document.createTextNode("Configurar Precios");
		newanchor.appendChild(sometext);
		elDiv.appendChild(newanchor);

		elDiv2=document.createElement('div');
		elDiv2.style.display = 'inline';
		elDiv2.innerHTML = "&nbsp;&nbsp;<a onclick=\"Javascript:var ancla = $('room_div_"+ind_room+"');var padre = ancla.parentNode;var hijoRemovido = padre.removeChild(ancla);var ancla2 = $('room_name_"+ind_room+"_div');if(ancla2){;var padre2 = ancla2.parentNode;var hijoRemovido2 = padre2.removeChild(ancla2);} NumRoom--; return false;\">&nbsp;Quitar</a>"
		elDiv.appendChild(elDiv2);


		elDiv.appendChild(elembr);

		$(capa).appendChild(elDiv);


		var num_aux = ind_room;
		newanchor.onclick = function(){addPriceTable('room_name_' + num_aux, num_aux)};
//		elem1.onkeypress = function(){redirecciona(num_aux)};
		elem1.onfocus = function(){startDataTrans(num_aux)};
		elem1.onblur = function(){stopDataTrans(num_aux)};

		NumRoom++;
		ind_room++;
	}
}

function clearRoomName(capa){
	if($(capa).value == 'Nombre Habitación'){
		$(capa).value = '';
	}
}

function addPriceTable(capa, id){
	if($(capa + '_div')){
/*
		for (i=1; i<10; i++){
			if($('room_check_'+id+'_'+i).checked){
				$('room_num_'+id+'_'+i).style.visibility='visible';
			}
		}
*/
	}else{
		if(price_type == 'day'){
			var text_aux = 'Días';
		}else{
			var text_aux = 'Personas';		
		}


/*

		elDiv=document.createElement('div');
		elDiv.id =  capa + '_div';

		var txt = '<table><tr><td align="center">PRECIOS PARA LA HABITACIÓN <b><span id="name_'+id+'">' + $('room_name_'+id).value + '</span></b></td></tr><tr><td>';
		txt += '<table width="600px"><tr><td colspan="2">Número de <span id="price_type_text">'+text_aux+'</span></td><td><table width="400px"><tr>';
		txt += '<td>Temp. Baja</td>';
		txt += '<td>Temp. Media</td>';
		txt += '<td>Temp. Alta</td>';
		txt += '<td>Temp. Especial</td></tr></table></td></tr>';

		elDiv.innerHTML = txt;

		for (i=1; i<10; i++){
			id_aux = id+'_'+i;
			room1 = 'room_' + id_aux;
			room2 = 'room_num_' + id_aux;

			var a = '<tr><td><input type="checkbox" id="room_check_'+id_aux +'" name="room_check_'+id_aux +'" onclick=\'mark_room(this, "'+room1+'", "'+room2+'", "'+id_aux+'");\'></td>';
			elspan=document.createElement('span');
			elspan.innerHTML = a;
			elDiv.appendChild(elspan);


////			elem1=document.createElement('input');
////			elem1.type='checkbox';
////			elem1.name='room_check_'+id_aux;
////			elem1.id='room_check_'+id_aux;
//			var myfcn = 'mark_room(this, "'+room1+'", "'+room2+'", "'+id_aux+'");';
//		    elem1.setAttribute('onClick',myfcn);
//			elem1.onclick=function() {alert('"'+id_aux+'"');} 
////			elem1.onclick = function() {eval('mark_room(this, "'+room1+'", "'+room2+'", "'+id_aux+'");')};

////			elDiv.appendChild(elem1);


			elem1=document.createElement('input');
			elem1.type='text';
			elem1.name='room_num_'+id_aux;
			elem1.id='room_num_'+id_aux;
			elem1.size='2';
			elem1.value=i;
			elem1.disabled = true;
			elDiv.appendChild(elem1);

			elDiv2=document.createElement('div');
			elDiv2.id = 'room_'+id_aux;
			elDiv2.style.visibility = 'hidden';
		
				elem1=document.createElement('input');
				elem1.type='text';
				elem1.name='room_baja_'+id_aux ;
				elem1.id='room_baja_'+id_aux ;
				elem1.size='4';
				eurotext = document.createTextNode(" €");
				elDiv2.appendChild(elem1);
				elDiv2.appendChild(eurotext);
				elDiv.appendChild(elDiv2);

				elem1=document.createElement('input');
				elem1.type='text';
				elem1.name='room_media_'+id_aux ;
				elem1.id='room_media_'+id_aux ;
				elem1.size='4';
				eurotext = document.createTextNode(" €");
				elDiv2.appendChild(elem1);
				elDiv2.appendChild(eurotext);
				elDiv.appendChild(elDiv2);

				elem1=document.createElement('input');
				elem1.type='text';
				elem1.name='room_alta_'+id_aux ;
				elem1.id='room_alta_'+id_aux ;
				elem1.size='4';
				eurotext = document.createTextNode(" €");
				elDiv2.appendChild(elem1);
				elDiv2.appendChild(eurotext);
				elDiv.appendChild(elDiv2);

				elem1=document.createElement('input');
				elem1.type='text';
				elem1.name='room_especial_'+id_aux ;
				elem1.id='room_especial_'+id_aux ;
				elem1.size='4';
				eurotext = document.createTextNode(" €");
				elDiv2.appendChild(elem1);
				elDiv2.appendChild(eurotext);
				elDiv.appendChild(elDiv2);
		}

		$('prices').appendChild(elDiv);
*/

		var a = '<div id="' + capa + '_div">';
		a += '<table><tr><td align="center"><font color="#38801c"><b>PRECIOS PARA LA HABITACIÓN</b></font>  <b><span id="name_'+id+'">' + $('room_name_'+id).value + '</span></b></td></tr><tr><td>';
		a += '<table width="600px"><tr><td colspan="2" class="texto_tabla_alojamiento">Número de <span id="price_type_text">'+text_aux+'</span></td><td><table width="400px" class="texto_tabla_alojamiento"><tr>';
		a += '<td>Temp. Baja</td>';
		a += '<td>Temp. Media</td>';
		a += '<td>Temp. Alta</td>';
		a += '<td>Temp. Especial</td></tr></table></td></tr>';

						for (i=1; i<10; i++){
		var id_aux = id+'_'+i;
		var room1 = 'room_' + id_aux;
		var room2 = 'room_num_' + id_aux;
		a += '<tr><td><input type="checkbox" id="room_check_'+id_aux +'" name="room_check_'+id_aux +'" onclick=\'mark_room(this, "'+room1+'", "'+room2+'", "'+id_aux+'");\'></td>';
		a += '<td><input type="text" id="room_num_'+id_aux +'" name="room_num_'+id_aux +'" size="2" value="'+i+'" disabled onKeyPress=\'return(intFormat(this,event))\'></td>';
		a += '<td><div id="room_'+id_aux +'" style="visibility:hidden;"><table width="400px"><tr>';
		a += '<td><input type="text" id="room_baja_'+id_aux +'" name="room_baja_'+id_aux +'" size="4" value="" onKeyPress=\'return(currencyFormat(this,event))\' onblur=\'convert_number(this);\'>&nbsp;&euro;</td>';
		a += '<td><input type="text" id="room_media_'+id_aux +'" name="room_media_'+id_aux +'" size="4" value="" onKeyPress=\'return(currencyFormat(this,event))\' onblur=\'convert_number(this);\'>&nbsp;&euro;</td>';
		a += '<td><input type="text" id="room_alta_'+id_aux +'" name="room_alta_'+id_aux +'" size="4" value="" onKeyPress=\'return(currencyFormat(this,event))\' onblur=\'convert_number(this);\'>&nbsp;&euro;</td>';
		a += '<td><input type="text" id="room_especial_'+id_aux +'" name="room_especial_'+id_aux +'" size="4" value="" onKeyPress=\'return(currencyFormat(this,event))\' onblur=\'convert_number(this);\'>&nbsp;&euro;</td>';
		a += '</tr></table></div>';
		a += '</td>';
		a += '</tr>';
					}
		a += '</table></td></tr></table></div>';

		elspan=document.createElement('span');
		elspan.innerHTML = a;


		$('prices').appendChild(elspan);
	}
	activate(capa + '_div', id);
}

function activate(capa, id, compl){
	// Oculto todas las capas de los precios por habitaciones
	var precios = $('prices');

	var RegExPattern = /^room_name_[0-9]*_div$/; 

	if (precios) {
	  var divs = precios.getElementsByTagName ('div');
	  if (divs) {
		for (var i = 0; i < divs.length; ++i) {
			if(divs[i].id.match(RegExPattern)){
				divs[i].style.visibility='hidden';
				divs[i].style.position='absolute';
			}else{
				divs[i].style.visibility='hidden';
			}
		}
	  }
	} 

	var complete = $('complete_rent_div');
	var RegExPattern = /^comp_[0-9]*$/; 
	if (complete) {
	  var divs = complete.getElementsByTagName ('div');
	  if (divs) {
		for (var i = 0; i < divs.length; ++i) {
			if(divs[i].id.match(RegExPattern)){
				divs[i].style.visibility='hidden';
			}
		}
	  }
	} 

	// Oculto la capa del precio de alojamiento completo
	$('complete_rent_div').style.visibility='hidden';
	$('complete_rent_div').style.position='absolute';

	// Pongo como visible la capa seleccionada
	$(capa).style.visibility='visible';
	$(capa).style.position='';

	if(id){
		for (i=1; i<10; i++){
			if($('room_check_'+id+'_'+i).checked){
				$('room_'+id+'_'+i).style.visibility='visible';
			}
		}
	}
	if(compl){
		for (i=1; i<10; i++){
			if($('comp_check_'+i).checked){
				$('comp_'+i).style.visibility='visible';
			}
		}
	}
}


function startDataTrans(id){
	if($('name_'+id)){
		interval_2 = setInterval("DataTrans("+id+")",1000);
	}	
}

function DataTrans(id){
	$('name_'+id).innerHTML = $('room_name_'+id).value; 
}

function stopDataTrans(id){
	if($('name_'+id)){
		clearInterval(interval_2);
	}
}

var NumExtra = 1;
var ind_extra = 1;
var MaxExtra = 10;

function add_extra(capa, name, price, id){ 
	if(NumExtra > MaxExtra){
		alert('El número máximo de extras que puede introducir es de ' + MaxExtra);
	}else{
		if(id){
			ind_extra = id;
		}
		elDiv=document.createElement('div');
		elDiv.id = "extra_"+ind_extra;

		nametext = document.createTextNode("Nombre del Extra: ");
		elem1=document.createElement('input');
		elem1.type='text';
		elem1.name='extra_name_' + ind_extra;
		elem1.id='extra_name_' + ind_extra;
		if(name){
			elem1.value=name;
		}else{
			elem1.value='';
		}

		pricetext = document.createTextNode("   Precio: ");
		elem2=document.createElement('input');
		elem2.type='text';
		elem2.name='extra_price_' + ind_extra;
		elem2.id='extra_price_' + ind_extra;
		elem2.onkeypress = function(){return(currencyFormat(this,event))};
		elem2.onblur = function(){convert_number(this)};
		if(price){
			elem2.value=price;
		}else{
			elem2.value='';
		}
		eurotext = document.createTextNode(" €");

		brnode=document.createElement('br');

		elDiv.appendChild(nametext);
		elDiv.appendChild(elem1);
		elDiv.appendChild(pricetext);
		elDiv.appendChild(elem2);
		elDiv.appendChild(eurotext);

		elDiv2=document.createElement('div');
		elDiv2.style.display = 'inline';
		elDiv2.innerHTML = "&nbsp;&nbsp;<a onclick=\"Javascript:var ancla = document.getElementById('extra_"+ind_extra+"');var padre = ancla.parentNode;var hijoRemovido = padre.removeChild(ancla); NumExtra--; return false;\">&nbsp;Quitar</a>"

		elDiv.appendChild(elDiv2);

		$(capa).appendChild(elDiv);

		NumExtra++;
		ind_extra++;
	}
}

function changePriceType(oRad){
	if(price_type != oRad.value){
		confirmar=confirm("Atención: Va a cambiar el modo en que se computan sus precios.\nÉste cambio afectará a todas las tarifas creadas.\nUna vez efectuado el cambio proceda a comprobar todas las tarifas.\n\n¿Desea continuar?"); 
		if (confirmar) {
			price_type = oRad.value;	
			if(price_type == 'day'){
				$('price_ad_data').style.visibility='visible';
				$('price_ad_data').style.position='';
			}else{
				$('price_ad_data').style.visibility='hidden';
				$('price_ad_data').style.position='absolute';
			}
			var formul = $('step4');
			if (formul) {
				var spans = formul.getElementsByTagName ('span');
				if (spans) {
					for (var i = 0; i < spans.length; ++i) {
						if(spans[i].id == 'price_type_text'){
							if(price_type == 'person'){
								spans[i].innerHTML = 'Personas';
							}else if(price_type == 'day'){
								spans[i].innerHTML = 'Dias';
							}
						}
					}
				}
			} 
		}else {
			if(oRad.value == 'person'){
				document.step4.price_type[1].checked = true; 
			}else{
				document.step4.price_type[0].checked = true; 			
			}
		} 
	}
}


// FORMATO DE NUMEROS
function intFormat(fld, e) {
	if(window.Event && e.which){
		var whichCode = e.which; 	
	}else if(window.Event && e.keyCode){
		var whichCode = e.keyCode; 
	}
//    var whichCode2 = (window.Event) ? e.which : e.keyCode; 
	if ((whichCode < 48 || whichCode > 57) && (whichCode != 0) && (whichCode != 8) && (whichCode != 9)){//si no es numero  
		whichCode=0;//anula la entrada de texto.
		if(window.Event){
			window.Event.keyCode = 0;
		}else if (e.which){
			e.which.keyCode = 0;
		}else if (e.which){
			e.keyCode.keyCode = 0;
		}
		return false;
	}
}

function currencyFormat(fld, e) { 
	if(window.Event && e.which){
		var whichCode = e.which; 	
	}else if(window.Event && e.keyCode){
		var whichCode = e.keyCode; 
	}
//    var whichCode = (window.Event) ? e.which : e.keyCode; 
	if ((whichCode < 48 || whichCode > 57) && (whichCode != 0) && (whichCode != 8) && (whichCode != 9) && (whichCode != 44) && (whichCode != 46)){//si no es numero  
		whichCode=0;//anula la entrada de texto.
		if(window.Event){
			window.Event.keyCode = 0;
		}else if (e.which){
			e.which.keyCode = 0;
		}else if (e.which){
			e.keyCode.keyCode = 0;
		}
		return false;
	}else{
		if ((whichCode == 46) || (whichCode == 44)){
			pos =fld.value.indexOf('.');
			if (pos >= 0){
				e.keyCode.keyCode = 0;
				return false;			
			}
		}
		if (whichCode == 44){
			fld.value = fld.value + '.';
			return false;
		}
	}
}

function convert_number(obj){
	var numero = new oNumero(obj.value);
	var number = numero.formato(2, false);
	obj.value = number;
}

function oNumero(numero){
	//Propiedades 
	this.valor = numero || 0
	this.dec = -1;
	//Métodos 
	this.formato = numFormat;
	this.ponValor = ponValor;
	//Definición de los métodos 
	function ponValor(cad){
		if (cad =='-' || cad=='+') return
		if (cad.length ==0) return
		if (cad.indexOf('.') >=0)
			this.valor = parseFloat(cad);
		else 
			this.valor = parseInt(cad);
	} 

	function numFormat(dec, miles)	{
		var num = this.valor, signo=3, expr;
		var cad = ""+this.valor;
		var ceros = "", pos, pdec, i;
		for (i=0; i < dec; i++)
		ceros += '0';
		pos = cad.indexOf('.')
		if (pos < 0)
			cad = cad+"."+ceros;
		else	{
			pdec = cad.length - pos -1;
			if (pdec <= dec){
				for (i=0; i< (dec-pdec); i++)
					cad += '0';
			}else{
				num = num*Math.pow(10, dec);
				num = Math.round(num);
				num = num/Math.pow(10, dec);
				cad = new String(num);
			}
		}
		pos = cad.indexOf('.')
		if (pos < 0) pos = cad.lentgh
		if (cad.substr(0,1)=='-' || cad.substr(0,1) == '+') 
			   signo = 4;
		if (miles && pos > signo)
			do{
				expr = /([+-]?\d)(\d{3}[\.\,]\d*)/
				cad.match(expr)
				cad=cad.replace(expr, RegExp.$1+','+RegExp.$2)
				}
		while (cad.indexOf(',') > signo)
			if (dec<0) cad = cad.replace(/\./,'')
			if (cad == '0.00') cad = '';
			return cad;
	}
}

function lodgingdeleteconfirm() {
   if (confirm("¿Esta seguro de querer borrar ésta Alojamiento?")) {
	   return true;
   } else {
	return false;
   }
}


