NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript==
// @name Hachede Plus En Peligro
// @namespace hachedePlus
// @description Addon para +Hachede
// @icon https://hachede.me/favicon.ico?lv=2.2
// @include https://hachede.me/*
// @include http://hachede.me/*
// @version 15.2
// @date 26/01/2018
// @author darkvier & WirnCael
// @license Apache-2.0
// @grant none
// @require https://code.jquery.com/jquery-2.2.2.js
// @priority 1
// @run-at document-end
// @updateURL https://openuserjs.org/meta/darkvier/Hachede_Plus.meta.js
// @downloadURL https://openuserjs.org/install/darkvier/Hachede_Plus.user.js
// ==/UserScript==
var timeStart = Date.now();
var j = jQuery.noConflict(true);
var site = location.href.match(/http[s]{0,1}:\/\/[a-z0-9\.]{4,}\//gi)[0];
var searchAjaxContador = 0;
var cssRatesIcon = "display: inline-block; height: 12px; font-size: 10px;" +
"line-height: 1; padding: 3px; margin: 0px 2px;";
// Variables del Historial
var tipoHistorial = {
Activos: 0,
Inactivos: 1
};
var tipoHistorialActual = 0;
var ordenHistorialActualTipo = 1; // 0 down, 1 up
var ordenHistorialActualNombre = "Actualización";
var arrayTorrentsActivos = [];
var arrayTorrentsInactivos = [];
var arrayTorrentsActivosOriginal = [];
var arrayTorrentsInactivosOriginal = [];
/*########### 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
}
});
/*########### 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);
fBusquedaEventos("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;' 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" + GM_info.script.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 fBusquedaNormalInsertar() {
// Eliminando HTML busqueda viejo
j("#search_torrent").remove(); // Form busqueda
j("#recentTorrentGenres").parent().remove(); // Form Generos
j("#displayOptions").parent().parent().remove(); // Form orden
// Insertar HTML busqueda nuevo
if (j("#refreshDonateUs").length > 0) { //si esta el div donaciones
j("#refreshDonateUs").after(searchNormal);
}
else {
j("#content").prepend(searchNormal);
}
// Actualizar el form busqueda con los parametros de la URL
var datos = location.href.split("&");
for (var i = 0; i < datos.length; i++) {
var param = datos[i].split("="); //[0] nombre, [1] valor
switch (param[0]) {
case "keywords":
{
var txt = decodeURI(param[1]).replace(/\+/g, " ");
j("#searchNormal").find("input[name='keywords']").val(txt);
break;
}
case "search_type":
{
j("#searchNormal").find("select[name='search_type']").val(decodeURI(param[1]));
break;
}
case "sortOptions[sortBy]":
{
j("#searchNormal").find("select[name='sortOptions[sortBy]']").val(decodeURI(param[1]));
break;
}
case "sortOptions[sortOrder]":
{
j("#searchNormal").find("select[name='sortOptions[sortOrder]']").val(decodeURI(param[1]));
break;
}
case "genre":
{
j("#searchNormal").find("select[name='genre']").val(decodeURI(param[1]));
break;
}
}
}
}
function fTorrentsListado() {
//j("div.torrentDescription").remove();
//Ampliando pagina
j("#sidebar").remove();
j("#content").removeClass("semiWidth");
fBusquedaNormalInsertar();
fBusquedaEventos("Normal");
}
function fTorrentsBusqueda() {
//j("div.torrentDescription").remove();
fBusquedaNormalInsertar();
fBusquedaEventos("Normal");
}
function fTorrentIndividual() {
//Visualizando un torrent
j("#displayOptions").parent().parent().remove(); //borrar recuadro orden busqueda
}
/*########### FUNCIONES ESPECIFICAS #########*/
function fBusquedaEventos(tipo) {
var searchKeyword = j("#search" + tipo).find("input[name='keywords']");
j(searchKeyword).focus();
// Detecta cambios en searchKeyword y lanza autocompletado
var keywordsOld = j(searchKeyword).val();
setInterval(function () {
if (keywordsOld != j(searchKeyword).val()) {
searchCheck(j(searchKeyword).parent());
}
keywordsOld = j(searchKeyword).val();
}, 1000);
}
// Filtra las pulsaciones de teclado para reducir las llamadas ajax
function searchCheck(elemento) {
searchAjaxContador++;
setTimeout(function () {
searchAjaxContador--;
if (searchAjaxContador === 0)
searchAjax(elemento);
}, 1000);
}
function searchAjax(elemento) {
// Solo se busca si hay mas de 2 caracteres escritos
var keywords = j(elemento).find("input[name='keywords']").val();
if (keywords.length <= 2) {
if (j("#autoSearchTorrentResult").length)
j("#autoSearchTorrentResult").remove();
return;
}
// Datos para realizar el ajax
var logOutHref = j("#logout").attr("href");
var StrIni = logOutHref.lastIndexOf("=");
var securitytoken = logOutHref.substr(StrIni + 1);
var ajax = j.ajax({
type: "POST",
url: "ajax.php",
data: {
action: "search_torrent",
keywords: keywords,
search_type: "name",
securitytoken: securitytoken
}
});
// Cuando carga completamente el ajax
ajax.done(function (msg) {
//Crear div emergente resultados
if (!j("#autoSearchTorrentResult").length) {
if (j(elemento).attr('id') === "searchEncabezado") {
j(elemento).append("<div id='autoSearchTorrentResult' class='torrent-box' " +
"style='max-width: 620px; position: relative; display: inline-block; " +
"box-shadow: 8px 8px 9px rgb(136, 136, 136); min-width: 220px !important;'>");
}
else {
j(elemento).append("<div id='autoSearchTorrentResult' class='torrent-box' " +
"style='box-shadow: 8px 8px 9px rgb(136, 136, 136); min-width: 220px;'>");
}
}
// Si se han encontrado resultados
if (msg.length != 0) {
j("#autoSearchTorrentResult").html(msg).removeClass("error");
}
else {
j("#autoSearchTorrentResult").html("Error! No se han encontrado torrents")
.addClass("error").css({
"border-top": "1px solid rgb(229, 153, 170) !important;"
});
}
// Añadir Icono & crear eventos para cerrar ventana 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();
});
// Posicion horizontal div segun contenido
if (j(elemento).attr('id') === "searchEncabezado") {
var right = j("#autoSearchTorrentResult").width() - (j(elemento).width() + 20);
j("#autoSearchTorrentResult").css({
"right": right + "px"
})
}
});
}
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 0.X
j("#content").find("img[title^='Multiplicador de descarga:'], img[original-title^='Multiplicador de descarga:']")
.each(function () {
var cantidad = "?";
if (j(this).attr("title") && j(this).attr("title").search(/([0-9]+[\\.0-9]{0,2})/g) !== -1) {
cantidad = j(this).attr("title").match(/([0-9]+[\.0-9]{0,2})/g)[0];
}
else if (j(this).attr("original-title") && j(this).attr("original-title")
.search(/([0-9]+[\\.0-9]{0,2})/g) !== -1) {
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 1.X | 2
j("#content")
.find("img[title^='Multiplicador de subida:'], img[original-title^='Multiplicador de subida:']")
.each(function () {
var cantidad = "?";
if (j(this).attr("title") && j(this).attr("title").search(/([0-9]+[\\.0-9]{0,2})/g) !== -1) {
cantidad = j(this).attr("title").match(/([0-9]+[\.0-9]{0,2})/g)[0];
}
else if (j(this).attr("original-title") && j(this).attr("original-title")
.search(/([0-9]+[\\.0-9]{0,2})/g) !== -1) {
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() {
arrayTorrentsActivos = [];
arrayTorrentsInactivos = [];
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();
if (tipoHistorialActual === tipoHistorial.Activos) fImprimirHistorial(arrayTorrentsActivos);
else fImprimirHistorial(arrayTorrentsInactivos);
}
// 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());
});
//Tamaño ventana
j('div.overlay_text').attr("style", "max-height: " + (j(window).height() - 200) +
"px; max-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;
}
fCalculaEnPeligro(array[i]);
j('#overlay').find('tr:visible').parent().append(array[i]);
}
}
// Comprueba el ratio y el tiempo de semilla minimo exigido
function fCalculaEnPeligro(actual) {
var ratio = parseInt(j(actual).find('td.secondRow, td.firstRow').eq(6).find('.ratioBad, .ratioGood, .ratioNull').text());
var tiempoSemilla = j(actual).find('td.secondRow, td.firstRow').find('.small').eq(0).text();
// Parseamos el tiempo de semilla
tiempoSemilla = parseInt(tiempoSemilla.substring(1, tiempoSemilla.indexOf(" horas")));
if (ratio < 1 && tiempoSemilla < 72) {
j(actual).find('td.secondRow, td.firstRow').css("background", "#ff8080");
j(actual).find('td.secondRow a, td.firstRow a').css("color", "#804d00");
j(actual).find('td.secondRow, td.firstRow').css("color", "#000000");
}
}
// 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");
/*########### VARIABLES LARGAS #########*/
var searchEncabezado = "<form id='searchEncabezado'" +
" style='float: right; height: 41px; width: 161px;' action='" + site + "' method='get'>" +
" <input type='hidden' name='p' value='torrents'>" +
" <input type='hidden' name='pid' value='10'>" +
" <input type='hidden' name='search_type' value='name'>" +
" <input type='text' placeholder='nombre del torrent...' name='keywords'" +
" style='border-radius:7px; margin-top:10px; padding:2px; width:151px !important;'></form>";
var searchNormal = "<form id='searchNormal' method='get' action='" + site + "' " +
" style='margin-top: 5px; display: inline-block;' class='torrent-box'>" +
" <input type='hidden' original-title='' class='' name='p' value='torrents'>" +
" <input type='hidden' original-title='' class='' name='pid' value='10'>" +
" <input type='text' original-title='' style='margin-right: 10px;width: 200px !important;'" +
" name='keywords' class='s' placeholder='palabra a buscar...'>" +
" <select class='' style='margin-right: 10px; height: 28px;' name='search_type'" +
" id='cat_content_tin' original-title=''>" +
" <option value='name'>en el nombre</option>" +
" <option value='description'>en la descripción</option>" +
" <option selected='selected' value='both'>en el nombre y la descripción</option>" +
" <option value='uploader'>por Uploader</option>" +
" </select>" +
" <select original-title='' class='' id='' name='sortOptions[sortBy]'" +
" style='margin-right: 10px; height: 28px;'>" +
" <option selected='selected' value='added'>Fecha añadido</option>" +
" <option value='seeders'>Seeders</option>" +
" <option value='leechers'>Leechers</option>" +
" <option value='size'>Tamaño</option>" +
" <option value='times_completed'>Completado</option>" +
" </select>" +
" <select original-title='' class='' id='' name='sortOptions[sortOrder]'" +
" style='margin-right: 10px; height: 28px;'>" +
" <option selected='selected' value='desc'>Descendente</option>" +
" <option value='asc'>Ascendente</option>" +
" </select>" +
" <select id='genre' name='genre' style='margin-right: 10px; height: 28px;'>" +
" <option selected='selected' value=''>Todos</option><option value='3De'>3De</option>" +
" <option value='Acción'>Acción</option><option value='Aventuras'>Aventuras</option>" +
" <option value='Bélico'>Bélico</option><option value='Ciencia_Ficción'>Ciencia_Ficción</option>" +
" <option value='Clásico'>Clásico</option><option value='Comedia'>Comedia</option>" +
" <option value='Crimen'>Crimen</option><option value='Deportes'>Deportes</option>" +
" <option value='Documental'>Documental</option><option value='Drama'>Drama</option>" +
" <option value='Estrenos'>Estrenos</option><option value='Familiar'>Familiar</option>" +
" <option value='Fantástico'>Fantástico</option><option value='Historico'>Historico</option>" +
" <option value='Infantil'>Infantil</option><option value='Megapack'>Megapack</option>" +
" <option value='Misterio'>Misterio</option><option value='Moderno'>Moderno</option>" +
" <option value='Musical'>Musical</option><option value='Policíaco'>Policíaco</option>" +
" <option value='Reciente'>Reciente</option><option value='Romántico'>Romántico</option>" +
" <option value='Teatro'>Teatro</option><option value='Terror'>Terror</option>" +
" <option value='Thriller'>Thriller</option><option value='Western'>Western</option>" +
" <option value='XXX'>XXX</option>" +
" </select>" +
" <input type='submit' value='Buscar' class='submit' style='height: 32px; width: 115px;'>" +
"</form>";