Groups Manga, Adds Cover image, Adds button to hide read chapters
// ==UserScript==
// @name Better Follows Tab - mangadex
// @namespace Violentmonkey Scripts
// @match https://mangadex.org/follows*
// @grant none
// @version 1.1
// @author Slub77
// @description Groups Manga, Adds Cover image, Adds button to hide read chapters
// ==/UserScript==
window.imgError = function(image) {
var MangaID = $(image).data("samid")
var ImgTry = $(image).data("imgtype")
image.onerror = "";
if(ImgTry == "gif") { ImgTry = "jpeg"; }
else if(ImgTry == "jpeg") { ImgTry = "png"; }
else if(ImgTry == "png") { ImgTry = "jpg"; }
$(image).replaceWith("<img src='https://mangadex.org/images/manga/"+MangaID+"."+ImgTry+"?' data-imgtype='"+ImgTry+"' data-samid='"+MangaID+"' class='samimg' style='width:100px;height:auto;;margin-left:auto;margin-right:auto' onerror='imgError(this);'>")
return true;
}
function AddImages() {
$("a.manga_title.text-truncate").each(function() {
var MangaID = $(this).attr("href").split("/")
$(this).prepend("<img src='https://mangadex.org/images/manga/"+MangaID[2]+".gif?' data-imgtype='gif' data-samid='"+MangaID[2]+"' class='samimg' style='width:100px;height:auto;margin-left:auto;margin-right:auto' onerror='imgError(this);'>")
})
}
function MergeChapterRows() {
var NotFirstRow = false
var LastRealChapter = false;
var MangaTitles = {}
$(".chapter-container > .row.no-gutters").each(function() {
if(!NotFirstRow) { NotFirstRow = true}
else {
var MangaTrack = $($(this).find(".col-md-9 > div")[0]).data("manga-id")
if(MangaTitles[MangaTrack] == undefined) {
MangaTitles[MangaTrack] = $(this).find(".col-md-9")[0]
$(this).find(".col-md-9 > div").removeClass("border-bottom")
}
else {
var ChildChapter = $(this).find(".col-md-9 > div")
$(ChildChapter).detach().appendTo(MangaTitles[MangaTrack]).removeClass("border-bottom");
$(this).remove();
}
}
})
$(".chapter-container > .row.no-gutters .col-md-9 > div:first-child").each(function() {
$(this).css("border-top","1px solid rgba(0, 0, 0, 0.875)")
})
AddImages()
}
$( document ).ready(function() {
MergeChapterRows()
$("body").append('<div style="position: fixed; bottom: 10px; right: 50px; overflow-y: auto; border: solid 2px; border-radius: 10px; background-color: #1c1f23; padding: 10px; text-align: center;border-color:white;"><button style="background-color: #1c1f23; color: white; border-radius: 5px; border: solid 1px; padding: 4px;cursor:pointer;display: flex; justify-content: center; align-items: center;" onclick="HideReadSam()"> Toggle Read </button></div>')
});
window.SamHideToggle = true;
window.HideReadSam = function() {
if(SamHideToggle) {
$(".chapter-row.no-gutters span.fa-eye").parent().parent().parent().attr('style','display:none !important');
SamHideToggle = false;
}
else {
$(".chapter-row.no-gutters span.fa-eye").parent().parent().parent().attr('style','display:flex !important');
SamHideToggle = true;
}
}