/**
* Funcion para buscar en la lista de series.
**/
function buscarAnime(refObj, refEvt)
{
	if (typeof(refObj) == "string") refObj = document.getElementById(refObj);
	
	if (refEvt)
	{
		ie ? key = window.event.keyCode : "";
		ff ? key = refEvt.which : "";
		
		if (key != 13)
		{
			return true;
		}
	}
	
	var srchTxt = refObj["value"];
	
	myConn.connect(PATH + "/misarchivossubidos/search/", "POST", "srchTxt=" + srchTxt + "&dif=" + Date(), makeList);
	
	return false;
}

var makeList = function (oXML)
{
	var animeList = document.getElementById("animeList");
	var animeListDiv = animeList.getElementsByTagName("div")[0];
	
	/*if (ie)
	{
		var status = document.getElementById("status");
		status["style"]["visibility"] = "hidden";
	}*/
	
	while (animeListDiv.childNodes.length > 0)
	{
		animeListDiv.removeChild(animeListDiv.childNodes[0]);
	}
	
	if (oXML.responseText == "none")
	{
		var newAlert = document.createElement("span");
		var newAlertText = document.createTextNode("No se encontraron resultados, intenta de nuevo.");
		newAlert.appendChild(newAlertText);
		newAlert["onclick"] = closeAnimeList;
		
		animeListDiv.appendChild(newAlert);
	}
	else
	{
		var splitList = oXML.responseText.split("||");
		
		for (sl = 0; sl < splitList.length; sl++)
		{
			var animeInfo = splitList[sl].split("::");
			var animeSpan = document.createElement("span");
			var animeTitle = replaceEntities(animeInfo[1]);
			var animeText = document.createTextNode(animeTitle);
			animeSpan.appendChild(animeText);
			animeSpan["id"] = animeInfo[0];
			animeSpan["onclick"] = selectAnime;
			
			if (ie)
			{
				animeSpan["onmouseover"] = new Function('this["className"] = "over"');
				animeSpan["onmouseout"] = new Function('this["className"] = "out"');
			}
			
			animeListDiv.appendChild(animeSpan);
		}
	}
	
	animeList["style"]["height"] = splitList.length > 10 ? "160px" : "auto";
	animeList["style"]["display"] = "block";
}

function selectAnime()
{
	var anime_id = this["id"];
	var anime_title = this["innerHTML"];
	
	var searchSerie = document.getElementById("searchSerie");
	var series_id = document.getElementById("series_id");
	
	series_id["value"] = anime_id;
	searchSerie["value"] = anime_title;
	
	closeAnimeList();
}

function closeAnimeList()
{
	var animeList = document.getElementById("animeList");
	animeList["style"]["display"] = "none";
	
	if (ie)
	{
		var status = document.getElementById("status");
		status["style"]["visibility"] = "visible";
	}
}

var canCreateBlog = false;
var subdomainLength = new RegExp('^.{2,38}$');
var subdomainCharset = new RegExp('^[a-z0-9][a-z0-9\-]{0,36}[a-z0-9]$', 'i');

function disponibilidad()
{
	if (!subdomainLength.test($("subdomain")["value"]))
	{
		canCreateBlog = false;
		warnSubdomain();
		alert("El subdominio debe tener de 2 a 38 caracteres de longitud.");
		return;
	}
	
	if (!subdomainCharset.test($("subdomain")["value"]))
	{
		canCreateBlog = false;
		warnSubdomain();
		alert("El subdominio contiene caracteres inválidos.\nSólo se permiten caracteres alfanúmericos y el signo de menos (-).\nEjemplo: mi-primer-blog.");
		return;
	}
	
	var myConn = new XHConn();
	myConn.connect(PATH + "/blogs/crearBlog/disponibilidad/", "POST", "subdomain=" + $("subdomain")["value"].toLowerCase() + "&diff=" + Date(), availability);
}

var availability = function (oXML)
{
	canCreateBlog = eval(oXML.responseText);
	warnSubdomain();
	
	return;
}

function checkDomain()
{
	disponibilidad();
	
	if (!canCreateBlog)
	{
		alert("No puedes seguir hasta que hayas verificado la disponibilidad del dominio que deseas utilizar.");
		return false;
	}
	
	return true;
}

function warnSubdomain()
{
	if (canCreateBlog)
	{
		$("cannotCreate")["style"]["display"] = "none";
		$("canCreate")["style"]["display"] = "block";
	}
	else
	{
		$("canCreate")["style"]["display"] = "none";
		$("cannotCreate")["style"]["display"] = "block";
	}
}

function replaceEntities(entityText)
{
	var hasAmp = entityText.indexOf("&");
	var hasSemi = entityText.indexOf(";");
	
	var entityArray = Array("&aacute;", "&eacute;", "&iacute;", "&oacute;", "&uacute;", "&Aacute;", "&Eacute;", "&Iacute;", "&Oacute;", "&Uacute;", "&agrave;", "&Agrave;", "&auml;", "&Auml;", "&ecirc;", "&Ecirc;", "&ocirc;", "&Ocirc;", "&ccedil;", "&Ccedil;", "&quot;", "&amp;");
	var textArray = Array("", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "\"", "&");
	
	if (hasAmp != -1 && hasSemi != -1)
	{
		for (h = 0; h < entityArray.length; h++)
		{
			if (entityText.indexOf(entityArray[h]) != -1)
			{
				entityText = entityText.replace(entityArray[h], textArray[h]);
				h = 0;
			}
		}
	}

	return entityText;
}