String.prototype.trim = function(){ return this.replace(/^s+|s+$/g,'') }

var borrarLinks = new Array();
borrarLinks = $$('.borrar');
borrarLinks.each(function(element)
{
	$(element).observe('click', function(event){
		var URL = site_uri + 'index_ajax.php';
		var pars = "a=ajax.del.propiedad.php&id=" + element.id;
		new Ajax.Request(URL, {
			method: 'post',
			parameters: pars,
			onComplete: function(transport) {
				var ul = element.up('ul').id;
				$(ul).hide();
			}
		});

	});		
});

var destacarLinks = new Array();
destacarLinks = $$('.destacar_objeto');
destacarLinks.each(function(element)
{
	$(element).observe('click', function(event){
		var URL = site_uri + 'index_ajax.php';
		var pars = "a=action.destacar.php&id=" + element.readAttribute('rel');
		new Ajax.Request(URL, {
			method: 'post',
			parameters: pars,
			onComplete: function(transport) {
				//var ul = element.up('ul').id;
				//$(ul).hide();
				alert("Se envio una solicitud para destacar su propiedad");
			}
		});

	});		
});

var altImgLinks = new Array();
altImgLinks = $$('.picAlt');
altImgLinks.each(function(element)
{
	var url = site_uri + 'index_ajax.php' ;
	new Ajax.InPlaceEditor( element, url,{ callback: function(form, value) { return 'a=ajax.mod.image.alt.php&id=' + element.readAttribute('rel') + '&value=' + escape(value) }, highlightcolor : '6E9B40', cancelText : 'cancelar', savingText: 'guardando...', clickToEditText: 'Click para editar' });

});


var borrarImagenLinks = new Array();
borrarImagenLinks = $$('.borrarImg');
borrarImagenLinks.each(function(element)
{
	$(element).observe('click', function(event){
		var URL = site_uri + 'index_ajax.php';
		var pars = "a=ajax.del.imagen.php&id=" + element.readAttribute('rel');
		new Ajax.Request(URL, {
			method: 'post',
			parameters: pars,
			onSuccess: function(transport) {
				var li = element.up('li');
				Element.remove(li);
			}
		});

	});		
});

var gotoLinks = new Array();
gotoLinks = $$('.goto');
gotoLinks.each(function(element)
{
	$(element).observe('click', function(event){
		document.location.href= element.readAttribute('rel');
	});		
});

var paginacionLinks = new Array(); 
paginacionLinks = $$('div.paginacion a');
paginacionLinks.each(function(element)
{
	$(element).observe('click', function(event)
	{
		if($('buscador')){
			$('buscador').action = element.readAttribute('rel');
			$('buscador').submit();
			//console.log('es aca');
			return false;
		}
		else
		{
			goTo(element.readAttribute('rel'));
			return false;
		}
	});		
});

var paginacionLinks = new Array();
paginacionLinks = $$('#paginacion_historico a');
paginacionLinks.each(function(element)
{
	$(element).observe('click', function(event)
	{
		$('historico').action = element.readAttribute('rel');
		$('historico').submit();
		return false;
	});		
});

var linkHome = new Array();
linkHome = $$('h1');
linkHome.each(function(element)
{
	$(element).observe('click', function(event)
	{
		document.location.href= site_uri;
	});
});

var menuLinks = new Array();
menuLinks = $$('#nav_main ul li');
menuLinks.each(function(element)
{
	element.addClassName('liMenu');
	$(element).observe('mouseover', function(event){
		element.addClassName('liHover');
		element.removeClassName('liMenu');
		element.down("a").style.color = "#fff";
	});
	
	$(element).observe('mouseout', function(event){
		element.addClassName('liMenu');
		element.removeClassName('liHover')
		element.down("a").style.color = "#fff";
	});
	
	$(element).observe('click', function(event){
		var a = element.down("a");
		document.location.href = a.href;
	});	
});

var serviciosLinks = new Array();
serviciosLinks = $$('.servicios ul li');
serviciosLinks.each(function(element)
{
	//element.addClassName('liMenu');
	$(element).observe('click', function(event){
		Effect.toggle(element.down('ul'), 'appear');
	});
});

if ($('user_agencia'))
{
	$('user_agencia').observe('click', function(event){
		//new Effect.toggle('file_agencia', 'blind');
		if($('file_agencia').style.display == 'block') $('file_agencia').style.display = 'none';
		else $('file_agencia').style.display = 'block';
	});	
}

if ($('delMsg'))
{
	var img = $('delMsg').down(0);
	img.observe('click', function(event){
		$('msg').submit();
		return false;
	});	
}

if ($('advButton'))
{
	$('advButton').observe('click', function(event){
		$('avanzado').style.display = 'block';
		$('advButton').hide();
	});	
}

if ($('busquedaAvanzada'))
{
	$('busquedaAvanzada').observe('click', function(event){
		if($('advancedSearchVenta').style.display == 'block') $('advancedSearchVenta').style.display = 'none';
		else $('advancedSearchVenta').style.display = 'block';
		return false;
	});	
}


if ($('idioma'))
{
	$('idioma').observe('change', function(event){
		document.location.href = site_uri+'index.php?q=1&langId='+$('idioma').value;		
	});	
}


var myTR = document.getElementsByTagName('tr');
for (var i=0;i<myTR.length;i++) {
  if (i%2) {
     myTR[i].className = 'impar';
  }
}

function cambiaPrecio(element)
{
	if (element.value == 2 || element.value == 3)
	{
		$('precioDesde').length = 0;
		for (i=0; i < from_rent.length; i++)
			$('precioDesde').options[i] = new Option(from_rent_value[i],from_rent[i]);
		$('precioHasta').length = 0;
		for (i=0; i < to_rent.length; i++)
			$('precioHasta').options[i] = new Option(to_rent_value[i],to_rent[i]);			
	}
	else if (element.value == 1)
	{
		$('precioDesde').length = 0;
		for (i=0; i < from_sell.length; i++)
			$('precioDesde').options[i] = new Option(from_sell_value[i],from_sell[i]);
		$('precioHasta').length = 0;
		for (i=0; i < to_sell.length; i++)
			$('precioHasta').options[i] = new Option(to_sell_value[i],to_sell[i]);			
	}	
}

hs.registerOverlay(
    	{
    		thumbnailId: null,
    		overlayId: 'controlbar',
    		position: 'top right',
    		hideOnMouseOut: true
		}
	);
	
// Funcion para agregar una propiedad a la lista de favoritos de un user
function addfavObjeto(productoId,tipo)
{

		var URL = site_uri + 'index_ajax.php';
		var pars = "a=ajax.agregar.favorito.php&productoId="+productoId+"&tipo="+tipo;
		new Ajax.Request(URL, {
			method: 'post',
			parameters: pars,
			onComplete: function(transport) {
				////////////////////////////////
				
				if($('estrella').src == site_uri + "frontend/images/addFavorite.png")
				{
					estrella = document.createElement('img');
					estrella.src = site_uri + "frontend/images/addFavoriteNO.png"
					estrella.id = 'estrella';
					estrella.title = $('estrella').title;
					estrella.alt = $('estrella').alt;
					estrella.title = $('estrella').title;
					$('estrella').remove();
					$('addfavorito').appendChild(estrella);
					
				}
				else
				{
					estrella = document.createElement('img');
					estrella.src = site_uri + "frontend/images/addFavorite.png"
					estrella.id = 'estrella';
					estrella.title = $('estrella').title;
					estrella.alt = $('estrella').alt;
					estrella.title = $('estrella').title;
					$('estrella').remove();
					$('addfavorito').appendChild(estrella);	
					
				}
				
				
				
			}
		});

}
// funcion para agregar un comentario
function addcomentObjeto(productoId,tipo)
{
		var URL = site_uri + 'index_ajax.php';
		var pars = "a=ajax.agregar.comentario.php&productoId="+productoId+"&tipo="+tipo+"&comentario="+$F('comentario');
		new Ajax.Request(URL, {
			method : 'post',
			parameters: pars,
			onComplete: function(transport){
				console.log("true");
			}	
		});	
}

if ($('botonFav'))
{
	$('botonFav').observe('click', function(event){
		var URL = site_uri + 'index_ajax.php';
		var pars = "a=ajax.add.favorito.propiedad.php&id=" + $('botonFav').readAttribute('rel');
		new Ajax.Request(URL, {
			method: 'post',
			parameters: pars,
			onComplete: function(transport) {
				
			}
		});

	});		
	}

/* Disponibilidad */
if($('calendario')){
	var propId = $('propId').innerHTML;
	var tipo = $('tipoDisponibilidad').innerHTML;
	marcarDisponibilidad(propId,tipo);
}

function marcarDisponibilidad(propId,tipo)
{
	var URL = site_uri + 'index_ajax.php';
	var datos = "";
	if ($('disponibilidad'))
	{
		datos = $('disponibilidad').serialize();
	}
	else
	{	
		datos = "propId="+propId+"&tipoDisponibilidad="+tipo;
	}
	var pars = "a=ajax.agregar.disponibilidad.php&"+ datos;
	new Ajax.Request(URL, {
		method: 'post',
		parameters: pars,
		onComplete: function(transport) {
			algo = transport.responseText.split(" E ");

			if (algo.length < 2)
			{
				if ($('calendario_c')) 
				{
					$('calendario_c').remove();
				}
				
				new Insertion.Top ('calendario', transport.responseText);
				desde_hasta();
			}
			else
			{
				new Insertion.Bottom ('calendario_c',""+algo[1]+"");
			}
			linkDisponible();
		}
	});
};

function linkDisponible()
{
	var disponibleLinks = new Array();
	disponibleLinks = $$(".disponible");
	disponibleLinks.each(function(element)
	{
		$(element).observe('click', (function (event) {
				desde_hasta(element.readAttribute('rel'))
			}));	
	});
}

function desde_hasta(rel)
{
	var URL = site_uri + 'index_ajax.php';
	var pars = "a=ajax.cambiar.disponibilidad.php";
	if (rel)
	{
		var tipo = $('tipoDisponibilidad').innerHTML;
		pars += "&id=" + rel + "&tipoDisponibilidad=" + tipo;
	}
	else
	{
		var propId = $('propId').innerHTML;
		var tipo = $('tipoDisponibilidad').innerHTML;
		pars += "&propId=" + propId +"&tipoDisponibilidad="+tipo;
	}
	if($('tipo')) if($F('tipo') == 'add') pars += "&tipo=add";
	new Ajax.Request(URL, {
		method: 'post',
		parameters: pars,
		onComplete: function(transport) {
			//console.log(transport.responseText);
			$('formCalendario').innerHTML = transport.responseText;
		}
	});
}

function borrarDisponibilida(id)
{
	var URL = site_uri + 'index_ajax.php';
	var pars = "a=ajax.del.disponibilidad.php&id=" + id;
	
	new Ajax.Request(URL, {
		method: 'post',
		parameters: pars,
		onComplete: function(transport) {
			var propId = $('propId').innerHTML;
			marcarDisponibilidad(propId);
		}
	});
}

function goTo(uri)
{
	document.location.href = uri;
	return false;
}

function goTo_div(div)
{
	var uri = $(div).innerHTML;
	goTo(uri);
}

function cambiaBuscador(value)
{
	if (value == '5' || value == '6' || value == '8' || value == '9' || value == 'barco')
	{
		$('obj').value = 2;
		$('capacidadLabel').show();
		$('amarreLabel').show();
		$('adv_barco').show();
		$('adv_prop').hide();
		$('subregionLabel').hide();
		$('dormitorioLabel').hide();
	}
	else
	{
		$('obj').value = 1;
		$('capacidadLabel').hide();
		$('amarreLabel').hide();
		$('adv_barco').hide();		
		$('adv_prop').show();
		$('subregionLabel').show();
		$('dormitorioLabel').show();
	}
}

function setCondicionId(id)
{
	$('condicionId').value = id;
	
	if(id == 3)
	{
		$('preciosVenta').hide();
		$('preciosAlquiler').show();		
		$('tabs').removeClassName('tab2');
		$('tabs').addClassName('tab1');
	}
	else
	{
		$('preciosVenta').show();
		$('preciosAlquiler').hide();		
		$('tabs').removeClassName('tab1');
		$('tabs').addClassName('tab2');
	}
}

function cambiarBuscador(value)
{
	if (value == '5' || value == '6' || value == '8' || value == '9' || value == 'barco')
	{
		$('obj').value = 2;
		$('capacidadLabel').show();
		$('amarreLabel').show();
		$('subregionLabel').hide();
		$('dormitorioLabel').hide();
	}
	else
	{
		$('obj').value = 1;
		$('capacidadLabel').hide();
		$('amarreLabel').hide();
		$('subregionLabel').show();
		$('dormitorioLabel').show();
	}
}

function borrarObjeto(tipo,id)
{
	var URL = site_uri + 'index_ajax.php';
	
	if (tipo == 'propiedad')
	{
		pars = 'a=ajax.del.propiedad.php&id=' + id;
		var obj = 'prop_';
	}
	else if (tipo == 'barco')
	{
		pars = 'a=ajax.del.barco.php&id=' + id;
		var obj = 'barco_';
	}
	
	if (confirm("Esta seguro que desea borrarlo?"))
	{
		new Ajax.Request(URL, {
								method: 'post',
								parameters: pars,
								onComplete: function(transport) {
									var divObjeto = obj + id;
									$(divObjeto).hide();
								}
		});
	}
}



function showBox(){
    $('overlay').show();
    center('box');
    return false;
}

function hideBox(){
    $('box').hide();
    $('overlay').hide();
    return false;
}

function center(element){
    try{
        element = $(element);
    }catch(e){
        return;
    }

    var my_width  = 0;
    var my_height = 0;

    if ( typeof( window.innerWidth ) == 'number' ){
        my_width  = window.innerWidth;
        my_height = window.innerHeight;
    }else if ( document.documentElement && 
             ( document.documentElement.clientWidth ||
               document.documentElement.clientHeight ) ){
        my_width  = document.documentElement.clientWidth;
        my_height = document.documentElement.clientHeight;
    }
    else if ( document.body && 
            ( document.body.clientWidth || document.body.clientHeight ) ){
        my_width  = document.body.clientWidth;
        my_height = document.body.clientHeight;
    }

    element.style.position = 'absolute';
    element.style.zIndex   = 99;

    var scrollY = 0;

    if ( document.documentElement && document.documentElement.scrollTop ){
        scrollY = document.documentElement.scrollTop;
    }else if ( document.body && document.body.scrollTop ){
        scrollY = document.body.scrollTop;
    }else if ( window.pageYOffset ){
        scrollY = window.pageYOffset;
    }else if ( window.scrollY ){
        scrollY = window.scrollY;
    }

    var elementDimensions = Element.getDimensions(element);

    var setX = ( my_width  - elementDimensions.width  ) / 2;
    var setY = ( my_height - elementDimensions.height ) / 2 + scrollY;

    //setX = ( setX > 0 ) ? 0 : setX;
    //setY = ( setY > 0 ) ? 0 : setY;
	
    element.style.left = setX + "px";
    element.style.top  = setY + "px";
	//console.log(element);
    element.style.display  = 'block';
	
	arrayPageSize = getPageSize();
	$('overlay').style.height = arrayPageSize[1] + 'px';
}

function getPageSize(){
	
	var xScroll, yScroll;
	
	if (window.innerHeight && window.scrollMaxY) {	
		xScroll = window.innerWidth + window.scrollMaxX;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}
	
	var windowWidth, windowHeight;
	
//	console.log(self.innerWidth);
//	console.log(document.documentElement.clientWidth);

	if (self.innerHeight) {	// all except Explorer
		if(document.documentElement.clientWidth){
			windowWidth = document.documentElement.clientWidth; 
		} else {
			windowWidth = self.innerWidth;
		}
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	
	
	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else { 
		pageHeight = yScroll;
	}

//	console.log("xScroll " + xScroll)
//	console.log("windowWidth " + windowWidth)

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){	
		pageWidth = xScroll;		
	} else {
		pageWidth = windowWidth;
	}
//	console.log("pageWidth " + pageWidth)

	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
	return arrayPageSize;
}

function cambioLocation(id)
{
	$('departamentoId').value = id;
	hideBox();
	checkSubRegion(document.getElementById('departamentoId'));
}

function checkSubRegion(el)
{
	document.getElementById('form_subregion').options.length = 0;
	if (el.value == "") el.value = 0;
		var arrayLocalidad = new Array();
		for (i = 0; i < region[el.value].length; i++)
		{
			if (region[el.value][i])
				arrayLocalidad.push(i +","+region[el.value][i]);
		}
		for (i = 0; i < arrayLocalidad.length; i++)
		{
			var algo = arrayLocalidad[i].split(",")
			document.getElementById('form_subregion').options[i] = new Option(algo[1],algo[0]);
		}
		//document.getElementById('form_subregion').style.display = "block";	
}
