Removes statistics nobody gives a fuck about to make the postbit slimmer
- // ==UserScript==
- // @name Hack Forums - Unclutter
- // @namespace Doctor Blue
- // @description Removes statistics nobody gives a fuck about to make the postbit slimmer
- // @include *hackforums.net*
- // @require http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js
- // @version 0.2
- // @grant none
- // ==/UserScript==
- // Prevent conflicts with other userscripts
- $j = $.noConflict(true)
- function forumdisplay() {
- // Compile regular expressions
- // Get all the thread rows
- var $threads = $j('tr:has(.forumdisplay_sticky), tr:has(.forumdisplay_regular)')
- console.log($threads.length)
- // Adjust row height
- $threads.css('height', '33px')
- $j('.quick_jump')
- .css('position', 'relative')
- .css('bottom', '2px')
- // Remove page list
- $threads.find('div > span > .smalltext').remove()
- // Put author to the right of title instead of under
- $threads.find('.author')
- .removeClass('smalltext')
- .css('display', 'inline-block')
- .before(' - ')
- // Remove line break from last post column
- $threads.find('.lastpost').each(function() {
- var split = $j(this).html().split("<br>")
- console.log(split[1] + " - " + split[0])
- $j(this).html(split[1] + " - " + split[0])
- })
- }
- function showthread() {
- // Compile regular expressions
- var rxReputation = new RegExp("(Reputation: .*?</a>)")
- var rxPrestige = new RegExp("(Prestige: [0-9]+?)")
- var rxWarning = new RegExp("(Warning Level: .*?</a>)")
- // Resize avatar to a maximum of 50x50 pixels
- $j('.post_avatar img')
- .css('max-height', '50px')
- .css('max-width', '50px')
- .removeAttr('height')
- .removeAttr('width')
- // Remove userstars
- $j('.userstars').remove()
- // Put userbar's alt text before usertitle
- $j('.post_author').each(function() {
- var $userbar = $j(this).find('img[src*="groupimages"]')
- var usergroup = $j($userbar).attr('alt')
- // Replace some group names
- switch(usergroup) {
- case undefined: usergroup = "Regular"; break;
- case "HF l33t": usergroup = "L33T"; break;
- case "HF Ub3r": usergroup = "UB3R"; break;
- case "HF 3p1c": usergroup = "3P1C"; break;
- case "HF Writers": usergroup = "Writer"; break;
- case "Mentors": usergroup = "Mentor"; break;
- case "Administrators": usergroup = "Administrator"; break;
- }
- if(usergroup == undefined) usergroup = "Regular"
- $j($userbar).remove()
- $j(this).find('span.smalltext').prepend(usergroup + " - ")
- })
- // Remove all stats except reputation and warning level
- $j('.post_author_info').each(function() {
- // Extract interesting statistics
- var reputation = $j(this).html().match(rxReputation)
- if(reputation === null) reputation = $j(this).html().match(rxPrestige) // Get prestige if staff/admin
- reputation = reputation[1]
- var warning = $j(this).html().match(rxWarning)[1]
- // Combine and insert
- $j(this).html(reputation + "<br />\n" + warning)
- })
- // Replace online/offline/away icons
- $j('img[src*="buddy_online"]').attr('src', 'https://shellsec.pw/images/modern_blue/buddy_online.png')
- $j('img[src*="buddy_offline"]').attr('src', 'https://shellsec.pw/images/modern_blue/buddy_offline.png')
- $j('img[src*="buddy_away"]').attr('src', 'https://shellsec.pw/images/modern_blue/buddy_offline.png')
- $j('img[src*="buddy"]')
- .css('position', 'relative')
- .css('bottom', '7px')
- }
- if(window.location.href.indexOf("forumdisplay.php") != -1) forumdisplay() // comment out to not change forumdisplay
- if(window.location.href.indexOf("showthread.php") != -1) showthread()