WirnCael / Hachede Plus Pruebas

// ==UserScript==
// @name					Hachede Plus Pruebas
// @namespace		hachedePlusPruebas
// @description		Addon para +Hachede en pruebas
// @icon					https://hachede.me/favicon.ico?lv=2.2
// @include				https://hachede.me/*
// @include				http://hachede.me/*
// @version				1
// @author				darkvier, WirnCael
// @grant					none
// @require				http://code.jquery.com/jquery-1.11.2.min.js
// @priority				1
// @run-at				document-end
// @downloadURL https://openuserjs.org/install/WirnCael/Hachede_Plus_Pruebas.user.js
// ==/UserScript==

var version = 12;
var timeStart = Date.now();
var j = jQuery.noConflict(true);
var PagToLoad = 2;


var site = location.href.match(/http[s]{0,1}:\/\/[a-z0-9\.]{4,}\//gi)[0];
var arrayTorrents = [];
var searchAjaxContador = 0;
var imgSort = "<img style='vertical-align: middle; width: 15px;' src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGsAAAB4CAYAAAD1/Qw5AAAABmJLR0QA/wD/AP+gvaeTAAADk0lEQVR4nO3dW07bQBiG4Rep991CEkgCBcRRtN1AJbbaDfSSreQcziTqAtoLZoqpkmDHnpP9vdIvRKsGzzx3xR5D/WoBN+arirgWMAD+mK+tcJeiNtXmDcrOwPy5iqg2MOQ9lJ0hAoumDuuhsmCdUBeoXssDJbAI6gAj8kHZGSEw7+1SHCoLtuv/kptZGSiBeWwPGFMOys7YfJ5yUJfqoLJgXZ+LaEIuoATmoC4wwQ2UnQkCK10P91BZsJ6fZdWvHjDFD5SdKQIrXB//UFmwvvsl1qOQUAIrUB+YERbKzgyBrW2feKCyYPsuF51iMUIJbEUHwJzwKJtmbq6z0aUAJTBeF35LeIQic0sDwb6QHlQW7Ev1WxJnKUM1CuwQuCP8Zlcxd2Y9taxOULUGOwTuCb+5LuaeGoEdUV+oLNhRVRsWqmPqD5UFO65m2/zXJKikwU5oHlQW7KT8FvqpyVBJgZ0AD4TfrBjmgYjBThHUKrDTMpvqIkElAnYGPBJ+U2KeR7NPQRNUImBnwNMHF6h5P08EADtHUGXAzotv+XYJKhGwc+A58ELrMs84BLtAUC7ALoog5OkCeIlgcXWcFyoEu0RQPsAu84KsS1CJgF0CiwgW0aRZsAXYFYIKCXb1MdFrggo/ucC+CiqaWRiPlX0TVHSzMC6CSmT+ge0A34FfwOf/BVU0LYHrHeAHgkqhZegLUEoppZRSSimllFJKhUn/kZtOy0/Ab+AnAou5JXBtv9EvH+Md/bY4kVkJZdMNM/HMxhtmbLoVLfzo3sFEphCUTbdPh4Eqdb+7HkzwM3qSJJGpBMqmh+ncQjl5+lGPqVY7Th5TtekB8GqhvDyxr6MVyo3OwkhkvELZdBzQdlBBz2/SQVv5RiejJTJRQNl0OOT6iepwSJvAEoGy6UDj91DRHmhs01HhiRwVbmsyWFJQNr3eIrGaBJY0lE2vZEosvewssfQawcSqE1itoWx69W1ipQzWKCibXteeWAfAnPAIeWZOg6FsKYAJKtM+MCM8yqqZmetTmWIEE9SG+sQDNjPXozbUB6aEhZoiqNyFBBPUFvXwDzY1P1dtUQ+Y4AdqgqBK18U92MT8HFVBXWCMG6gxgqo8F2CCctge1YGNzecph+0CI8pBjcznKA+VARNUgDoUBxuZf6cC1AGG5IMaIqjg5QETVES1WQ82NH+vIqoNDHgPNUBQ0dbiDWxgvlcR1wJuqCHUX4d0JMZLPeUsAAAAAElFTkSuQmCC'>";
var imgWarning = "data:image/png;base64,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";
var cssRatesIcon = "display: inline-block; height: 12px; font-size: 10px; line-height: 1; padding: 3px; margin: 0px 2px;";


var searchWarnTooResults = "La busqueda genero demasiados resultados como para poder ordenarlos";

var searchNormal = "<form id='searchNormal' class='torrent-box' style='margin-top: 5px; display: inline-block;' action='"+site+"?p=torrents&amp;pid=10' method='post'><input type='text' placeholder='palabra a buscar...' class='s' id='keywords' name='keywords' style='margin-right: 10px;'><select id='cat_content_tin' name='search_type' style='margin-right: 10px;'><option value='name' selected>en el nombre del Torrent</option><option value='description'>en la descripción del Torrent</option><option value='both'>en el nombre y la descripción del Torrent</option><option value='uploader'>por Uploader</option></select><input type='submit' class='submit' value='Buscar'> </form>";
var searchEncabezado = "<form id='searchEncabezado' style='float: right; height: 41px; width: 161px;' action='"+site+"?p=torrents&amp;pid=10' method='post'><input type='text' placeholder='nombre del torrent...' id='keywords' name='keywords' style='border-radius:7px; margin-top:10px; padding:2px; width:151px !important;'><input type='hidden' name='search_type' id='cat_content_tin' value='name'></form>";

// Variables del Historial
var tipoHistorial = {
         Activos: 0,
         Inactivos: 1
}
var tipoHistorialActual = 0;
var ordenHistorialActualTipo = 0;  // 0 down, 1 up
var ordenHistorialActualNombre ="Actualización";
var arrayTorrentsActivos = [];
var arrayTorrentsInactivos = [];
var arrayTorrentsActivosOriginal = [];
var arrayTorrentsInactivosOriginal = [];


	var searchPrintWorking = 0;
	
/*###########		INDICE		#########*/

j( document ).ready(function( $ ) {
	timeLog("j(document).ready");
	
	// Ejecutar siempre
	fInit();
		
	if(location.href == site+"?p=home&pid=1"){
		fHome();	// Seccion de inicio
	}else{
		fNoHome();	// No Seccion inicio
	}
	
	// Listado de torrents
	if(location.href.search("p=torrents&pid=32") != -1){
		fTorrentsListado();
	}
	
	// Mostrar torrent individual
	if(location.href.search("p=torrents&pid=10&action=details&tid=") != -1){
		fTorrentIndividual();
	
	// Busqueda de torrents
	}else if(location.href.search("p=torrents&pid=10") != -1){
		fTorrentsBusqueda();
	}
	
	// Listado o busqueda de torrents
	if(location.href.indexOf("p=torrents") > -1){
		fImgRatios();
	}
	
	// Forum -> viendo hilo
	if(location.href.search(/p=forums&pid=[\d]+&fid=[\d]+&tid=[\d]+/gi) > -1){
		j("h3.posterInfo").css({"max-height":"205px"}); // Limita el alto del div de las medallas
	}
	
});

//https://hachede.me/?p=torrents&pid=10&sortOptions[sortBy]=added&sortOptions[sortOrder]=desc&page=2

/*###########		FUNCIONES INDICE		#########*/

function timeLog(texto){
	console.log("Tiempo de carga: "+(Date.now()-timeStart)+" "+texto);
}

function fInit(){
	//Reubicar "Top 10"
	j("#menu").find("li").eq(2).find("div").find("div").append("<a class='link ' href='"+site+"?p=topten&pid=24' original-title=''>Top 10</a>");
	j("#menu").find("li").eq(7).remove();
	
	//Comprimir contacto
	j("#menu").find("li").eq(7).addClass("nodrop").find("div").remove();
	j("#menu").find("li").eq(7).find("a").removeClass("drop");
	
	//Buscador en la barra superior
	j("#menu").append(searchEncabezado);
	searchInitialize("Encabezado");
	
	//link "Torrents" ya ordenados
	j("#menu").find("li").eq(2).find("a").first().attr("href", site+"?p=torrents&pid=10&sortOptions[sortBy]=added&sortOptions[sortOrder]=desc&page=1");
	
	// Para el historial de la barra de navegacion
    j('#history_link').click(function(){
        fDetectaHistorial();
    });
	
	// Mostrar nombre de script y version en la web
	j("#inner").find("fieldset").first().append("<span style='float: right;' original-title='' class='crust' itemscope='itemscope' itemtype='http://data-vocabulary.org/Breadcrumb'><a original-title='' href='"+site+"?p=forums&pid=11&fid=3&tid=3675' class='crumb' rel='up' itemprop='url'><span original-title='' itemprop='title'>Hachede Plus v"+version+"</span></a></span>");
}

function fHome(){
	// Para el Historial del panel de usuario de HOME (debajo del avatar)
	j('#logged').parent().delegate('span', 'click', function(){
		fDetectaHistorial();
	});
	
	//Cambia las img de los ratios
	fImgRatiosTorrentsRecientes();
}


function fNoHome(){
	//Ocultar Torrents Recientes Tipo 1
	j("#recentTorrentsHeader").hide();
	j("#recentTorrents").hide();
		
	//Ocultar Torrents Recientes Tipo 2
	if(j("#recentTorrents").length){
		j("#recentTorrents").parent().find("h4").find("img").each(function(){
			if(j(this).attr("rel") == "recentTorrents"){
				j(this).parent().hide();
			}
		});
	}
	j("#recentTorrents").hide();
}

function fTorrentsListado(){
	//Ampliando pagina
	j("#sidebar").remove();
	j("#content").removeClass("semiWidth");
	
	j("#search_torrent").before(searchNormal);
	j("#search_torrent").remove();
	searchInitialize("Normal");
}

function fTorrentsBusqueda(){
	if(j( "#show_error" ).length){
		//Busqueda sin resultados
		j("#show_error").after(searchNormal);
		searchInitialize("Normal");
		
	}else{
		//Busqueda normal
		j("#search_torrent").before(searchNormal);
		j("#search_torrent").remove();
		searchInitialize("Normal");
		searchLoadPages();
	}
}

function fTorrentIndividual(){
	//Visualizando un torrent
	j("#content").find("form:first").remove();
	j("#content").find("div.widget:first").remove();
	j("#content").before(searchNormal);
	searchInitialize("Normal");
}


/*###########		FUNCIONES ESPECIFICAS		#########*/

//Devuelve la cantidad de torrents de una busqueda
function searchTorrentsSize(){
	var n = 0;
	if(j("#content").find("div.torrent-box").length > 0){
		j("#content").find("div.torrent-box").each(function(){
			if(j(this).attr("id")){
				if(j(this).attr("id").search("torrent_") != -1)
					n++;
			}
		});
	}
	return n;
}

function searchLoadPages(){
	var nPaginas = j("#content").find("div.pagination").eq(0).find("a").length;
	nPaginas = nPaginas > 1 ? nPaginas-1 : 1;
	
	//Demasiados resultados
	if(nPaginas > PagToLoad){
		j("#searchNormal").append("<img src='"+imgWarning+"' title='"+searchWarnTooResults+"' style='cursor: pointer; vertical-align: middle; width: 30px;' onclick=\"alert('"+searchWarnTooResults+"')\">");
		return;
	}
	
	ordenarInitialize();
	var PagLoaded = 1;
	
	//Bucle de peticiones Ajax
	while(nPaginas > 1 && PagLoaded < PagToLoad && PagLoaded < nPaginas){
		var nextUrl = j("#content").find("div.pagination").eq(0).find("a").eq(PagLoaded).attr("href");
		var ajaxBusqueda = j.ajax({
					type: "GET",
					url: nextUrl
				});
		
		ajaxBusqueda.done(function( msg ) {
			//Añadir los torrents del ajax
			j(msg).find("div.torrent-box").each(function(index){
				if(j(this).attr("id")){		
					if(j(this).attr("id").search("torrent_") != -1){
						j(this).find("div.torrentDescription").remove();
						arrayTorrents.push(this);
					}
				}
			});
			
			//En la ultima peticion Ajax
			if(PagLoaded == nPaginas){
				j("#content").find("div.pagination").remove();
				//Meter los torrents al array
				j("#content").find("div.torrent-box").each(function(index){
					if(j(this).attr("id")){		
						if(j(this).attr("id").search("torrent_") != -1)
							arrayTorrents.push(this);
					}
				});
				
				// Debemos esperar a que termine la peticion ajax
				ordenar(sessionStorage.searchSortMode, sessionStorage.searchSortReverso, searchTorrentsSize());
			}
		});
		PagLoaded++;
	}
	
	if(nPaginas == 1){
		//Meter los torrents al array
		j("#content").find("div.torrent-box").each(function(index){
			if(j(this).attr("id")){		
				if(j(this).attr("id").search("torrent_") != -1)
					arrayTorrents.push(this);
			}
		});
		
		// Ordenar y mostrar
		ordenar(sessionStorage.searchSortMode, sessionStorage.searchSortReverso, searchTorrentsSize());
	}
	
	// Mostrar resultados de 10 en 10
	searchWindowsScrollBind();
}

function ordenarInitialize(){
	if(j("#content").find("#show_error").length) return;
	
	var botones = "<a id='ordenarNombre' href='#' rel='nombre'>"+imgSort+" A-Z</a> ";
	botones += "<a id='ordenarTamaño' href='#' rel='tamaño'>"+imgSort+" Tamaño</a> ";
	botones += "<a id='ordenarSeed' href='#' rel='seed'>"+imgSort+" Seed</a> ";
	j("#searchNormal").append(botones);
		
	//Botones ordenar
	j("#ordenarNombre, #ordenarTamaño, #ordenarSeed").click(function(e){
		e.preventDefault();
		var reverso = (j(this).attr("rel") == sessionStorage.searchSortMode) && sessionStorage.searchSortReverso == "false" ? "true" : "false";
			 
		ordenar(j(this).attr("rel"), reverso, searchTorrentsSize());
	});
}

function ordenar(modo, reverso, cantidad){
	
	arrayTorrents.sort(function(a, b){
		if(modo == "tamaño"){
			a = j(a).find("a[rel='torrent_size']").text();
			b = j(b).find("a[rel='torrent_size']").text();
			
			if(a.search("MB") != -1)
				a = parseFloat(a) / 1024;
			else
				a = parseFloat(a);
					
			if(b.search("MB") != -1)
				b = parseFloat(b) / 1024;
			else
				b = parseFloat(b);
				
		}else if(modo == "seed"){
			a = parseInt(j(a).find("a[rel='torrent_seeders']").text());
			b = parseInt(j(b).find("a[rel='torrent_seeders']").text());
		}else if(modo == "nombre"){
			a = j(a).find("a:first").text() > j(b).find("a:first").text() ? 1 : -1;
			b = 0;
		}
		
		if(reverso == "true"){
			var c = a;
			a = b;
			b = c;
		}
		return b - a;
	});
	
	//Borramos los torrents mostrados
	j("#content").find("div.torrent-box").remove();
	
	sessionStorage.setItem("searchSortMode", modo);
	sessionStorage.setItem("searchSortReverso", reverso);
	
	//Imprimir resultados ordenados	
	searchPrint();
}

function searchWindowsScrollBind(){
	j(window).scroll(function() {
		if((window.scrollY / window.scrollMaxY) > 0.8){ //posicion / tamaño > porcentaje
			searchPrint();
		}
	});
}

function searchPrint(){
	//TODO añadir comprobacion mostrado todo
	if(searchPrintWorking == 1)
		return;
	
	searchPrintWorking = 1;
	 var i = searchTorrentsSize();
	 var limit = i + 10;
	 
	while(i < limit && i < arrayTorrents.length){
		j("#content").append(arrayTorrents[i]);
		i++;
	}
	
	// Revisamos los ratios
	fImgRatios();
	searchPrintWorking = 0;
}

function searchInitialize(tipo){
	j("#search"+tipo).find("#keywords").focus();
	
	//Actualizando info del form
	if(sessionStorage.searchKeyword)
		j("#searchNormal").find("#keywords").val(sessionStorage.searchKeyword);
			
	if(sessionStorage.searchType)
		j("#searchNormal").find("#cat_content_tin").val(sessionStorage.searchType);
	
	// Detectando cambios
	j("#search"+tipo).find("#keywords").bind("keyup paste click", function(){
		searchCheck(j(this).parent());
	});
		
	j("#search"+tipo).find("#cat_content_tin").change(function(){
		searchCheck(j(this).parent());
	});
		
	//Envio form
	j("#search"+tipo).submit(function(){
		if(typeof(Storage) !== "undefined") {
			sessionStorage.setItem("searchKeyword", j(this).find("#keywords").val());
			sessionStorage.setItem("searchType", j(this).find("#cat_content_tin").val());
		}
	});
}

function searchCheck(elemento){
	searchAjaxContador++;
	setTimeout(function(){
		searchAjaxContador--;
		if(searchAjaxContador == 0)
			searchAjax(elemento);
	}, 1000);
}

function searchAjax(elemento){
	if(j(elemento).find("#keywords").val().length <= 2){
		if(j("#autoSearchTorrentResult").length)
			j("#autoSearchTorrentResult").remove();
		return;
	}
	
	logOutHref = j("#logout").attr("href");
	StrIni = logOutHref.lastIndexOf("=");
	securitytoken = logOutHref.substr(StrIni + 1);
	keywords = j(elemento).find("#keywords").val();
	cat_content_tin = j(elemento).find("#cat_content_tin").val();
	
	var ajax = j.ajax({
						type: "POST",
						url: "ajax.php",
						data: { 	action: "search_torrent",
									keywords: keywords,
									search_type: cat_content_tin,
									securitytoken: securitytoken
						}
					});
	
	ajax.done(function( msg ) {
		//Crear div resultados
		if(!j("#autoSearchTorrentResult").length)
			j(elemento).append("<div id='autoSearchTorrentResult' class='torrent-box'>");
		
		if(j(elemento).attr('id') == "searchEncabezado"){
			j("#autoSearchTorrentResult").css({"width":"620px", "position":"relative", "left":"-370px"});
		}
		
		if(msg != ""){
			j("#autoSearchTorrentResult").html(msg);
		}else{
			j("#autoSearchTorrentResult").html("Sin resultados");
		}
		
		j("#autoSearchTorrentResult").append("<img id='closeSearch' src='"+site+"styles/default/overlay/close.png' style='cursor: pointer; position: absolute; right: -10px; top: -10px;'>");
		
		j("#closeSearch").click(function(){
			j("#autoSearchTorrentResult").remove();
		});
		
		j('html').click(function() {
			j("#autoSearchTorrentResult").remove();
		});
	});
}

function fImgRatios(){
	// Descarga FREE
	j( "#content").find("img[title='FREE LEECH!'], img[original-title='FREE LEECH!']").each(function(){
		j(this).after("<div style='"+cssRatesIcon+"border: 1px solid rgb(2, 189, 4); background-color: green;'>↓ FREE</div>");
		j(this).remove();
	});
	
	// Descarga
	j( "#content").find("img[title^='Multiplicador de descarga:'], img[original-title^='Multiplicador de descarga:']" ).each(function(){
		var cantidad = -1;
		
		if(j(this).attr("title")){			
			cantidad = j(this).attr("title").match(/([0-9]+[\.0-9]{0,2})/g)[0];
		}else if(j(this).attr("original-title")){
			cantidad = j(this).attr("original-title").match(/([0-9]+[\.0-9]{0,2})/g)[0];
		}
		
		j(this).after("<div style='"+cssRatesIcon+"border: 1px solid rgb(2, 189, 4); background-color: green;'>↓ "+cantidad+"x</div>");
		j(this).remove();
	});
	
	// Subida
	j( "#content").find("img[title^='Multiplicador de subida:'], img[original-title^='Multiplicador de subida:']" ).each(function(){
		var cantidad = -1;
		
		if(j(this).attr("title")){			
			cantidad = j(this).attr("title").match(/([0-9]+[\.0-9]{0,2})/g)[0];
		}else if(j(this).attr("original-title")){
			cantidad = j(this).attr("original-title").match(/([0-9]+[\.0-9]{0,2})/g)[0];
		}
		
		j(this).after("<div style='"+cssRatesIcon+"border: 1px solid rgb(0, 66, 255); background-color: rgb(26, 26, 206);'>↑ "+cantidad+"x</div>");
		j(this).remove();
	});
}

function fImgRatiosTorrentsRecientes(){
	/* Cambia las bajadas FREE*/
	j( "#recentTorrents").find(".scrollable" ).find(".items").find(".widthoutSidebar, .widthSidebar").find("img[alt*='FREE LEECH!']").closest("img").each(function(){
        var origTitle = $(this).attr("original-title");
		$(this).attr("original-title", origTitle.replace("<img src='https://hachede.me/styles/default/torrents/torrent_free.png' alt='' title='FREE LEECH!' class='middle' id='' rel='resized_by_tsue' />", "<div style='"+cssRatesIcon+"border: 1px solid rgb(2, 189, 4); background-color: green;'>↓ FREE</div>"));
	});
    
    /* Cambia el resto de bajadas*/
	j( "#recentTorrents").find(".scrollable" ).find(".items").find(".widthoutSidebar, .widthSidebar").find("img[alt*='Multiplicador de descarga:']").closest("img").each(function(){        
        var cantidad = -1;
		var origTitle = $(this).attr("original-title");        
        var index = origTitle.indexOf("Multiplicador de descarga:");
        cantidad = origTitle.substring(index + 27, index + 30);
		$(this).attr("original-title", origTitle.replace("<img src='https://hachede.me/styles/default/torrents/torrent_free.png' alt='' title='Multiplicador de descarga: " + cantidad + "' class='middle' id='' rel='resized_by_tsue' />", "<div style='"+cssRatesIcon+"border: 1px solid rgb(2, 189, 4); background-color: green;'>↓ " + cantidad +"x</div>"));
	});
	
	/* Cambia las subidas */
	j( "#recentTorrents").find(".scrollable" ).find(".items").find(".widthoutSidebar, .widthSidebar").find("img[alt*='Multiplicador de subida:']").closest("img").each(function(){
		var cantidad = -1;
		var origTitle = $(this).attr("original-title");        
        var index = origTitle.indexOf("Multiplicador de subida:");
        cantidad = origTitle.substring(index + 25, index + 28);
        cantidad = cantidad.match(/([0-9]+[\.0-9]{0,2})/g)[0]; // Por el 2x
		$(this).attr("original-title", origTitle.replace("<img src='https://hachede.me/styles/default/torrents/torrent_multiple_upload.png' alt='' title='Multiplicador de subida: " + cantidad + "' class='middle' id='' rel='resized_by_tsue' />", "<div style='"+cssRatesIcon+"border: 1px solid rgb(0, 66, 255); background-color: rgb(26, 26, 206);'>↑ "+cantidad+"x</div>"));
	});
}

// Funciones auxiliares del Historial

//Espera a que aparezca la ventana del Historial
function fDetectaHistorial(){       
    if (j('#overlay').find('.overlay_header:visible').length > 0) {
        fDetectaPestActiva();
    }
    else{
        setTimeout(function() {
            fDetectaHistorial();
        }, 10);
    }
}

//Detecta la pestaña activa en el Historial
function fDetectaPestActiva(){ 
    j('a[href="#active_torrents').click(function(){        
        tipoHistorialActual = tipoHistorial.Activos;
        fOrdenarTorrents( "Inicio" );
    });
    j('a[href="#inactive_torrents').click(function(){ 
        tipoHistorialActual = tipoHistorial.Inactivos;
        fOrdenarTorrents( "Inicio" );
    });
    
    if (j('a[href="#active_torrents').attr('class') == "current") { 
      tipoHistorialActual = tipoHistorial.Activos;
      fGuardaHistorial();
    }   

   // HACE FALTA ESTA? Empieza siempre en activos? Se deja hasta prueba.
    if (j('a[href="#inactive_torrents').attr('class') == "current") { 
         tipoHistorialActual = tipoHistorial.Inactivos;
         fGuardaHistorial();
    }
    j('.subHeader:contains("' + ordenHistorialActualNombre + '")').append(" (↓ Desc.)");
    j('.subHeader:contains("' + ordenHistorialActualNombre + '")').css({"background":"#F5A04C"});
}

//Guarda el Historial
function fGuardaHistorial(){    
   j('#overlay').find('tr.trRow:visible').each(function(){
       if(tipoHistorialActual == tipoHistorial.Activos) arrayTorrentsActivos.push(this);
       else arrayTorrentsInactivos.push(this);
   });
    
   j('#overlay').find('tr.trRow:hidden').each(function(){
       if(tipoHistorialActual == tipoHistorial.Activos) arrayTorrentsInactivos.push(this);
       else arrayTorrentsActivos.push(this);
   });
    
    arrayTorrentsActivosOriginal = arrayTorrentsActivos.slice();
    arrayTorrentsInactivosOriginal = arrayTorrentsInactivos.slice();   
    fHistorialClickable();
}

// Habilita la opcion de ordenar el Historial
function fHistorialClickable(){
    j('th.subHeader').css( 'cursor', 'pointer' );
    j('th.subHeader').click(function(){
        if(j(this).text() == "Activos") j(this).css( 'cursor', 'default' );
        else fOrdenarTorrents( j(this).text() );
    });
	
    //NUEVO
     j('div.overlay_text').attr("style", "height: " + (j( window ).height() - 200) + "px; with: " + (j( window ).width() - 200) +  "px;");
}

// Ordena los torrents del Historial actualmente visibles en funcion del tipo de orden elegido.
function fOrdenarTorrents( tipoOrden ){
    var array;
    if (tipoHistorialActual == tipoHistorial.Activos)  array = arrayTorrentsActivos;
    else array = arrayTorrentsInactivos;
    
    // Para quitar las flechas anteriores
    var separators = [" \\(\\↑ Asc\\.\\)"," \\(\\↓ Desc\\.\\)"];
    tipoOrden = tipoOrden.split(new RegExp(separators.join('|'), 'g'))[0];       
    j('.subHeader:contains("' + ordenHistorialActualNombre + '")').html(j('.subHeader:contains("' + ordenHistorialActualNombre + '")').text().split(new RegExp(separators.join('|'), 'g'))[0]);
    j('.subHeader:contains("' + ordenHistorialActualNombre + '")').css({"background":"#E47600"});
    
    if(tipoOrden.indexOf("Nombre del Torrent") >= 0){
        if(ordenHistorialActualNombre == "Nombre del Torrent"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
            }); 
        }
    }
    else if(tipoOrden.indexOf("Tamaño") >= 0){
        if(ordenHistorialActualNombre == "Tamaño"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                a = j( a ).find('td.secondRow, td.firstRow').eq(1).text();
                b = j( b ).find('td.secondRow, td.firstRow').eq(1).text();
                a = fCalculaTB(a);
                b = fCalculaTB(b); 
                if ((b - a) === 0) return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
                else return b - a;
            });
        }
    }
    else if(tipoOrden.indexOf("Seeders") >= 0){        
       if(ordenHistorialActualNombre == "Seeders"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                var aux = j( b ).find('td.secondRow, td.firstRow').eq(2).text() - j( a ).find('td.secondRow, td.firstRow').eq(2).text();
                if(aux === 0) return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
                else return aux;
            });
        }
    }
    else if(tipoOrden.indexOf("Leechers") >= 0){
        if(ordenHistorialActualNombre == "Leechers"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                var aux = j( b ).find('td.secondRow, td.firstRow').eq(3).text() - j( a ).find('td.secondRow, td.firstRow').eq(3).text();
                if(aux === 0) return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
                else return aux;
            });   
        }
    }
    else if(tipoOrden.indexOf("Descargado") >= 0){
        if(ordenHistorialActualNombre == "Descargado"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                a = j( a ).find('td.secondRow, td.firstRow').eq(4).html().split("<br>")[0];
                b = j( b ).find('td.secondRow, td.firstRow').eq(4).html().split("<br>")[0];

                a = fCalculaTB(a);
                b = fCalculaTB(b); 

                if ((b - a) == 0) return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
                else return b - a;
            });
        }
    }
    else if(tipoOrden.indexOf("Subido") >= 0){
        if(ordenHistorialActualNombre == "Subido"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                a = j( a ).find('td.secondRow, td.firstRow').eq(5).html().split("<br>")[0];
                b = j( b ).find('td.secondRow, td.firstRow').eq(5).html().split("<br>")[0];

                a = fCalculaTB(a);
                b = fCalculaTB(b); 

                if ((b - a) == 0) return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
                else return b - a;
            });
        }
    }
    else if(tipoOrden.indexOf("Ratio") >= 0){
        if(ordenHistorialActualNombre == "Ratio"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                var aux = j( b ).find('td.secondRow, td.firstRow').eq(6).text() - j( a ).find('td.secondRow, td.firstRow').eq(6).text();
                if(aux == 0) return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
                else return aux;
            });   
        }
    }
    else if(tipoOrden.indexOf("Announce (Tiempo Semilla)") >= 0){
        if(ordenHistorialActualNombre == "Announce (Tiempo Semilla)"){
            fOrdenInversoHistorial(array);
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
            array.sort(function(a, b){
                var aux = parseInt(j( b ).find('td.secondRow, td.firstRow').find('.small').text()) - parseInt(j( a ).find('td.secondRow, td.firstRow').find('.small').text());
                if(aux == 0) return j(a).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase().localeCompare(j(b).find('td.secondRow, td.firstRow').eq(0).text().toUpperCase());
                else return aux;
            });   
        }
    }
    else if(tipoOrden.indexOf("Actualización") >= 0){
        if(tipoHistorialActual == tipoHistorial.Activos) array = arrayTorrentsActivosOriginal.slice();
        else array = arrayTorrentsInactivosOriginal.slice();
            
        if(ordenHistorialActualNombre == "Actualización"){            
            if(ordenHistorialActualTipo === 0){
                fOrdenInversoHistorial(array);
            }
            else{
                j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
                ordenHistorialActualTipo = 0;
            }
        }
        else{
            j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
            ordenHistorialActualTipo = 0;
        }
    }
    else if(tipoOrden.indexOf("Inicio") >= 0){
        tipoOrden = "Actualización";
        j('.subHeader:contains("' + tipoOrden + '")').append(" (↓ Desc.)");
        ordenHistorialActualTipo = 0;
        if(tipoHistorialActual == tipoHistorial.Activos) array = arrayTorrentsActivosOriginal.slice();
        else array = arrayTorrentsInactivosOriginal.slice();
    }   
    
    j('.subHeader:contains("' + tipoOrden + '")').css({"background":"#F5A04C"});
    ordenHistorialActualNombre = tipoOrden;
    fImprimirHistorial(array);
}

// Imprime el Historial visible
function fImprimirHistorial(array){
   var color = 0;
    j('#overlay').find('tr.trRow:visible').remove();
    for(var i = 0; i < array.length; i++){
        if(color == 0){
            j(array[i]).find('td.secondRow, td.firstRow').each(function(){
                j(this).attr("class", "secondRow");
            });
            color = 1;
        }
        else{
            j(array[i]).find('td.secondRow, td.firstRow').each(function(){
                j(this).attr("class", "firstRow");
            });
            color = 0;
        }
        j('#overlay').find('tr:visible').parent().append(array[i]);
    }   
}

// Calcula el espacio en TB
function fCalculaTB(elem){  
    if(elem.indexOf("KB") != -1)
        elem = parseFloat(elem) / 1024 / 1024 / 1024;
    else if(elem.search("MB") != -1)
        elem = parseFloat(elem) / 1024 / 1024;
    else if (elem.search("GB") != -1)
        elem = parseFloat(elem) / 1024;
    else
        elem = parseFloat(elem)    
    return elem;
}

// Invierte el orden y la flecha en el Historial
function fOrdenInversoHistorial(array){    
    if(ordenHistorialActualTipo == 0){
        j('.subHeader:contains("' + ordenHistorialActualNombre + '")').append(" (↑ Asc.)");     
        ordenHistorialActualTipo = 1;
    }
    else{
        j('.subHeader:contains("' + ordenHistorialActualNombre + '")').append(" (↓ Desc.)");
        ordenHistorialActualTipo = 0;
    }   
    j('.subHeader:contains("' + ordenHistorialActualNombre + '")').css({"background":"#F5A04C"});
    array.reverse();
}

timeLog(" final");