Hmm, well since someone's still interested in this, I made a few improvements, so I'll share a current version. It now has a few settings at the top of the script which can be edited more easily.
- can be accessed from any bay12 page, but I modified it so that it acts differently on the main boards or replies page.
- option to "mark as read" automatically, to keep the replies page clear (but this sends an HTML request, so can be turned off)
to either delete or recolor blocked threads in the main board (can be any RGB color).
- I left a bunch of megathreads in there so you don't have to look for them, just chop the ones you want to keep
// ==UserScript==
// @name Bay12 Topic Filter
// @namespace http://www.bay12forums.com
// @include *www.bay12forums.com*
// @grant metadata
// ==/UserScript==
// These settings turn on/off some features:
// if true, marks unwanted replies as "read". This sends an extra page request, so you might want to turn it off
var markAsRead = true;
// if true, erases topics completely from the main boards. If false, just recolors them.
var deleteWholeTopic = false;
// what color to apply to unwanted topics, if deleteWholeTopic = false
var topicColor = "color:rgb(255,192,192)";
// The topics to be filtered. To temporarily disable a filter, put // at the start of a line
var topics = [
"28404", // (Megathread) anime thread
"147340", // (Megathread) Bay12 2016 Election Megathread
"15096", // (Megathread) What's going on in your fort?
"35804", // (Megathread) Minecraft - It has blocks
"42204", // (Megathread) Things that made you Happy today thread
"43236", // (Megathread) Things that made you sad today thread
"53879", // (Megathread) Gunnerkrigg Court
"67111", // (Megathread) maths help thread
"68850", // (Megathread) Things that made you go "WTF?" today
"79743", // (Megathread) Sales Thread
"82547", // (Megathread) The Great Music Thread
"90025", // (Megathread) generic computer advice thread
"90358", // (Megathread) Games you wish existed
"100002", // (Megathread) Rate the song above you
"103213", // (Megathread) Calm and Cool Progressive Discussion Thread
"100379", // (Megathread) Word association game
"110877", // (Megathread) Cartoon/Western Animation Thread
"112684", // (Megathread) SCIENCE, the Higgs, and everything else!
"113517", // (Megathread) The small random questions thread
"113914", // (Megathread) nitpicks that ruined movies
"119347", // (Megathread) Terrible Jokes
"139714", // (Megathread) Warhammer 40K discussion
"139883", // (Megathread) Things that made you laugh today
"71885", // (Megathread) Things that made you absolutely terrified today
"140544", // (Megathread) future of the fortress
"145467", // (Megathread) Tabletop Games Thread
"107598", // (Megathread) food thread
"147792", // (Megathread) religion thread
"153695", // (Megathread) might and fealty thread
"153622", // (Megathread) non EU Thread
"155469", // (Megathread) EU Thread
"98415", // (Megathread) random things you shopped
"130985", // (Megathread) spacegeneers
"141207", // (Megathread) Cutes Thread
"142812", // (Megathread) The Abusive Policing Thread: Beyond Brown, No Justice
"147299", // (Megathread) random comic strip generator
"132929", // (MegaThread) Space Thread
"137200", // (MegaThread) web comics thread
"134552", // (MegaThread) The "Recommend me a game" thread
"140163", // (MegaThread) DF2014 Question and Answer Thread
"122388", // (MegaThread) Factorio - Factory building game
"127124", // (MegaThread) Gaming Pet Peeves
"" // Blank - end of list
];
for(var i=0;i<topics.length;i++)
{
var a1 = document.querySelector("a[href*='topic="+topics[i]+".0']");
if(a1 != null)
{
if(window.location.href == "http://www.bay12forums.com/smf/index.php?action=unreadreplies")
{
a1.parentNode.parentNode.innerHTML = "";
}
else // board de-highlight effect
{
if(deleteWholeTopic == true)
{
a1.parentNode.parentNode.parentNode.innerHTML = "";
}
else
{
a1.style = topicColor;
}
}
}
}
if(markAsRead == true)
{
// select link for mark read
var a1 = document.querySelector("a.button_strip_markread");
var h1 = a1.href;
var out1 = h1.substring(0, h1.indexOf("topics")+7);
for(var i=0;i<topics.length;i++)
{
if(i>0)
out1 += "-";
out1 += topics[i];
}
out1 += ";" + h1.substring(h1.lastIndexOf(";")+1);
a1.href = out1;
var xmlhttp=new XMLHttpRequest();
xmlhttp.open("POST", out1, true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send('');
}