// ==UserScript==
// @name Batoto MyFollows
// @include http://www.batoto.net/*
// @include http://www.mangaupdates.com/series.html?*
// @include https://www.mangaupdates.com/series.html?*
// @version 14.04.10.3
// @description Enhancement for batoto.net
// @namespace https://greasyfork.org/users/168
// @downloadURL none
// ==/UserScript==
var timeI = Date.now();
//Batoto site
function myfollows(table) {
var rows = document.getElementsByClassName("ipb_table chapters_list")[table].getElementsByTagName("a");
for (var current, e = 1; e < rows.length ; e = e + 2) {
current = rows[e].textContent.trim();
if (follows.indexOf(current) != -1) {
row = document.getElementById("comic_search_results").getElementsByClassName("ipb_table chapters_list")[table].getElementsByTagName("tr")[e];
rows[e].insertBefore(icon.cloneNode(), rows[e].firstChild.nextSibling);
found.push(row);
if (document.getElementById("exclude_follows").checked) {
row.hide();
row.nextSibling.nextSibling.hide();
}
}
}
page = page + 1;
try {
document.getElementById("show_more_row").getElementsByTagName("input")[0].onclick = function() {
update_comic_search('comic_search_form', true, page - 1);
var checking = setInterval(function() {
if (document.getElementById("ajax_loading").style.display == "none") {
clearInterval(checking);
myfollows(table+1);
}
}, 50);
};
} catch(er){}
}
function show_follows_info(zEvent) {
var t = this;
var divid = this.getAttribute("cId");
if ($('cId_'+divid).visible()) {
Effect.SlideUp('cId_'+divid, {duration: 0.2});
} else if ($('cId_'+divid).innerHTML != "") {
Effect.SlideDown('cId_'+divid, {duration: 0.2});
} else {
new Ajax.Updater('cId_'+divid, ipb.vars['home_url']+'/comic_pop', {
parameters: { id: divid },
method: 'get',
onSuccess: function () {
if (blood) {
setTimeout(function() {
if (t.parentNode.parentNode.getAttribute("class") == "row1") {
$('cId_'+divid).firstChild.nextSibling.style.background = "rgba(0,0,0,0.8)";
}
else {
$('cId_'+divid).firstChild.nextSibling.style.background = "white";
}
},25);
}
setTimeout(function() {
new Effect.SlideDown('cId_'+divid, {duration: 0.2});
},50);
}
});
}
}
function defineIcon() {
icon = document.createElement("img");
icon.src = "http://www.batoto.net/forums/public/style_images/master/star.png";
icon.alt = "fIcon";
icon.title = "Following";
icon.style.verticalAlign = "top";
}
var url = document.URL;
if (url.indexOf("http://www.batoto.net/") !=-1) {
//Check if using Blood Theme
if (ipb.vars['img_url'] == "http://www.batoto.net/forums/public/style_images/Blood_Images") {
var blood = true;
// if you are, hides top bar when scrolling down
document.getElementById("branding").style.position = "absolute";
}
//HomePage: Add icon next to comic titles meaning they are in your follows's list
if (url == "http://www.batoto.net/" || url.indexOf("http://www.batoto.net/?p=") == 0) {
var row,
comic,
icon,
rowI = 1,
rowSl = "comic_row_1",
follows = JSON.parse(localStorage.follow_list);
defineIcon();
while (document.getElementById(rowSl)) {
row = document.getElementById(rowSl).parentNode;
comic = row.getElementsByTagName("a")[1].textContent;
if (follows.indexOf(comic) != -1) {
row.insertBefore(icon.cloneNode(),row.childNodes[2]);
}
rowI = rowI + 1;
rowSl = "comic_row_" + rowI.toString();
}
}
//Follows Page: updates the local follows's list
else if (url.indexOf("http://www.batoto.net/follows_comics") == 0) {
var rows = document.getElementById("content").getElementsByTagName("strong"),
follows = [];
for (var i = 0; i < rows.length - 3; i++) {
follows.push(rows[i].textContent);
}
localStorage.follow_list = JSON.stringify(follows);
//Shows you when it's done updating
var upList = document.createElement("span");
upList.textContent = "Local list updated!";
upList.style.fontSize = "65%";
upList.style.paddingLeft = "8px";
upList.style.color = "LightSeaGreen";
document.getElementById("content").getElementsByClassName("maintitle")[0].appendChild(upList);
//Add info button next to comic titles
var info = document.createElement("a"),
tRow = document.createElement("tr"),
rows0 = document.getElementsByClassName("ipb_table")[0].getElementsByTagName("tr"),
rows0Length = rows0.length*1.5,
tbody = rows0[0].parentNode,
comicId,
temp;
info.href = "javascript:void(0)";
info.innerHTML = "";
tRow.innerHTML = "