Proxer Remember

Schnellauswahl für den letzten Manga und Anime

Du musst eine Erweiterung wie Tampermonkey, Greasemonkey oder Violentmonkey installieren, um dieses Skript zu installieren.

Um dieses Skript zu installieren, müssen Sie eine Erweiterung wie Tampermonkey oder Violentmonkey installieren.

Um dieses Skript zu installieren, müssen Sie eine Erweiterung wie Tampermonkey oder Violentmonkey installieren.

Um dieses Skript zu installieren, müssen Sie eine Erweiterung wie Tampermonkey oder Userscripts installieren.

Um dieses Skript zu installieren, müssen Sie eine Erweiterung wie Tampermonkey installieren.

Sie müssten eine Skript Manager Erweiterung installieren damit sie dieses Skript installieren können

(Ich habe schon ein Skript Manager, Lass mich es installieren!)

Um dieses Design zu installieren, müssen Sie eine Erweiterung wie Stylus installieren.

Um dieses Design zu installieren, müssen Sie eine Erweiterung wie Stylus installieren.

Um dieses Design zu installieren, müssen Sie eine Erweiterung wie Stylus installieren.

Um diesen Stil zu installieren, müssen Sie eine Erweiterung für den Benutzerstil Verwaltung installieren.

Um diesen Stil zu installieren, müssen Sie eine Erweiterung für den Benutzerstil Verwaltung installieren.

Um diesen Stil zu installieren, müssen Sie eine Erweiterung für den Benutzerstil Verwaltung installieren.

(Ich habe bereits einen Benutzerstil Verwaltung, ich möchte ihn installieren!)

// ==UserScript==
// @name         Proxer Remember
// @namespace    https://greasyfork.org/de/users/83349-deimos
// @version      0.25
// @description  Schnellauswahl für den letzten Manga und Anime
// @author       Deimos
// @include      http://proxer.me/*
// @include      https://proxer.me/*
// @include      http://www.proxer.me/*
// @include      https://www.proxer.me/*        
// @grant        none
// @run-at       document-start
// ==/UserScript==

var typ ="AM"; //A: Animeserie    M: Mangaserie
document.addEventListener('DOMContentLoaded', function(event) {
    var ul = document.getElementById("leftNav");
    var li = document.createElement("li");
    li.setAttribute("class","topmenu");
    li.setAttribute("id","RememberNav");
    li.addEventListener("mouseover",  open);
    ul.appendChild(li);
    document.getElementById("RememberNav").innerHTML = '<a href="javascript:;">Lesezeichen ▾</a><ul id="RememberUl"></ul>';
    addElement("A:","RememberA");
    addElement("M:","RememberM" );
});

function addElement(name,id)
{
    var ul = document.getElementById("RememberUl");
    var element = document.createElement("li");
    element.setAttribute("id",id);
    element.innerHTML = '<a href="javascript:;">'+name+'</a>';
    ul.appendChild(element);
}

function generate_function()
{
    switch(typ)
    {
        case "A":
            return function(){find("Animeserie");}; 
        case "M":
            return function(){find("Mangaserie");};
        case "AM":
            return function(){find("Animeserie");find("Mangaserie"); if(typ !== ""){open(null,2);} typ="FIN";};
        default:
            return false;
    }
}

function open(event,page=1) //öffnet Chronik
{
    var temp_find = generate_function(); 
    typ = "";
    
    if(temp_find === false)
        return;  //Ende des Scripts

    if(page==1)
        document.getElementById("RememberNav").removeEventListener("mouseover",  open);

    var url = "";
    if(window.location.origin.includes("https"))
        url = "https://proxer.me/ucp?s=history&p="+page+"#top";
    else
        url = "http://proxer.me/ucp?s=history&p="+page+"#top";

    if (window.XMLHttpRequest) // AJAX nutzen mit IE7+, Chrome, Firefox, Safari, Opera
        xmlhttp=new XMLHttpRequest();
    else // AJAX mit IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
            if(xmlhttp.responseText[0] == "<")
            {
                temp_find();
            }    
        }   
    };
    xmlhttp.open("GET",url);
    xmlhttp.send();
}

function find(medium) //Sucht Medium
{
    var doc = xmlhttp.responseText;
    var p = doc.indexOf(medium);
    if(p == -1 || p=== 0)//Medium ist auf aktueller Chronikseite nicht vorhanden
    {
        typ+=medium[0];
        return;
    }
    doc = doc.slice(p-90);
    var name = doc.slice(doc.indexOf(">")+1,doc.indexOf("<"));

    doc = doc.slice(doc.indexOf("<td>")+4);
    var episode = doc.slice(0,doc.indexOf("</td>"));

    var href = doc.slice(doc.indexOf("<a")+9);
    href = href.slice(0,href.indexOf('"'));

    var member_name = medium[0]+": "+ name+" Ep. "+episode;

    document.getElementById("Remember"+medium[0]).innerHTML = '<a href='+href+'>'+member_name+'</a>';
}