/*jQuery.noConflict();*/
window.addEvent('domready',function(){

	if($('minimotor')){	

/* calendario  - config */
	calendarioDias  = ["Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sabado"];
	calendarioMeses = ["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"];
	//-- palabras fin
	var hoy = new Date();
	var salidaFrom = new Date(hoy.getFullYear(),hoy.getMonth(),hoy.getDate());
	salidaFrom = [salidaFrom.getFullYear(),salidaFrom.getMonth(),salidaFrom.getDate()];
//try{
	dpFechaRetorno = $('out').datePicker({format: '%d-%m-%y',onUpdate: moverCantidadDeNoches});
	dpFechaSalida  = $('in').datePicker({
			from: salidaFrom,
			initial: salidaFrom,
			setInitial: true,
			days : calendarioDias,
			months : calendarioMeses,
			format: '%d-%m-%y',
			onUpdate: function(date){
				var retornoFrom = new Date(date.y,date.m,date.d);
				var noches = calcularNoches(retornoFrom);
				dpFechaRetorno.options.from = [retornoFrom.getFullYear(),retornoFrom.getMonth(),retornoFrom.getDate()];
				dpFechaRetorno.setFullDate(date.y,date.m,date.d+noches).update();
			}
	});
//	}catch(err){alert(err);}

	/*eventos*/
		$('pais_id').addEvent('change',function(){
		var pid = $('pais_id').get('value').toInt();
		if( pid == 30){$('hotel_id').set('value', 2);}
		});
		$('out').addEvent('focus',function (){this.blur();});
		$('in').addEvent('focus',function (){this.blur();});
		$('habitaciones').addEvent('change' ,function (){var cant = this.getSelected();$('distribuciones').setStyle('display', 'block'); if( $chk( cant[0].value) && cant[0].value > 0)agregarCamposAdChilds('distribuciones' , cant[0].value , palabrasForm);});
	}
});

/* --- funciones para la distribucion --- */
function agregarCamposAdChilds (padreId , cantidad , lang ){var vals = false;if($chk(arguments[3])){	var values = arguments[3];vals = true;}if(!$chk(padreId) ||!$chk(cantidad) ) return false;$(padreId).empty();	for( var i = 0 ; i < cantidad ; i ++){var sadultos = new Element('label',{'for':'adultos_'+i ,'html':'<span>'+lang.campo_adultos+'</span>'}).adopt(new Element('select' , {id:'adultos' , name:('adultos_'+i),id:('adultos_'+i), 'class':'adultos'}).adopt(getOptions(1,7)));if(vals){sadultos.getFirst().set('value',values.get('adultos_'+i));}var schilds = new Element('label',{'for':'childs_'+i , 'html':'<span>'+lang.campo_chids+'</span>'}).adopt(new Element('select' , {id:'childs_'+i , name:('childs_'+i), 'class':'childs','selected':'2'}).adopt(getOptions(0,5)).addEvent('change',function (){cargarCamposEdad(this , lang);}));$(padreId).adopt(new Element('div',{'class':'filaadchilds'}).adopt(new Element('strong',{'html':lang.titulo_campos+' '+(i+1)+' ' , 'class':'titulo'}) , sadultos , schilds),'before');if(vals){var edades = new Array();var cchild = values.get('childs_'+i);	schilds.getFirst().set('value',cchild);for(j = 0 ; j<cchild; j++){ edades.push(values.get('child_'+i+'_'+j));}cargarCamposEdad($('childs_'+i) , lang ,edades );}}return true;}
function cargarCamposEdad(select , lang){var vals = false;if($chk(arguments[2])){var values = arguments[2];vals = true;}var id = select.id.substr(select.id.lastIndexOf('_')+1);var val = select.get('value').toInt();if($(select).getParent().getNext() ){$(select).getParent().getNext().destroy();}var campos = new Array();if($chk(val) && val <= 0) return false;for (var i = 0 ; i < val ; i++ ){var cec = new Element('select' , { name:('child_'+id+'_'+i), id:('childc'+id+'e'+i), 'class':'edad'});campos.include(new Element('label',{'for':'edad_child_'+i , 'html':'<span>'+lang.campo_edad+'</span>'}).adopt(cec.adopt(getOptions(0,5))));if(vals){cec.set('value',values[i]);}}$(select).getParent().getParent().adopt(new Element('div',{'class':'edades'}).adopt(campos));}
function getOptions(desde , cant){var opts = new Array();for(var i = desde; i < cant; i++ ){opts.include(new Element('option' , {'value':i}).appendText(i.toString()));}return opts;}
function traerOptions(datos){r = new Array();datos.each(function (el){r.include(new Element('option',{'value':el.value , 'html':el.nombre}) );});return r;}


	function calcularNoches ()
	{
		//TODO mantener la cantidad de noches solo si las fechas hicieran que sea menor al actual 
		return  $('noches').get('value').toInt();		
	}

function moverCantidadDeNoches()
	{
		var f1 = $('in').get('value').split('-');
		var f2 = $('out').get('value').split('-');
		var noches = calcularDiferenciaInOut(f1,f2);
		$('noches').value = noches;
	}	
		function calcularDiferenciaInOut(f1 , f2)
	{
		//PATCH (al pasar por la funcion date tengo un mes de mas todavia  no se por que )
		var fout = new Date(f2[2] , f2[1]-1,f2[0]);
		var fin = new Date(f1[2] , f1[1]-1,f1[0]);
		return fin.diff(fout);
	}
