Official Invisible Ignored Users Greasemonkey Script



dchuk I don't think there is something to identify a thread started by an ignored user.

I don't know shit all about greasemonkey, but could you add a ignore list to your script? Then you could remove them based on username.

this was my first attempt at greasemonkey so I'm just as newb as you. I suppose there's probably a way to parse and store a ban list internally but that increases the complexity of this to over 9000. I'll see what I can do.

Not sure but I think this:

before:

wf-ignore-threads.png



after:

wf-ignore-threads1.png

I'll take a look, thanks for the screenies.
 
The free market at work, we don't need government intervention.
 
Although I'm going to make full use of this script (thanks, dchuk), I just find it kind of funny to what great lengths some of the smartest members on this forum are going to block some of the most idiotic.
 
Alright, so after some investigation, I *should* be able to add ignore list storage to the script, which can then be used to remove entire threads from the forum index pages. If that's something you guys want me to add, I'll try and find some time to do it soon (I am booked today and tomorrow).

It's odd to me that this stuff isn't just rolled into the forum software. Reminds me of when I blocked a phone number recently and instead of it just ringing forever on the other person's end, it says to them "this caller is not accepting calls from this number at this time"...why the fuck they would do that is beyond me.
 
^ reminds me of the 90s unreal tournament . Godlike ! Lengendary ! Unstoppable ! Dominating ! (read with resonating echoes )
 
Do it Darrin. You are approaching legendary status.

Just did it, I'll update the userscripts site with it in a sec once I find a place to plugin my laptop. The code is below, the basic gist is that every 5 minutes, it will scrape your ignore list and store the usernames of everyone you ignored, then will parse forum index pages and hide any threads started by those users. It only parses the ignore list every 5 minutes to cut down on the ajax requests it makes.

Code:
// ==UserScript==
// @name        Invisible Ignore List
// @namespace   IIL
// @description Makes users on your ignore list completely invisible in threads.
// @include     http://www.wickedfire.com/*
// @version     1
// @require     http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js
// @grant        GM_getValue
// @grant        GM_setValue
// ==/UserScript==


//removes all ignored user's posts from a thread
$("div.smallfont:contains('This message is hidden because')").parents('.page').each(function(){ $(this).parent().hide()});

//removes all threads started by an ignored user from forum index pages
var ignore_list_url = "http://www.wickedfire.com/profile.php?do=ignorelist";
var ignored_users = [];
var last_ignored = GM_getValue('last_ignored');
var current_time =  Math.round(new Date().getTime() / 1000);

if(last_ignored < current_time - 300 || !last_ignored){
    $.get(ignore_list_url, function(page) {  
    
        $(page).find("ul#ignorelist li a").each(function(){
            ignored_users.push($(this).text());
        });
        strip_threads(ignored_users);
        GM_setValue('last_ignored', current_time);
        GM_setValue('ignore_list', ignored_users.join());
    });
}else{
    ignored_users = GM_getValue('ignore_list').split(',');
    strip_threads(ignored_users);
}

function strip_threads(user_list){
    var threads = $("[id*='td_threadtitle'] .smallfont span");
    threads.each(function(){
        if($.inArray($(this).text(), user_list) > -1)
            $(this).parents('tr').hide();
    });
}

Also, you will probably see a brief flicker of the user's threads every once in a while while it's making it's request. There's basically nothing I can do about that, sorry.
 
One last thing, if you take a user off of your ignore list, it might take up to 5 minutes for them to be purged from the cached values. I don't care enough to make it immediate, 5 minutes is fine for now.
 
Hmm, just noticed a weird bug/behavior...I have no one on my ignore list and this seems to kill all but 1 or 2 sticky posts per subforum. Not really a big deal, but curious why it does this.