/* Dominiosalinstante.com
 * Derechos Reservados 2009
 * Este codigo es propiedad de Dominiosalinstante.com
 * Mario Estrada
 */

$(function()
{
	var id_timer;
	var ultimo_buscado = "";
	var regex = /^[0-9A-Za-z\-]+$/;
	var caja = $('#nombre');
	var form = $('#dominios');
	var loader = $('#loading img');
	var region = $('#region');
	var cookie_region = readCookie('region');
	
	if(cookie_region !== null)
		var revisar = ['com', 'net', 'org', cookie_region];
	else
		var revisar = ['com', 'net', 'org'];
	
	caja.val('');
	caja.focus();
	
	caja.keydown(function()
	{
		clearTimeout(id_timer);
	});
	
	caja.keyup(function()
	{
		var caja_val = caja.val();
		var res = regex.test(caja_val);
		
		if(!res){
			caja.val(caja_val.substring(0, caja_val.length - 1));
			caja_val = caja.val();
		}
		
		if(ultimo_buscado != caja_val && caja_val.length > 2)
		{
			ultimo_buscado = caja_val;
			id_timer = setTimeout("revisarDisponibilidad()", 300);
		}
	});
	
	region.change(function()
	{
		if($(this).val() === "")
		{
			eraseCookie('region');
		}else{
			createCookie('region', $(this).val(), 30);
		}
		location.href = location.href;
	})
	
	revisarDisponibilidad = function()
	{
		loader.show();
		$('#resultados_container').slideUp(100);
		
		$.post('find.php', 
			{ nombre: caja.val() }, 
			function(data)
			{
				var max = revisar.length;
				var id_region;
				
				for(i = 0; i < max; i++)
				{
					id_region = revisar[i].replace('.', '_');
					$('#punto' + id_region).addClass(data[revisar[i]] ? 'si' : 'no')
						.removeClass(!data[revisar[i]] ? 'si' : 'no');
					
					$('#' + id_region + (data[revisar[i]] ? 'disponible' : 'nodisponible')).show();
					$('#' + id_region + (!data[revisar[i]] ? 'disponible' : 'nodisponible')).hide();
					
					$('#' + id_region + 'resultados a[rel]').each(function()
					{
						$(this).attr('href', reemplazaComodines($(this).attr('rel'), data.nombre, revisar[i]));
					});
				}
				
				if(data.twitter)
				{
					$('#twitter .no').hide();
					$('#twitter .si').show();
				}else{
					$('#twitter .no').show();
					$('#twitter .si').hide();
				}
				
				$('#dominio_consultado').text(data.nombre);
				
				$('#start').slideUp(250);
			},
			'json');
			$('#resultados_container').ajaxStop(function()
			{
				loader.fadeOut(250);
				$(this).slideDown(250);
			});
	}
});

reemplazaComodines = function(link, dominio, tipo)
{
	link = link.replace('{dominio}', dominio);
	link = link.replace('{dominio_tipo}', tipo);
	link = link.replace('{dominio_completo}', dominio + '.' + tipo);
	return link;
}

createCookie = function(name,value,days) 
{
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

readCookie = function(name) 
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

eraseCookie = function(name) 
{
	createCookie(name,"",-1);
}