Add Syntax Highlighting (this will take a few seconds, probably freezing your browser while it works)
/*
OIFY Theme + Fix
version 0.60 (poocakes)
2007-11-25
Origional Fix Copyright (c) 2006, Tristan Pemble
Released under the GPL license
http://www.gnu.org/copyleft/gpl.html
Portions Copyright (c) 2005, Mark Pilgrim
Also Released under the GPL license
Origional OIFY Styles (oify.css, and _phallic.css) probably Copyright (c) 2004, Garry Newman
The missing Scripts are Copyright ©2000 - 2004, Jelsoft Enterprises Limited and/or Copyright (c) 2004, Garry Newman, god knows that they are licensed under.
Code Molested by Morphology53
Still Released under the GPL license
//All banned posts: "User was banned for this post intitle:View Single"
//All Gold Members: "gold member intitle:View Profile"
//http://facepunchstudios.com/favicon.ico
//http://unicode.coeurlumiere.com/
*/
// ==UserScript==
// @name OIFY Theme + Fix (Both)
// @namespace http://forums.facepunchstudios.com/forumdisplay.php?f=56
// @description Replaces the default Facepunch theme with the annoying OIFY style. Fixes the Ratings. Does other shit too.
// @include http://forums.facepunchstudios.com/*
// ==/UserScript==
//Example Backgrounds
//Green down http://www.garry.tv/img/trip/gr-dn.gif
//Garrys Avatar http://www.garry.tv/img/avatar-64b.jpg
//Static http://www.garry.tv/img/trip/gr-bk.gif
var newfavicon = 'data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoAwAAF' +
'gAAACgAAAAQAAAAIAAAAAEAGAAAAAAAQAMAAAAAAAAAAAAAAAAAAAAAAAAA%2FwAA%2' +
'FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2F' +
'wAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2Fw' +
'AA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAAAAAA%' +
'2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAAAAAA%2FwAA%2FwAA%2Fw' +
'AA%2FwAA%2FwAA%2FwAAAAAAAAAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2F' +
'wAAAAAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAAAAAAAAAA%2FwAA%2FwAA%2Fw' +
'AA%2FwAA%2FwAA%2FwAAAAAAAAAAAAAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAAAAAAA' +
'AAAAAAAAAAA%2FwAA%2FwAA%2FwAAAAAAAAAA%2FwAAAAAAAAAA%2FwAA%2FwAA%2Fw' +
'AA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwA' +
'A%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA' +
'%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAAAAAAAAA' +
'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%2FwAA%2FwAAAAAAAA' +
'AA%2FwAA%2FwAA%2FwAAAAAAAAAAAAAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAAAAAA%' +
'2FwAA%2FwAAAAAA%2FwAA%2FwAAAAAA%2FwAA%2FwAAAAAAAAAAAAAA%2FwAA%2FwAA' +
'%2FwAAAAAAAAAA%2FwAA%2FwAAAAAA%2FwAAAAAAAAAAAAAA%2FwAAAAAAAAAAAAAAA' +
'AAA%2FwAAAAAAAAAAAAAA%2FwAA%2FwAAAAAA%2FwAA%2FwAAAAAA%2FwAA%2FwAAAA' +
'AAAAAAAAAA%2FwAA%2FwAA%2FwAAAAAAAAAA%2FwAA%2FwAAAAAAAAAA%2FwAA%2FwA' +
'A%2FwAAAAAAAAAAAAAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAAAAAA%2FwAA%2FwAAAA' +
'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%2FwAA%2FwAA%' +
'2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2FwAA%2' +
'FwAA%2FwAA%2FwAA%2FwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' +
'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'
//Various Settings
//(Strings)
var oifybannertext = 'Internet OIFY'
var oifyreporttext = 'Report to Suck My COck!!!1!1'
var THEBACKGROUND = GM_getValue("magicalback", 'http://www.garry.tv/img/trip/gr-bk.gif');
var FunkyMusicTable = [ 'music.mid', 'music8.mid', 'music7.mid', 'music6.mid', 'music5.mid', 'music4.mid', 'music3.mid', 'music2.mid', 'music10.mid' ]
//My style string
var phallic =
//Green Static background
'body {' +
' background-image: url('+ THEBACKGROUND +') ! important;' +
' background-color: #111 ! important;' +
' background-repeat: repeat ! important;' +
' color: #000 ! important;' +
' font: 13px System ! important;' +
' margin: 0px 20px ! important;' +
'}' +
'a:link {' +
' color: #0A0 ! important;' +
'}' +
'a:hover, a:active {' +
' color: #F00 ! important;' +
' cursor: url(\'ncur.cur\'),auto ! important;' +
'}' +
'a:visited {' +
' color: #0F0 ! important;' +
'}' +
'.page {' +
' background: transparent url('+ THEBACKGROUND +') repeat scroll 0% ! important;' +
' border-left: 0px #888 solid ! important;' +
' border-top: 0px #888 solid ! important;' +
' border-right: 0px #888 solid ! important;' +
' border-bottom: 1px #888 solid ! important;' +
' color: #0F0 ! important;' +
' cursor: url(\'ncur.cur\'),auto ! important;' +
'}' +
'td, th, p, li {' +
' cursor: url(\'ncur.cur\'),auto ! important;' +
'}' +
'.tborder {' +
' background-color: #070 ! important;' +
' color: #5C5 ! important;' +
' cursor: url(\'ncur.cur\'),auto ! important;' +
'}' +
'.tcat {' +
' background-color: #FFAAAA ! important;' +
' color: #111 ! important;' +
' cursor: url(\'ncur.cur\'),auto ! important;' +
'}' +
'.tcat a:link {' +
' color: #FFF ! important;' +
'}' +
'.tcat a:visited {' +
' color: #FFF ! important;' +
'}' +
'.tcat a:hover, .tcat a:active {' +
' color: #FFF ! important;' +
'}' +
'.thead {' +
' background-color: #FFAA00 ! important;' +
' border-left: 0px #888 solid ! important;' +
' border-top: 0px #888 solid ! important;' +
' border-right: 0px #888 solid ! important;' +
' border-bottom: 0px #888 solid ! important;' +
' color: #eee ! important;' +
' cursor: url(\'ncur.cur\'),auto ! important;' +
'}' +
'.thead a:link {' +
' color: #eee ! important;' +
'}' +
'.thead a:visited {' +
' color: #eee ! important;' +
'}' +
'.thead a:hover, .thead a:active {' +
' color: #fff ! important;' +
'}' +
'.tfoot {' +
' background-color: #333 ! important;' +
' color: #888 ! important;' +
'}' +
'td.tfoot {' +
' background-color: #fa0 ! important;' +
' color: #888 ! important;' +
'}' +
'.alt1, .alt1Active {' +
' background-color: #335533 ! important;' +
' color: #00AA00 ! important;' +
' border-left: 0px #888 solid ! important;' +
' border-top: 1px #888 solid ! important;' +
' border-bottom: 1px #888 solid ! important;' +
' border-right: 0px #888 solid ! important;' +
'}' +
'.alt1 A, .alt1Active A {' +
' color: #00AA00 ! important;' +
'}' +
//Banlist Hack
'TD.alt1 DIV A:visited, TD.alt1Active DIV A:visited {' +
' color: #00DD00 ! important;' +
'}' +
'.alt2, .alt2Active {' +
' background-color: #040 ! important;' +
' color: #000 ! important;' +
'}' +
'.alt2 A, .alt2Active A {' +
' color: #00AA00 ! important;' +
'}' +
'.wysiwyg {' +
' background-color: #F5F5F5 ! important;' +
' color: #000000 ! important;' +
'}' +
'.button {' +
' background-color: #111 ! important;' +
' color: #181 ! important;' +
' border: 1px #888 dotted ! important;' +
'}' +
'.smallfont {' +
' color: #ddd ! important;' +
'}' +
//Your login info
'DIV.smallfont {' +
' color: #222222 ! important;' +
'}' +
//VB Copyrights
'FORM DIV DIV.smallfont {' +
' color: #ddd ! important;' +
'}' +
'.time {' +
' color: #FFF ! important;' +
'}' +
//Highlight Tags
'.highlight {' +
' color: #FF0000 ! important;' +
'}' +
'.fjsel {' +
' background-color: #1B4CA2 ! important;' +
' color: #FFFFFF ! important;' +
'}' +
'.fjdpth0 {' +
' background-color: #F7F7F7 ! important;' +
' color: #000000 ! important;' +
'}' +
'.panel {' +
' color: #000000 ! important;' +
'}' +
//Houses Quick Reply
'.panelsurround {' +
' background-image: url() ! important;' +
' color: #000000 ! important;' +
' background-color: #030 ! important;' +
' border-left: 1px #888888 solid ! important;' +
' border-top: 0px #888888 solid ! important;' +
' border-bottom: 0px #888888 solid ! important;' +
' border-right: 1px #888888 solid ! important;' +
'}' +
//No IDea
'legend {' +
' color: #a00 ! important;' +
'}' +
'.vbmenu_control {' +
' color: #ddd ! important;' +
' background-color: #00AA22 ! important;' +
' border-left: 1px #55BB99 solid ! important;' +
' border-top: 1px #55BB99 solid ! important;' +
' border-bottom: 1px #009933 solid ! important;' +
' border-right: 1px #009933 solid ! important;' +
'}' +
'.vbmenu_control a:link {' +
' color: #ccc ! important;' +
'}' +
'.vbmenu_control a:visited {' +
' color: #ccc ! important;' +
'}' +
'.vbmenu_control a:hover, .vbmenu_control a:active {' +
' color: #800 ! important;' +
'}' +
'.vbmenu_popup {' +
' color: #060 ! important;' +
' background-color: #040 ! important;' +
' border-left: 1px #888 solid ! important;' +
' border-top: 1px #888 solid ! important;' +
' border-bottom: 1px #888 solid ! important;' +
' border-right: 1px #888 solid ! important;' +
'}' +
'.vbmenu_option {' +
' background: #000 url(/images/as/pin_light.gif); ! important;' +
' color: #060 ! important;' +
' cursor: pointer ! important;' +
'}' +
'.vbmenu_option a:link {' +
' color: #1B4CA2 ! important;' +
'}' +
'.vbmenu_option a:visited {' +
' color: #1B4CA2 ! important;' +
'}' +
'.vbmenu_option a:hover, .vbmenu_option a:active {' +
' color: #FFFFFF ! important;' +
'}' +
'.vbmenu_hilite {' +
' background: #1B4CA2 url(/images/as/pin_blue.gif) ! important;' +
' color: #FFFFFF ! important;' +
' cursor: pointer ! important;' +
'}' +
'.vbmenu_hilite a:link {' +
' color: #FFFFFF ! important;' +
'}' +
'.vbmenu_hilite a:visited {' +
' color: #FFFFFF ! important;' +
'}' +
'.vbmenu_hilite a:hover, .vbmenu_hilite a:active {' +
' color: #FFFFFF ! important;' +
'}' +
'.tableborder {' +
' background-color: #f00 ! important;' +
' color: #000000 ! important;' +
'}' +
'.toolbar {' +
' background: url() ! important;' +
' background-color: #222 ! important;' +
' color: #111 ! important;' +
' border-top: 1px #090 solid ! important;' +
' border-bottom: 1px #888 solid ! important;' +
'}' +
'#toolbar {' +
' background: url() ! important;' +
' background: #01A3E5 ! important;' +
' color: #ddd ! important;' +
'}' +
'#toolbar a {' +
' color: #ddd ! important;' +
'}' +
'.quotename {' +
' color: #171 ! important;' +
' border: 1px #aaa dotted ! important;' +
' border-bottom: 0px ! important;' +
' background: #222 ! important;' +
' font: 13px System ! important;' +
'}' +
'.quote {' +
' color: #181 ! important;' +
' background: #111 ! important;' +
' font: 13px System ! important;' +
'}' +
'.sticky {' +
' background-color: #050 ! important;' +
'}' +
'.locked {' +
' background-color: #000 ! important;' +
'}' +
'.announce {' +
' background-color: #040 ! important;' +
'}' +
//Fixed colors as per update 14
'DIV.mediabox {' +
' color: #080 ! important;' +
' background-color: #111 ! important;' +
' border: 1px solid #888 ! important;' +
' background-image: url() ! important;' +
'}' +
//Shows a users total ratings
'#Rate_It_Popup {' +
' color: #080 ! important;' +
' background-color: #444 ! important;' +
' border: 1px solid #222 ! important;' +
' opacity: 0.96 ! important;' +
' filter: Alpha(opacity=96) ! important;' +
'}' +
'DIV.rateit_namebox {' +
' background-color: #FFAA00 ! important;' +
' border: 1px solid #FFFF0D ! important;' +
'}' +
'DIV.rate_it DIV.rate_text_line {' +
' background-color: #335533 ! important;' +
' border-left: 1px #FFFF0D solid ! important;' +
' border-top: 1px #FFFF0D solid ! important;' +
' border-bottom: 1px #FFFF0D solid ! important;' +
' border-right: 1px #FFFF0D solid ! important;' +
' color: #911 ! important;' +
' background-color: #224422 ! important;' +
'}' +
//Basic rateing numbers
'DIV.rate_it_display, DIV.rate_it_display_box, DIV.rate_it_thread {' +
' color: #ddd ! important;' +
'}' +
//Global post rating box
'#Rate_It_Popup DIV DIV.rate_it_display_box A{' +
' color: #ddd ! important;' +
//' white-space: nowrap;' +
'}' +
'DIV.rate_it_display_names {' +
' color: #ddd ! important;' +
' border: 1px solid #FFFF0D ! important;' +
'}' +
'DIV.rate_it_display_names A{' +
' color: #333333 ! important;' +
'}' +
'DIV.rate_it_display_names A:visited{' +
' color: #FF0000 ! important;' +
'}' +
'DIV.rate_it_display_names:hover {' +
' background-color: #0066BB ! important;' +
' border-left: 1px #5599BB solid ! important;' +
' border-top: 1px #6699BB solid ! important;' +
' border-bottom: 1px #003399 solid ! important;' +
' border-right: 1px #003388 solid ! important;' +
'}' +
//Killed Garry's image, and added transparency.
'DIV.rate_bar {' +
' color: #ddd ! important;' +
' background-image: url() ! important;' +
' background-color: #0066BB ! important;' +
' border-left: 1px #5599BB solid ! important;' +
' border-top: 1px #6699BB solid ! important;' +
' border-bottom: 1px #003399 solid ! important;' +
' border-right: 1px #003388 solid ! important;' +
' opacity: 0.8 ! important;' +
' filter: Alpha(opacity=80) ! important;' +
' width: 135px ! important;' +
' height: 100px ! important;' +
'}' +
//Neat Rate Hover SHit
'DIV.inner A.rate_button:hover {' +
' opacity: 0.7 ! important;' +
' filter: Alpha(opacity=70) ! important;' +
'}' +
'DIV.rate_bar DIV.inner{' +
' padding: 0px' +
'}' +
'DIV.inner DIV.rate_text {' +
' white-space: nowrap;' +
'}' +
'DIV.SpecialPages {' +
' background-color: #111 ! important;' +
' border: 1px solid #01A3E5 ! important;' +
'}' +
'A.disabledlink {' +
' color: #aaa ! important;' +
'}' +
//New Thread
'.cbutton {' +
' color: #fff ! important;' +
' background-color: #0066BB ! important;' +
' border-left: 1px #5599BB solid ! important;' +
' border-top: 1px #6699BB solid ! important;' +
' border-bottom: 1px #003399 solid ! important;' +
' border-right: 1px #003388 solid ! important;' +
'}' +
'.cbutton:hover {' +
' color: #FFFFFF ! important;' +
'}' +
'.cbutton a:link {' +
' color: #FFFFFF ! important;' +
'}' +
'.cbutton a:visited {' +
' color: #FFFFFF ! important;' +
'}' +
'.cbutton a:hover, .vbmenu_control a:active {' +
' color: #FFFFFF ! important;' +
'}' +
'#navbar {' +
' background-color: #335533 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'.tpagnav, .tpagnavdisabled {' +
' background-color: #01A3E5 ! important;' +
' border-left: 0px #050 solid ! important;' +
' border-top: 0px #050 solid ! important;' +
' border-bottom: 0px #050 solid ! important;' +
' border-right: 0px #050 solid ! important;' +
' background-color: #0a0a0a ! important;' +
'}' +
'.tpagnavdisabled A {' +
' color: #500 ! important;' +
'}' +
//Odd numbered threads (forumdisplay.php)
'TD.thread {' +
' background-color: #338833 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
//Even numbered threads (forumdisplay.php)
'TD.threadb{' +
' background-color: #335533 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
//Odd numbered thread info (forumdisplay.php)
'TD.thread_small {' +
' background-color: #335533 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
//Even numbered thread info (forumdisplay.php)
'TD.thread_smallb {' +
' background-color: #338833 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.threadsticky{' +
' background-color: #f8c850 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.threadbsticky{' +
' background-color: #d8b850 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.thread_smallsticky {' +
' background-color: #d8b850 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.thread_smallbsticky {' +
' background-color: #f8c850 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.threadold {' +
' background-color: #101010 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.threadbold{' +
' background-color: #202020 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.thread_smallold {' +
' background-color: #202020 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.thread_smallbold {' +
' background-color: #101010 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.threaddeleted {' +
' background-color: #200000 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
'TD.threaddeleted_small{' +
' background-color: #300000 ! important;' +
' border: 0px solid #888 ! important;' +
'}' +
//Thread Links
'TD.thread A:visited, TD.threadb A:visited, TD.thread_small A:visited, TD.thread_smallb A:visited{' +
' color: #0d0 ! important;' +
'}' +
'TD.thread A, TD.thread_smallb A {' +
' color: #335533 ! important;' +
'}' +
'TD.threadb A, TD.thread_small A {' +
' color: #338833 ! important;' +
'}' +
//Older Thread Links
'TD.threadold A:visited, TD.thread_smallbold A:visited {' +
' color: #337733 ! important;' +
'}' +
'TD.threadbold A:visited, TD.thread_smallold A:visited {' +
' color: #33AA33 ! important;' +
'}' +
'TD.threadold A, TD.thread_smallbold A {' +
' color: #335533 ! important;' +
'}' +
'TD.threadbold A, TD.thread_smallold A {' +
' color: #338833 ! important;' +
'}' +
//How many new posts a thread has
'DIV.newposts {' +
' background-image: url( \'images/smilies/emot-sax.png\' ) ! important;' +
' background-color: #101010 ! important;' +
' border: 0px solid #888 ! important;' +
' padding: 4px 4px 4px 30px ! important;' +
'}' +
'DIV.newposts:hover {' +
' background-color: #202020 ! important;' +
' border-color: #888 ! important;' +
'}' +
'DIV.newposts A {' +
' color: #f00 ! important;' +
'}' +
'DIV.newposts A:visited {' +
' color: #f00 ! important;' +
'}' +
//Post SHit
'DIV.postbit {' +
' width: 100% ! important;' +
' background-image: url() ! important;' +
' background-repeat: repeat-n ! important;' +
' color: #fff ! important;' +
' background-color: #335533 ! important;' +
' overflow: hidden ! important;' +
' border-left: 1px #FFFF0D solid ! important;' +
' border-top: 0px #FFFF0D solid ! important;' +
' border-bottom: 1px #FFFF0D solid ! important;' +
' border-right: 1px #FFFF0D solid ! important;' +
' margin-bottom: 12px ! important;' +
' margin-top: 12px ! important;' +
'}' +
'DIV.postbitalt {' +
' background-color: #335533 ! important;' +
' border-left: 0px solid #888 ! important;' +
' border-right: 0px solid #888 ! important;' +
'}' +
'DIV.postbitalt {' +
' background-color: #3e3e3e ! important;' +
'}' +
'DIV.postbit div.message {' +
' margin-left:150px ! important;' +
'}' +
//Message Text
'DIV.postbit div.message div.messagetext {' +
' color: #fff ! important;' +
' background-color: #335533 ! important;' +
'}' +
//Release Tags
'DIV.postbit div.message div.messagetext div {' +
' color: #161 ! important;' +
'}' +
//Time posted, and my post-hider button
'DIV.postbit div.header {' +
//' background-image: url( \'http://garry.tv/img/str2.gif\' ) ! important;' +
' background-color: #FFAA00 ! important;' +
' color: #333333 ! important;' +
' border-left: 0px #090 solid ! important;' +
' border-top: 1px #FFFF0D solid ! important;' +
' border-bottom: 1px #FFFF0D solid ! important;' +
' border-right: 0px #090 solid ! important;' +
'}' +
//User Info
'DIV.postbit div.userinfo {' +
' background-color: #224422 ! important;' +
' border-left: 0px #FFFF0D solid ! important;' +
' border-top: 0px #FFFF0D solid ! important;' +
' border-bottom: 0px #FFFF0D solid ! important;' +
' border-right: 1px #FFFF0D solid ! important;' +
' padding-bottom: 32767px ! important;' +
' margin-bottom: -32767px ! important;' +
'}' +
//Reply, edit, and reporting
'DIV.postbit div.footer {' +
' background-color: #335533 ! important;' +
' border-left: 0px #FFFF0D solid ! important;' +
' border-top: 1px #FFFF0D solid ! important;' +
' border-bottom: 0px #FFFF0D solid ! important;' +
' border-right: 0px #FFFF0D solid ! important;' +
' padding-left: 160px ! important;' +
'}' +
'DIV.postbit div.header A {' +
' color: #fff ! important;' +
'}' +
//New shit, subject to change
//Post SHit
'DIV.postbitnew {' +
' width: 100% ! important;' +
' background-image: url() ! important;' +
' background-repeat: repeat-n ! important;' +
' color: #fff ! important;' +
' background-color: #335533 ! important;' +
' overflow: hidden ! important;' +
' border-left: 1px #FFFF0D solid ! important;' +
' border-top: 0px #FFFF0D solid ! important;' +
' border-bottom: 1px #FFFF0D solid ! important;' +
' border-right: 1px #FFFF0D solid ! important;' +
' margin-bottom: 12px ! important;' +
' margin-top: 12px ! important;' +
'}' +
'DIV.postbitnew div.message {' +
' margin-left:150px ! important;' +
'}' +
//Message Text
'DIV.postbitnew div.message div.messagetext {' +
' color: #fff ! important;' +
' background-color: #335533 ! important;' +
'}' +
//Release Tags
'DIV.postbitnew div.message div.messagetext div {' +
' color: #161 ! important;' +
'}' +
//Time posted, and my post-hider button
'DIV.postbitnew div.header {' +
//' background-image: url( \'http://garry.tv/img/str2.gif\' ) ! important;' +
' background-color: #FFAA00 ! important;' +
' color: #333333 ! important;' +
' border-left: 0px #090 solid ! important;' +
' border-top: 1px #FFFF0D solid ! important;' +
' border-bottom: 1px #FFFF0D solid ! important;' +
' border-right: 0px #090 solid ! important;' +
'}' +
//User Info
'DIV.postbitnew div.userinfo {' +
' background-color: #224422 ! important;' +
' border-left: 0px #FFFF0D solid ! important;' +
' border-top: 0px #FFFF0D solid ! important;' +
' border-bottom: 0px #FFFF0D solid ! important;' +
' border-right: 1px #FFFF0D solid ! important;' +
' padding-bottom: 32767px ! important;' +
' margin-bottom: -32767px ! important;' +
'}' +
//Reply, edit, and reporting
'DIV.postbitnew div.footer {' +
' background-color: #335533 ! important;' +
' border-left: 0px #FFFF0D solid ! important;' +
' border-top: 1px #FFFF0D solid ! important;' +
' border-bottom: 0px #FFFF0D solid ! important;' +
' border-right: 0px #FFFF0D solid ! important;' +
' padding-left: 160px ! important;' +
'}' +
'DIV.postbitnew div.header A {' +
' color: #fff ! important;' +
'}' +
//ENd new shit
'td.vBulletin_editor {' +
' background-color: #444 ! important;' +
' color: #ddd ! important;' +
'}' +
//White, as per request.
'textarea {' +
' background-color: #fff ! important;' +
' color: #111 ! important;' +
' border-left: 1px #777 solid ! important;' +
' border-top: 1px #777 solid ! important;' +
' border-bottom: 1px #777 solid ! important;' +
' border-right: 1px #777 solid ! important;' +
'}' +
//DOn't remember
'table {' +
' background-color: #335533 ! important;' +
' color: #111 ! important;' +
' border-left: 0px #777 solid ! important;' +
' border-top: 0px #777 solid ! important;' +
' border-bottom: 0px #777 solid ! important;' +
' border-right: 0px #777 solid ! important;' +
'}' +
//Fixes CODE TAGS, makes it legible.
'.code {' +
' background-color: #111 ! important;' +
' color: #ddd ! important;' +
'}' +
//Lua Tags
'.lua {' +
' background-color: #111 ! important;' +
' color: #ddd ! important;' +
'}' +
//? people viewing crap
'span.threadviewers {' +
' background-color: #111 ! important;' +
' color: #090 ! important;' +
' border: 1px solid #090 ! important;' +
' float: right ! important;' +
' margin-top: -13px ! important;' +
' margin-right: 80px ! important;' +
'}' +
//fixes shitty fonts in Iframes, among other things.
'html {' +
' font: 13px System ! important;' +
' color: #eee ! important;' +
'}' +
'#posts {' +
' border-left: 0px #FFFF0D solid ! important;' +
' border-top: 0px #FFFF0D solid ! important;' +
' border-bottom: 0px #FFFF0D solid ! important;' +
' border-right: 0px #FFFF0D solid ! important;' +
'}' +
//Experimental
'INPUT.bginput, TEXTAREA {' +
' border-left: 0px #FFFF0D solid ! important;' +
' border-top: 0px #FFFF0D solid ! important;' +
' border-bottom: 0px #FFFF0D solid ! important;' +
' border-right: 0px #FFFF0D solid ! important;' +
'}' +
'table, div, p, body, a, tr, td, span, thead, strong, form, input, textarea, select, option, optgroup, legend {' +
' cursor: url(\'ncur.cur\'),auto ! important;' +
'}'
//END
//Missing Scripts
var pooscr =
//'var currentPost = window.location.hash;' +
'var MouseX = 0;' +
'var MouseY = 0;' +
//The rate button in normal fp
'function ToggleDiv( id, bPosition ) {' +
' panel = fetch_object( id );' +
' if (!panel) return false;' +
' if (panel.style.display == \'none\') {' +
' panel.style.display = \'block\';' +
' if ( bPosition ) {' +
' if (panel.className == \'rate_bar\' ) {' +
' panel.style.left = MouseX + \'px\';' +
' panel.style.top = (MouseY - 60)+ \'px\';' +
' }' +
' else {' +
' panel.style.left = MouseX + \'px\';' +
' panel.style.top = MouseY + \'px\';' +
' };' +
' };' +
' }' +
' else {' +
' panel.style.display = \'none\';' +
' }' +
' return false;' +
'};' +
//The blue arrow button, ratings in the oify
'function Toggle_Element_On_Cursor( id, offx, offy ) {' +
' panel = fetch_object( id );' +
' if (!panel) return false;' +
' if (panel.style.display != \'block\') {' +
' panel.style.display = \'block\';' +
' }' +
' else {' +
' panel.style.display = \'none\';' +
' }' +
' panel.style.left = (MouseX + offx) + \'px\';' +
' if (panel.className == \'rate_bar\' ) {' +
' panel.style.top = ((MouseY + offy) - 60)+ \'px\';' +
' }' +
' else {' +
' panel.style.top = (MouseY + offy) + \'px\';' +
' };' +
' return false;' +
'};' +
//Rating crap
'function RateHover( $on, $postid, $name ) {' +
' bar = fetch_object( \'rbt_\' + $postid );' +
' if ($on) {' +
' bar.innerHTML = $name;' +
' }' +
' else {' +
' bar.innerHTML = \' \';' +
' }' +
'};' +
'var rateAJAX = false;' +
'var RateBox = false;' +
'function RateFeedback() {' +
' if (!rateAJAX) return;' +
' if (rateAJAX.handler.readyState != 4 || rateAJAX.handler.status != 200) {' +
' return;' +
' }' +
' RateBox.innerHTML = rateAJAX.handler.responseText;' +
' if ( rateAJAX.handler.responseText == \'\' ) {' +
' RateBox.style.display = \'none\';' +
' }' +
' delete rateAJAX;' +
' rateAJAX = false;' +
' RateBox = false;' +
'};' +
'function Rate_It( $id, $postid, $v ) {' +
' if (rateAJAX) {' +
' alert(\'One at a time BITCH\');' +
' return false;' +
' }' +
' RateBox = fetch_object( \'rb_\' + $postid );' +
' RateBox.innerHTML = \'<div class="rated_progress"> </div>\';' +
' rateAJAX = new vB_AJAX_Handler(true);' +
' rateAJAX.onreadystatechange( RateFeedback );' +
' rateAJAX.send( \'/rate_it.php\', \'do=rate&p=\' + $postid + \'&r=\' + $id + \'&v=\' + $v );' +
' return false;' +
'};' +
'function CloseWindow( name ) {' +
' win = fetch_object( name );' +
' if (!win) return false;' +
' document.body.removeChild( win );' +
' delete win;' +
' RateWindow = false;' +
'};' +
'var ajRB = false;' +
'var ClickX = 0;' +
'var ClickY = 0;' +
'var RateWindow = false;' +
'function ShowRateBox( $userid, $clicked, e ) {' +
' if (ajRB) {' +
' alert( \'One at a time you shitbag\' );' +
' return;' +
' }' +
' if ( RateWindow ) {' +
' document.body.removeChild( RateWindow );' +
' delete RateWindow;' +
' RateWindow = false;' +
' }' +
' if ( WhoVotedWindow ) {' +
' document.body.removeChild( WhoVotedWindow );' +
' delete WhoVotedWindow;' +
' WhoVotedWindow = false;' +
' }' +
' ClickX = MouseX + 10;' +
' ClickY = MouseY;' +
' ajRB = new vB_AJAX_Handler(true);' +
' ajRB.onreadystatechange( ShowRateBoxFeedback );' +
' ajRB.send( \'/rate_it.php\', \'do=getbox&id=\' + $userid );' +
' return false;' +
'};' +
'var ajRN = false;' +
'var RateNameExpander = false;' +
'function RateItExpand_CB() {' +
' if (!ajRN) return;' +
' RateNameExpander.innerHTML = RateNameExpander.innerHTML + \".\";' +
' if (ajRN.handler.readyState != 4 || ajRN.handler.status != 200) return;' +
' var output = ajRN.handler.responseText;' +
' RateNameExpander.innerHTML = output;' +
' ajRN = false;' +
' RateNameExpander = false;' +
'};' +
'function RateItExpand( $postid, $md5 ) {' +
' if (RateNameExpander) return false;' +
' RateNameExpander = fetch_object( \'rate_it_names_\' + $postid );' +
' if ( !RateNameExpander ) return false;' +
' if (RateNameExpander.innerHTML != \'\') {' +
' if (RateNameExpander.style.display == \'none\') {' +
' RateNameExpander.style.display = \'block\';' +
' }' +
' else {' +
' RateNameExpander.style.display = \'none\';' +
' }' +
' RateNameExpander = false;' +
' return false;' +
' }' +
' RateNameExpander.innerHTML = \"Fetching..\";' +
' ajRN = new vB_AJAX_Handler(true);' +
' ajRN.onreadystatechange( RateItExpand_CB );' +
' ajRN.send( \'/rate_it.php\', \'do=getnames&post=\' + $postid + \'&md5=\' + $md5 );' +
' return false;' +
'};' +
'var ajWhoRated = false;' +
'var WhoVotedWindow = false;' +
'function ShowWhoVotedFeedback() {' +
' if (!ajWhoRated) {' +
' return;' +
' }' +
' if (ajWhoRated.handler.readyState == 1 && !WhoVotedWindow) {' +
' var div = document.createElement(\'div\');' +
' div.id = \'Rate_It_Popup_Names\';' +
' div.style.width = \'100px\';' +
' div.style.opacity = \'0.9\';' +
' div.style.left = ClickX + \'px\';' +
' div.style.top = ClickY + \'px\';' +
' div.style.position = \"absolute\";' +
' div.style.background = \"#ffd\";' +
' div.style.border = \"1px solid #777\";' +
' div.style.padding = \'10px\';' +
' div.style.cursor = \'pointer\';' +
' div.style.color = \'#555\';' +
' div.style.fontSize = \'11px\';' +
' div.innerHTML = \'<div class=\"big_js_loading\" style=\"width: 100px; height: 40px;\"> </div>\';' +
' div.onclick = function() {' +
' if (WhoVotedWindow) {' +
' document.body.removeChild( WhoVotedWindow );' +
' delete WhoVotedWindow;' +
' WhoVotedWindow = false;' +
' }' +
' };' +
' document.body.appendChild( div );' +
' WhoVotedWindow = div' +
' };' +
' if (ajWhoRated.handler.readyState != 4 || ajWhoRated.handler.status != 200) {' +
' return;' +
' }' +
' var output = ajWhoRated.handler.responseText;' +
' WhoVotedWindow.innerHTML = output;' +
' delete ajWhoRated;' +
' ajWhoRated = false;' +
'};' +
'function ShowWhoVoted( $userid, $rateid, $rated ) {' +
' if (ajWhoRated) {' +
' alert( \'One at a time you shitbag\' );' +
' return false;' +
' }' +
' if ( WhoVotedWindow ) {' +
' document.body.removeChild( WhoVotedWindow );' +
' delete WhoVotedWindow;' +
' WhoVotedWindow = false;' +
' }' +
' ClickX = MouseX;' +
' ClickY = MouseY;' +
' ajWhoRated = new vB_AJAX_Handler(true);' +
' ajWhoRated.onreadystatechange( ShowWhoVotedFeedback );' +
' ajWhoRated.send( \'/rate_it.php\', \'do=whovoted&id=\' + $userid + \'&rid=\' + $rateid + \'&rated=\' + $rated );' +
' return false;' +
'};' +
//Media Tags
'function PlayMedia( id ) {' +
' buttons = fetch_object( \'mediabuttons_\' + id );' +
' movie = fetch_object( \'mediadiv_\' + id );' +
' buttons.style.display = \'none\';' +
' movie.style.display = \'inline\';' +
'}'
//Below this are not default crap, either I made them or modified them from Garry's Scripts.
var custpooscr =
//The Post Hider Crap
'function TogglePost( id ) {' +
' panel = fetch_object( id );' +
' if (!panel) return false;' +
' if (panel.childNodes[3].style.display == \'none\') {' +
' panel.childNodes[3].style.display = \'\';' +
' panel.childNodes[5].style.display = \'\';' +
' panel.childNodes[7].style.display = \'\';' +
' }' +
' else {' +
' panel.childNodes[3].style.display = \'none\';' +
' panel.childNodes[5].style.display = \'none\';' +
' panel.childNodes[7].style.display = \'none\';' +
' }' +
' return false;' +
'};' +
//This works better for most stuff, like tables
'function ToggleElementEX( id ) {' +
' panel = fetch_object( id );' +
' if (!panel) return false;' +
' if (panel.style.display == \'none\') {' +
' panel.style.display = \'\';' +
' }' +
' else {' +
' panel.style.display = \'none\';' +
' }' +
' return false;' +
'};'
//Check if this is really facepunchstudios forum, because people are retarded, and I can't code for shit.
var thedomain, comparison;
thedomain = window.location.host;
comparison = thedomain.search(/forums.facepunchstudios.com/)
if(comparison == -1 ){ return; }
//A bunch of vars
var shitlist = GM_getValue("slistarray", 'fake1,fake2');
shitlist = shitlist.split(',')
var myfnlocation = window.location.href
var thegoggles = 'THEY DO NOTHING!'
// filched from Ain't It Readable
// http://diveintomark.org/projects/greasemonkey/
// This overrides the default style with my whatever I want.
function stylemolest(css) {
var head, style, magicalico;
head = document.getElementsByTagName('head')[0];
if (!head) { return; }
style = document.createElement('style');
style.type = 'text/css';
style.innerHTML = css;
head.appendChild(style);
}
//OIFY CHECK
var isoify = false
if ( document.evaluate("//link[@href='/OIFY.css']", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null).snapshotLength > 0 ) {
isoify = true
};
//Check if the menus work
if (!GM_registerMenuCommand) {
alert('Please upgrade to the latest version of Greasemonkey, dumbass!');
return;
}
//Define the functions
//Facepunch skinning
function togglefpskin( e ) {
var oifyskinng = confirm('Use the Modded Classic skin in the OIFY?')
//var thegayhous = confirm('Use the Excellent Mouse Cursor?')
var mybackgrod = prompt("Enter a URL for a Background Image (Blank for none)", "http://www.garry.tv/img/trip/gr-bk.gif");
if ( oifyskinng ){
GM_setValue("oifyskin", true );
alert('OIFY Skin Enabled');
} else {
GM_setValue("oifyskin", false );
alert('OIFY Skin Disabled');
};
GM_setValue("magicalback", mybackgrod );
};
//Asshole blocklist toggle
function togglehitlist( e ) {
if (GM_getValue("hitlist", true ) == true ){
GM_setValue("hitlist", false );
alert('Blacklist Disabled');
return;
};
if (GM_getValue("hitlist", true ) == false ){
GM_setValue("hitlist", true );
alert('Blacklist Enabled');
return;
};
};
//Block Notify toggle
function togglenotify( e ) {
if (GM_getValue("blocknotify", false ) == true ){
GM_setValue("blocknotify", false );
alert('Blacklist Notifications Disabled');
return;
};
if (GM_getValue("blocknotify", false ) == false ){
GM_setValue("blocknotify", true );
alert('Blacklist Notifications Enabled');
return;
};
};
//User Panel toggle
function toggleupanel( e ) {
if (GM_getValue("upanel", true ) == true ){
GM_setValue("upanel", false );
alert('User Panel Disabled');
return;
};
if (GM_getValue("upanel", true ) == false ){
GM_setValue("upanel", true );
alert('User Panel Enabled');
return;
};
};
//Blacklisting
function manageblistnames( e ) {
var name = prompt("Enter a Username", "Type the name here");
var realshitlist = GM_getValue("slistarray", 'fake1,fake2');
realshitlist = realshitlist.split(',')
var finished = false;
for (var x=0; x<shitlist.length; x++) {
var thisblistitem = realshitlist[x];
if ( name == thisblistitem ) {
var willyou = confirm('User is already in the list, remove?')
if (willyou){
alert('Removed ' + name);
realshitlist.splice(x,1);
var thefork = realshitlist.toString()
GM_setValue("slistarray", thefork );
}
else{
alert('Keeping ' + name);
};
finished = true;
};
};
if ( !finished ) {
var willyou = confirm('Add user to blacklist?')
if (willyou){
alert('Added ' + name);
realshitlist[realshitlist.length] = name;
var thefork = realshitlist.toString()
GM_setValue("slistarray", thefork );
}
else{
alert('Didn\'t add ' + name);
};
};
};
//Unicoded threads
function toggleunicode( e ) {
if (GM_getValue("ununicode", true ) == true ){
GM_setValue("ununicode", false );
alert('Retarded Characters Enabled');
return;
};
if (GM_getValue("ununicode", true ) == false ){
GM_setValue("ununicode", true );
alert('Retarded Characters Disabled');
return;
};
};
//Music
function toggepicmusic( e ) {
if (GM_getValue("epicmusic", false ) == true ){
GM_setValue("epicmusic", false );
alert('Epic Music Disabled');
return;
};
if (GM_getValue("epicmusic", false ) == false ){
GM_setValue("epicmusic", true );
alert('Epic Music Enabled');
return;
};
};
//Create the menus
GM_registerMenuCommand("Style CFG", togglefpskin)
GM_registerMenuCommand("User Panel", toggleupanel)
GM_registerMenuCommand("Retarded Characters", toggleunicode)
GM_registerMenuCommand("Blacklisting", togglehitlist)
GM_registerMenuCommand("Notify Blocks", togglenotify)
GM_registerMenuCommand("Manage Blacklist", manageblistnames)
GM_registerMenuCommand("Epic Music", toggepicmusic)
//Extra User Crap
ANONUPANEL = function(param) {
var usersdats, thisuser, ntr, cloneddta, cloneuname, ntable, ntablebdy, tntd,poop;
usersdats=document.evaluate("//a[@class='bigusername']",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < usersdats.snapshotLength; i++) {
thisuser = usersdats.snapshotItem(i);
//Main table
ntable = document.createElement('table')
ntable.className = "tborder"
ntable.width = "80%"
ntable.cellSpacing = "0"
ntable.cellPadding = "5"
ntable.border = "0"
ntable.align = "center"
ntable.style.borderTopWidth = "0px;"
ntable.style.marginLeft = "0px"
ntablebdy = document.createElement('tbody')
//IGNORE
cloneddta = thisuser.cloneNode(true)
cloneddta.href = cloneddta.href.replace(/member.php\?/gi, "profile.php?do=addlist&userlist=ignore&")
cloneddta.replaceChild( document.createTextNode( 'Ignore' ),cloneddta.firstChild)
cloneddta.firstChild.innerHTML = 'Ignore'
cloneddta.style.borderBottomWidth = "0px ! important;"
cloneddta.className = ""
tntd = document.createElement('td')
tntd.className = "cbutton"
tntd.style.display = "block"
tntd.style.marginLeft = "0px"
tntd.setAttribute("onclick", 'window.location.href = \''+ cloneddta.href + '\'; return false;')
ntr = document.createElement('tr')
ntr.align = "center"
tntd.appendChild(cloneddta)
ntr.appendChild(tntd)
ntablebdy.appendChild(ntr)
//BUDDY
cloneddta = thisuser.cloneNode(true)
cloneddta.href = cloneddta.href.replace(/member.php\?/gi, "profile.php?do=addlist&userlist=buddy&")
cloneddta.replaceChild( document.createTextNode( 'Buddy' ),cloneddta.firstChild)
cloneddta.firstChild.innerHTML = 'Buddy'
cloneddta.style.borderBottomWidth = "0px ! important;"
cloneddta.className = ""
tntd = document.createElement('td')
tntd.className = "cbutton"
tntd.style.display = "block"
tntd.style.marginLeft = "0px"
tntd.setAttribute("onclick", 'window.location.href = \''+ cloneddta.href + '\'; return false;')
ntr = document.createElement('tr')
ntr.align = "center"
tntd.appendChild(cloneddta)
ntr.appendChild(tntd)
ntablebdy.appendChild(ntr)
//PM
cloneddta = thisuser.cloneNode(true)
cloneddta.href = cloneddta.href.replace(/member.php\?/gi, "private.php?do=newpm&")
cloneddta.replaceChild( document.createTextNode( 'PM' ),cloneddta.firstChild)
cloneddta.firstChild.innerHTML = 'PM'
cloneddta.style.borderBottomWidth = "0px ! important;"
cloneddta.className = ""
tntd = document.createElement('td')
tntd.className = "cbutton"
tntd.style.display = "block"
tntd.style.marginLeft = "0px"
tntd.setAttribute("onclick", 'window.location.href = \''+ cloneddta.href + '\'; return false;')
ntr = document.createElement('tr')
ntr.align = "center"
tntd.appendChild(cloneddta)
ntr.appendChild(tntd)
ntablebdy.appendChild(ntr)
//Find Posts
cloneddta = thisuser.cloneNode(true)
poop = thisuser.firstChild
if ( poop.nodeName != "#text" ) {
poop = poop.firstChild
if ( poop.nodeName != "#text" ) {
poop = poop.firstChild
};
};
cloneuname = poop.nodeValue
cloneddta.href = cloneddta.href.replace(/member.php\?/gi, "search.php?do=finduser&")
cloneddta.replaceChild( document.createTextNode( 'Stalk' ),cloneddta.firstChild)
cloneddta.firstChild.innerHTML = 'Stalk'
cloneddta.style.borderBottomWidth = "0px ! important;"
cloneddta.className = ""
tntd = document.createElement('td')
tntd.className = "cbutton"
tntd.style.display = "block"
tntd.style.marginLeft = "0px"
tntd.setAttribute("onclick", 'window.location.href = \''+ cloneddta.href + '\'; return false;')
ntr = document.createElement('tr')
ntr.align = "center"
tntd.appendChild(cloneddta)
ntr.appendChild(tntd)
ntablebdy.appendChild(ntr)
//Final appending
ntable.appendChild(ntablebdy)
thisuser.parentNode.parentNode.appendChild(ntable)
};
};
//My evil ignore list
ANONIGNORELST = function(param) {
var allthreads, thisthread, thisblistitem, poop, thrtital, pageelem, foundpageelem, dupeheader;
var ntr, ntxt1, na1, ntd, ndiv, ntb, ntable, ntbdy;
allthreads=document.evaluate("//tr/td[2]/div/a[contains(@href,'member.php')]",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
//Create the table to stuff these fuckers in
ntable = document.createElement('table')
ntable.id = 'cockbiterlist'
ntable.className = 'tborder'
ntable.width = "100%"
ntable.cellSpacing = "0"
ntable.cellPadding = "5"
ntable.border = "0"
ntable.align = "center"
ntable.style.borderStyle = 'solid'
ntable.style.borderColor = 'rgb(136, 136, 136)'
ntable.style.borderWidth = '1px 1px 1px 1px'
ntable.style.display = 'none'
ntbdy = document.createElement('tbody')
ndiv = document.createElement('div')
ndiv.className = "tcat"
ndiv.setAttribute("onclick", 'return ToggleElementEX( \'cockbiterlist\');')
ntxt1 = document.createTextNode( 'Click here to see Ignored Threads' )
ndiv.appendChild( ntxt1 )
dupeheader = document.evaluate("//form/table[3]/tbody/tr",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null).snapshotItem(0)
if ( dupeheader != undefined ){
dupeheader = dupeheader.cloneNode(true);
ntbdy.appendChild( dupeheader );
};
for (var i = 0; i < allthreads.snapshotLength; i++) {
thisthread = allthreads.snapshotItem(i);
poop = thisthread.firstChild
for (var x=0; x<shitlist.length; x++) {
thisblistitem = shitlist[x];
if ( poop.nodeValue == thisblistitem ) {
if (GM_getValue("blocknotify", false ) == true ){
alert('IGNORED USER==' + poop.nodeValue);
};
thrtital = thisthread.parentNode.parentNode.parentNode.cloneNode(true);
//thisthread.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild( thrtital );
ntbdy.appendChild( thrtital );
thisthread.parentNode.parentNode.parentNode.parentNode.removeChild( thisthread.parentNode.parentNode.parentNode );
};
};
};
pageelem=document.evaluate("//div[@class='page']",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
foundpageelem = pageelem.snapshotItem(0);
ntable.appendChild( ntbdy );
foundpageelem.appendChild( ndiv );
foundpageelem.appendChild( ntable );
};
//Autohide Blacklist
ANONAUTOPSTHIDE = function(param) {
var allthreads, thisthread, thisblistitem, poop, thrtital;
allthreads=document.evaluate("//a[@class='bigusername']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < allthreads.snapshotLength; i++) {
thisthread = allthreads.snapshotItem(i);
poop = thisthread.firstChild
if ( poop.nodeName != "#text" ) {
poop = poop.firstChild
if ( poop.nodeName != "#text" ) {
poop = poop.firstChild
};
};
for (var x=0; x<shitlist.length; x++) {
thisblistitem = shitlist[x];
if ( poop.nodeValue == thisblistitem ) {
if (GM_getValue("blocknotify", false ) == true ){
alert('IGNORED USER==' + poop.nodeValue);
};
thisthread.parentNode.parentNode.parentNode.childNodes[3].style.display = 'none';
thisthread.parentNode.parentNode.parentNode.childNodes[5].style.display = 'none';
thisthread.parentNode.parentNode.parentNode.childNodes[7].style.display = 'none';
};
};
};
};
//Posthider and back to top buttons
ANONPOSTHIDER = function(param) {
var findallposts, foundapost, creatthebutton, createtheimg;
findallposts=document.evaluate("//div[@class='postbit']",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < findallposts.snapshotLength; i++) {
foundapost = findallposts.snapshotItem(i);
//safetychecks
if ( foundapost.childNodes[1].className == 'header'){
//Post Hider
creatthebutton = document.createElement('a');
creatthebutton.setAttribute("onclick", 'return TogglePost( \''+ foundapost.id + '\');');
creatthebutton.href = '#';
createtheimg = document.createElement('img');
createtheimg.src = '/images/smilies/emot-eek.png';
createtheimg.title = 'Hide/Unhide Post'
creatthebutton.appendChild( createtheimg );
foundapost.childNodes[1].insertBefore( creatthebutton, foundapost.childNodes[1].childNodes[3] );
//Back to top
creatthebutton = document.createElement('a');
creatthebutton.href = '#poststop';
createtheimg = document.createElement('img');
createtheimg.src = '/images/smilies/emot-rolleye.png';
createtheimg.title = 'Go to Top'
creatthebutton.appendChild( createtheimg );
foundapost.childNodes[1].childNodes[1].insertBefore( creatthebutton, foundapost.childNodes[1].childNodes[1].firstChild );
//Unread Posts
if ( foundapost.style.backgroundImage == 'url( )' ){
createtheimg = document.createElement('img');
createtheimg.src = '/images/smilies/emot-sax.png';
createtheimg.title = 'Freshly Pooped!'
foundapost.childNodes[1].insertBefore( createtheimg, foundapost.childNodes[1].childNodes[3] );
};
//Hack
if ( isoify ){
foundapost.style.backgroundImage = 'url() ! important;';
};
};
};
//New stuff, Will optomize later
findallposts=document.evaluate("//div[@class='postbitnew']",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < findallposts.snapshotLength; i++) {
foundapost = findallposts.snapshotItem(i);
//safetychecks
if ( foundapost.childNodes[1].className == 'header'){
//Post Hider
creatthebutton = document.createElement('a');
creatthebutton.setAttribute("onclick", 'return TogglePost( \''+ foundapost.id + '\');');
creatthebutton.href = '#';
createtheimg = document.createElement('img');
createtheimg.src = '/images/smilies/emot-eek.png';
createtheimg.title = 'Hide/Unhide Post'
creatthebutton.appendChild( createtheimg );
foundapost.childNodes[1].insertBefore( creatthebutton, foundapost.childNodes[1].childNodes[3] );
//Back to top
creatthebutton = document.createElement('a');
creatthebutton.href = '#poststop';
createtheimg = document.createElement('img');
createtheimg.src = '/images/smilies/emot-rolleye.png';
createtheimg.title = 'Go to Top'
creatthebutton.appendChild( createtheimg );
foundapost.childNodes[1].childNodes[1].insertBefore( creatthebutton, foundapost.childNodes[1].childNodes[1].firstChild );
//Unread Posts
if ( foundapost.style.backgroundImage == 'url( )' ){
createtheimg = document.createElement('img');
createtheimg.src = '/images/smilies/emot-sax.png';
createtheimg.title = 'Freshly Pooped!'
foundapost.childNodes[1].insertBefore( createtheimg, foundapost.childNodes[1].childNodes[3] );
};
//Hack
if ( isoify ){
foundapost.style.backgroundImage = 'url() ! important;';
};
};
};
};
//ANTI-Blank Titles, Because they are getting fucking old
ANONUNBLANKTIT = function(param) {
var threadtitles, thisthreadtitle, newthreadtitle, compstr;
threadtitles=document.evaluate("//a[contains(@id,'thread_title_')]",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < threadtitles.snapshotLength; i++) {
thisthreadtitle = threadtitles.snapshotItem(i);
if ( thisthreadtitle.hasChildNodes() == false ){
newthreadtitle = document.createTextNode( 'Blank Title' );
thisthreadtitle.appendChild( newthreadtitle );
}
else {
compstr = thisthreadtitle.firstChild.nodeValue
for (var n=0; n< compstr.length; n++) {
if ( compstr.charCodeAt(n) > 122 ) {
thisthreadtitle.firstChild.nodeValue = 'Title with FUCKING unicode characters'
break;
};
};
};
};
};
//Added Javascript
ANONJSADDER = function(param) {
var theheader, modheader, addeditem, add2;
theheader = document.getElementsByTagName('head');
modheader = theheader[0];
addeditem = document.createElement('script');
addeditem.type='text/javascript';
add2 = document.createTextNode( pooscr )
addeditem.appendChild( add2 )
modheader.appendChild( addeditem );
};
//Custom Crap
ANONJSADDERCUST = function(param) {
var frostedbutts = document.getElementsByTagName('body')[0];
frostedbutts.setAttribute("onload", '')
var theheader, modheader, addeditem, add2;
theheader = document.getElementsByTagName('head');
modheader = theheader[0];
addeditem = document.createElement('script');
addeditem.type='text/javascript';
add2 = document.createTextNode( custpooscr );
addeditem.appendChild( add2 );
modheader.appendChild( addeditem );
};
//The InnerHTML was generated someplace, I forgot where though, all I did was escape the quotes
ANONPLYTHTFUKYMUSIC = function(param) {
var newembed, newobj, newparam, findbody, themusic;
themusic = FunkyMusicTable[ eval( "Math.floor( FunkyMusicTable.length * Math.random())" )]
findbody = document.getElementsByTagName('body')[0];
newobj = document.createElement('table');
newobj.innerHTML = '<tr><td>'+
' <OBJECT id=\'mediaPlayer\' width="320" height="70"'+
' classid=\'CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95\''+
' codebase=\'http:\/\/activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,02,902\''+
' standby=\'Loading Microsoft Windows Media Player components...\' type=\'application/x-oleobject\'>'+
' <param name=\'fileName\' value=\'http://www.garry.tv/img/'+ themusic +'\'>'+
' <param name=\'animationatStart\' value=\'true\'>'+
' <param name=\'transparentatStart\' value=\'true\'>'+
' <param name=\'autoStart\' value="true">'+
' <param name=\'showControls\' value="false">'+
' <param name=\'playCount\' value="666">'+
' <param name=\'Volume\' value="100">'+
' <param name=\'uiMode\' value="invisible">'+
' <EMBED type=\'application/x-mplayer2\''+
' pluginspage=\'http:\/\/microsoft.com/windows/mediaplayer/en/download/\''+
' id=\'mediaPlayer\' name=\'mediaPlayer\' displaysize=\'4\' autosize=\'-1\''+
' bgcolor=\'darkblue\' showcontrols="false" showtracker=\'-1\' playcount=\'666\' Volume="100"'+
' showdisplay=\'0\' showstatusbar=\'-1\' videoborder3d=\'-1\' width="320" height="70"'+
' src=\'http://www.garry.tv/img/'+ themusic +'\' autostart="true" designtimesp=\'5311\'>'+
' </EMBED>'+
' </OBJECT>'+
' </td></tr>';
findbody.appendChild( newobj );
};
//Stylistic Shit
ANONSKINNING = function(param) {
//This was part of the origional script.
var allOIFYLinks,thisOIFYLink, getfiles, foundfile;
allOIFYLinks=document.evaluate("//link[@href='/OIFY.css']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
//OIFY Skinning
for(var i=0;i<allOIFYLinks.snapshotLength;i++){
//If it is found...
if(allOIFYLinks.snapshotLength > 0 ){
//stick this in it's pooper
thisOIFYLink = allOIFYLinks.snapshotItem(i);
thisOIFYLink.href='styles.css?6';
//My shitty toggle feature for OIFY SKINNING
if (GM_getValue("oifyskin", true ) == true ) {
stylemolest( phallic )
};
};
};
//This fucked shit up
getfiles=document.evaluate("//link[@href='/file_styles.css?6']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
if(getfiles.snapshotLength > 0 ){
foundfile = getfiles.snapshotItem(0);
foundfile.parentNode.removeChild(foundfile)
};
};
//Bottom half of FP LOGO
ANONFPLOGOB = function(param) {
var fplogos2,thisfplogo2;
//Fing all images refering to logo-b2.gif.
fplogos2=document.evaluate("//img[@src='/logo-b.gif']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
//If they exist...
if(fplogos2.snapshotLength > 0 ){
for(var i=0;i<fplogos2.snapshotLength;i++){
thisfplogo2 = fplogos2.snapshotItem(i);
//OIFY
if( isoify ){
if (GM_getValue("oifyskin", true ) == true ) {
//Kill it.
thisfplogo2.src='';
};
};
//NORMALFP
if( !isoify ){
if (GM_getValue("skintog", false ) == true ){
//Kill it.
thisfplogo2.src='';
};
};
};
};
};
//Top half of FP LOGO - OIFY COde
ANONNOIFYLOGO = function(param) {
var fplogos,thisfplogo;
var FPBannerspace, theFPBanner, newFPbanner, FPbannertxt, newFPbannerp2;
fplogos=document.evaluate("/html/body/blink/div/div/div[2]",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
if(fplogos.snapshotLength > 0 ){
thisfplogo = fplogos.snapshotItem(0);
if (GM_getValue("oifyskin", true ) == true ){
thisfplogo.parentNode.removeChild(thisfplogo);
};
};
};
//NON OIFY FP LOGO Nuking + NonOIFY FP Banner
ANONNFPBANNER = function(param) {
var fplogos,thisfplogo,lolwut;
var FPBannerspace, theFPBanner, newFPbanner, FPbannertxt, newFPbannerp2;
lolwut=document.evaluate("//table/tbody/tr/td/marquee",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
if ( myfnlocation.search(/nosearch.php/) != -1 || lolwut.snapshotLength > 0 ) {
fplogos=document.evaluate("/html/body/div/div/div",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
}
else {
fplogos=document.evaluate("/html/body/div/div/div[2]",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
};
thisfplogo = fplogos.snapshotItem(0);
//This part is retarded
thisfplogo.parentNode.parentNode.parentNode.insertBefore(newFPbannerp2, thisfplogo.parentNode.parentNode.parentNode.firstChild )
thisfplogo.parentNode.removeChild(thisfplogo);
};
//Oify banner
ANONOIFYBANNER = function(param) {
var allOIFYBanners, thisOIFYBanner, newbanner, bannertxt, newbannerp2;
allOIFYBanners = document.evaluate("//center/a[@href='http://forums.facepunchstudios.com/forumdisplay.php?f=56']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < allOIFYBanners.snapshotLength; i++) {
thisOIFYBanner = allOIFYBanners.snapshotItem(i);
if (GM_getValue("oifyskin", true ) == true ){
newbannerp2 = document.createElement('center');
newbanner = document.createElement('blink');
newbanner.innerHTML = oifybannertext
newbanner.style.color = "#0f0 ! important";
newbanner.style.font = "40px System ! important";
newbannerp2.appendChild( newbanner );
thisOIFYBanner.insertBefore(newbannerp2, thisOIFYBanner.firstChild)
};
if (GM_getValue("oifyskin", true ) == false ){
thisOIFYBanner.parentNode.removeChild(thisOIFYBanner)
};
};
};
//Fix OIFY Spoiler tags
ANONOIFYSTAGS = function(param) {
var tspoilers, curspoiler, modspoiler, newspoiler, mystyles;
tspoilers=document.evaluate("//div[3]/div/span",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < tspoilers.snapshotLength; i++) {
//If this is the OIFY, I'm using the results of the style fix script for this.
curspoiler = tspoilers.snapshotItem(i)
curspoiler.style.color = '#111'
curspoiler.style.background = '#111 ! important'
};
};
//Reporting...
ANONOIFYREPORT = function(param) {
var reporting,thisreport,newreport;
reporting=document.evaluate("//a[ starts-with(@href,'/report.php?' ) ]",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < reporting.snapshotLength; i++) {
thisreport = reporting.snapshotItem(i);
newreport = document.createTextNode( oifyreporttext );
thisreport.removeChild(thisreport.firstChild)
thisreport.appendChild(newreport)
};
};
//Favicon
ANONFAVICOMOD = function(param) {
var head, magicalico;
head = document.getElementsByTagName('head')[0];
if (!head) { return; }
magicalico = document.createElement('link');
magicalico.rel = 'SHORTCUT ICON'
magicalico.href = newfavicon;
head.appendChild(magicalico);
};
//Banword Bypass...
ANONREPLYRAPE = function(param) {
//var quickreplys, advreply, thisitem, textcopy, rapedtext;
var textelid, textelname, brotherelem, cocksdiv, cockstxt, cocksscr, cocksscrT, mycruddyjs;
var crapmenushell, crapmenuitem1, crapmenuitem2, crapmenuitem3;
if ( myfnlocation.search(/showthread.php/) != -1 ) {
textelid = "vB_Editor_QR_textarea";
brotherelem = document.getElementById("vB_Editor_QR").childNodes[1].childNodes[0];
textelname = "Quick Reply"
} else if ( myfnlocation.search(/newreply.php/) != -1 ) {
textelid = "vB_Editor_001_textarea";
brotherelem = findallposts=document.evaluate("//input[@name='preview']",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null).snapshotItem(0);
textelname = "Advanced Reply"
} else {
textelid = "COCKFIGHT"
};
if ( textelid != "COCKFIGHT" ) {
mycruddyjs = "function RapeMYFace( rapemeth ) {" +
" var quickreplys = document.getElementById('" + textelid + "');" +
" if (quickreplys) {" +
" var textcopy = quickreplys.value;" +
" var rapedtext = '';" +
" if ( rapemeth == 0 ) {" +
" var cockless = ['[b]PENIS[/b]', '[i]PENIS[/i]', '[B]PENIS[/B]', '[I]PENIS[/I]'];" +
" var pooponme = '[b]PENIS[/b]';" +
" var methotype = ' BBcode (old)';" +
" } else if ( rapemeth == 1 ) {" +
" var cockless = ['[b] [/b]PENIS', '[i] [/i]PENIS', '[B] [/B]PENIS', '[I] [/I]PENIS'];" +
" var pooponme = '[b] [/b]PENIS';" +
" var methotype = ' BBcode (new)';" +
" } else if ( rapemeth == 2 ) {" +
" var cockless = ['\u008FPENIS', '\u008DPENIS', '\u009DPENIS'];" +
" var pooponme = '\u008FPENIS';" +
" var methotype = ' Unicode (single)';" +
" } else if ( rapemeth == 3 ) {" +
" var cockless = ['\u008FPENIS\u008F', '\u008DPENIS\u008D', '\u009DPENIS\u009D'];" +
" var pooponme = '\u008FPENIS\u008F';" +
" var methotype = ' Unicode (double)';" +
" } else if ( rapemeth == 4 ) {" +
" var cockless = ['[b] [/b]PENIS', '[i] [/i]PENIS', '[B] [/B]PENIS', '[I] [/I]PENIS', '\u008FPENIS', '\u008DPENIS', '\u009DPENIS'];" +
" var pooponme = '[b] [/b]PENIS';" +
" var methotype = ' Paranoid (lol)';" +
" } else {" +
" var cockless = ['ERROR', 'BITCH', 'AT', 'MORPHOLOGY53'];" +
" var pooponme = 'ERROR';" +
" var methotype = ' OSHI-';" +
" };" +
" for (var n=0; n< textcopy.length; n++) {" +
" if ( textcopy.charCodeAt(n) > 122 || textcopy.charCodeAt(n) < 65) {" +
" rapedtext = rapedtext + textcopy.charAt(n);" +
" } else {" +
" pooponme = cockless[ Math.floor(Math.random() * cockless.length) ];" +
" pooponme = pooponme.replace(/PENIS/, textcopy.charAt(n) );" +
" rapedtext = rapedtext + pooponme;" +
" };" +
" };" +
" quickreplys.value = rapedtext;" +
" alert('"+ textelname +"'+ methotype +' Done!');" +
" } else {" +
" alert('"+ textelname +"'+ methotype +' Failed!');" +
" };" +
"};"
//lolscr
cocksscr = document.createElement('script');
cocksscr.type='text/javascript';
cocksscrT = document.createTextNode( mycruddyjs )
cocksscr.appendChild( cocksscrT )
//SHitty Menu
crapmenushell = document.createElement('div')
crapmenushell.className = "SpecialPages"
crapmenushell.style.display = "none"
crapmenushell.id = "ListFaceRaper"
//SHitty Menu Item 1
crapmenuitem1 = document.createElement('p')
crapmenuitem1.innerHTML = "<a href='#' onclick=\"RapeMYFace( 0 ); return ToggleDiv('ListFaceRaper', true);\">BBCode Rape (old)</a> -- Uses BBCode to Bypass Smartness (h2ooooo)"
crapmenushell.appendChild(crapmenuitem1)
//SHitty Menu Item 2
crapmenuitem1 = document.createElement('p')
crapmenuitem1.innerHTML = "<a href='#' onclick=\"RapeMYFace( 1 ); return ToggleDiv('ListFaceRaper', true);\">BBCode Rape (new)</a> -- Uses BBCode to Bypass Smartness, newer algorithm (h2ooooo)"
crapmenushell.appendChild(crapmenuitem1)
//SHitty Menu Item 3
crapmenuitem1 = document.createElement('p')
crapmenuitem1.innerHTML = "<a href='#' onclick=\"RapeMYFace( 2 ); return ToggleDiv('ListFaceRaper', true);\">Unicode Rape (single)</a> -- Uses Invalid Unicode Characters to Bypass Smartness (Dustyjo)"
crapmenushell.appendChild(crapmenuitem1)
//SHitty Menu Item 4
crapmenuitem1 = document.createElement('p')
crapmenuitem1.innerHTML = "<a href='#' onclick=\"RapeMYFace( 3 ); return ToggleDiv('ListFaceRaper', true);\">Unicode Rape (double)</a> -- Uses Invalid Unicode Characters to Bypass Smartness (Morphology53)"
crapmenushell.appendChild(crapmenuitem1)
//SHitty Menu Item 5
crapmenuitem1 = document.createElement('p')
crapmenuitem1.innerHTML = "<a href='#' onclick=\"RapeMYFace( 4 ); return ToggleDiv('ListFaceRaper', true);\">Hail Mary (wut)</a> -- Uses Both Methods to Bypass Smartness (Morphology53)"
crapmenushell.appendChild(crapmenuitem1)
//Create the button
cocksdiv = document.createElement('div')
cocksdiv.className = "cbutton"
cocksdiv.style.width = "60px"
cocksdiv.style.marginTop = "6px"
cocksdiv.setAttribute("onclick", "return ToggleDiv('ListFaceRaper', true);")
cockstxt = document.createTextNode('COCKS!')
brotherelem.parentNode.appendChild(cocksscr)
cocksdiv.appendChild(cockstxt)
brotherelem.parentNode.appendChild(cocksdiv)
brotherelem.parentNode.appendChild(crapmenushell)
};
};
//Call all of the anonymous functions if necessary
//Javascript adder
ANONJSADDERCUST('nooo')
//SKINNING
ANONSKINNING('noo')
//OIFY CRAP
if ( isoify ){
ANONJSADDER('nooo')
//Skin related
if (GM_getValue("oifyskin", true ) == true ){
//Oify Music
if (GM_getValue("epicmusic", false ) == true ){
ANONPLYTHTFUKYMUSIC('noo')
};
//Spoiler tag fix
ANONOIFYSTAGS('noo')
ANONNOIFYLOGO('noo')
//reporting
ANONOIFYREPORT('noo')
//Bottom FP Logo Crap
ANONFPLOGOB('noo')
ANONFAVICOMOD('noo')
};
ANONOIFYBANNER('noo')
ANONREPLYRAPE('noo')
};
//NON-OIFY CRAP
if ( !isoify ){
if (GM_getValue("skintog", false ) == true ){
ANONJSADDER('nooo')
//FP BAnner
ANONNFPBANNER('noo')
//Bottom FP Logo Crap
ANONFPLOGOB('noo')
};
};
//Thread Shit
if ( myfnlocation.search(/showthread/) != -1 || myfnlocation.search(/showpost/) != -1 ){
//User PanelF, posthider, and jump to top
if (GM_getValue("upanel", true ) == true ){
ANONUPANEL('noo')
ANONPOSTHIDER('noo')
};
//Post Ignore list
if (GM_getValue("hitlist", true ) == true ){
ANONAUTOPSTHIDE('noo')
};
};
//Forum Shit
if ( myfnlocation.search(/forumdisplay/) != -1 ){
//Blank Titles
if (GM_getValue("ununicode", true ) == true ){
ANONUNBLANKTIT('noo')
};
//Thread Ignore list
if (GM_getValue("hitlist", true ) == true ){
ANONIGNORELST('noo')
};
};
//This Space for Rent!