Uh... that fucking Jeremiah Goldstein really pissed me off, so I wrote a script to filter spam ... and that does some things too. It was supposed to be just for me, but I thought you guys might like it, so I'm releasing it. It definitely wasn't because I like you worthless shitheads or anything, it's just that when the board is in shambles, no one is around to reply to me. Anyway, I learned most of what I know about javascript (and everything about userJS (and way to fucking much about Shiitchan)) as I went, so please be gentle on me.
For Opera, use a `.js' extension, otherwise, use a `.user.js' extension. You might also need to adjust other settings in your browser, who knows?
Current features: Manual hiding of posts, with a little link out on the far right to hide them.
A filter, that doesn't yet support Regex. It'll still kill most spam though. Chinkspam is ... harder, so I'll focus on that later. When you have selected text, then click a post number, it will quote the selected text for you. SetjsMath to false, if you are using Opera or Firefox, so it doesn't break on the damn error every time. You can release some mittens, in case you hadn't sucked enough dicks today and you can't be bothered to go to 4-ch. You can load external scripts by URL and inject them into the page. You shouldn't do anything with this right now. It's for later stuff, like fixing jsMath.
Things under study by the Feasibility Committee: Threadwatcher, to watch threads that you have long forgotten, but hope to necrobump one day. Front page repair, so if a thread was necrobumped, or if all five replies are spam, remove it and refill the front page with non-destroyed threads. FixjsMath completely, instead of just applying a bandaid. BBCODE Compiler, so you can preview your post for failures. Automatic get getter, to automatically get doubles. BBCODE Decompiler, to quote BBCODE as well. Cloudflare and Quantserve garbage removal. Will it still work then though? Other things.
I'm waiting warmly for your comments, even if you just want to hurt my feelings and call my code shit. Also, sorry about the GUI. I know it's shit, but it's the best I know how to do.
Name:
Anonymous2013-04-26 2:59
Why is there a limit to mittens?
Name:
Anonymous2013-04-26 3:05
>>2
Because when I was testing it I'd hit the button so much that it would cause my browser to hang. It was also one of the first things I implemented, and I was just seeing how things worked.
Name:
Anonymous2013-04-26 3:06
Don't run this, it will steal all your susscoins.
Name:
Anonymous2013-04-26 3:08
>>4
It won't, I promise! That feature isn't even implemented yet!
Name:
Anonymous2013-04-26 3:27
So do you filter all Yudaism related stuff because of Nikita like sussman is? Or just pure spam like jeremiah kikestein?
Name:
Anonymous2013-04-26 3:44
>>6
I only filter actual spam, not shitposts. If shitposts were gone, there'd be practically nothing left.
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Name:
Anonymous2013-04-28 6:06
Make it so that it removes the leading spaces when copying text, so kopipe archiving is easier.
Name:
Anonymous2013-04-28 7:33
Lolwut? How the fuck did you manage this?
>>1 I'm waiting warmly for your comments,function(){
var res = "";
for(var i = 0; i < this.length; i++){
res += (this[i].replaceAll(";","\\\\;") + ";"); // the %3B is escaped in toArray, so don't worry about it here
}
return res;
}function(item) {
for(var i in this){
if(item == this[i]) this.splice(i, 1);
}
return this;
}
Name:
Anonymous2013-04-28 21:55
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Name:
Anonymous2013-04-28 22:04
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Name:
Anonymous2013-04-28 22:10
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Name:
Anonymous2013-04-28 22:17
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Searching for legit Microsoft Product keys, Windows 8,7,Studio,Server etc.?
Mail me at jeremiahgoldstein@hotmail.com
25$ a pop
Name:
Anonymous2013-04-29 11:16
>>24
I haven't seen that happen, but I did have that problem in other places. It seems that sometimes member functions to the basic classes added by prototype get included in the array when looping through an array using the for(var x in y) notation. (I thought that I had remove all of those though.) Change line 692 from for(var i in selectedTextLines) to for(var i = 0; i < selectedTextLines.length; i++).
Name:
Anonymous2013-04-29 12:37
Announcing #SUPER WORLD4CH VERSION TWO POINT OH POINT ONE#
Fixed >>29. Also fixed a bug that broke the script whenever someone posted with a tripcode, but no name. When this happens, Shiitchan moves the email link to the span containing the tripcode (it is usually in the span containing the poster name). The lack of any child node in the `postername' class caused an unhandled exception, which stopped anything from being filtered.
Already done, see the EXPERT BBCODE FRAMEWORK userscript¹. It actually doesn't play nice with your script, because it expects
document.getElementsByTagName('TextArea')[0]
to return the comment box element; however, your code adds more text areas for the filter settings, messing everything up. Here's a quick fix for those affected — replace line 338 in 12523.user.js with:
html = render(parse(tokenize(document.querySelector('TextArea[name=com]').value)));