• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 18:39
CEST 00:39
KST 07:39
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Serral wins HomeStory Cup 2914Serral wins Maestros of the Game 243ByuL, and the Limitations of Standard Play3Team Liquid Map Contest #22: Results and Winners7Code S Season 2 (2026): RO4 and Finals Preview12
Community News
SC4ALL II announced - $10,000 prize pool, Dec 5-63PIG STY FESTIVAL 8.0! (13 - 23 August)8Neeb returns to progaming; rejoins ONSYDE15Weekly Cups (July 20-26): Early returns on 5.0.16b8IntoTheTV X SOOP SC2 League : Weekly & Monthly5
StarCraft 2
General
Life's Huge Gambling Spree After IEM Katowice 2014 Neeb returns to progaming; rejoins ONSYDE SC4ALL II: StarCraft 2 Player Announcement 1/8 Balance hotfix patch 5.0.16b (July 16) Clem: "I don't have that much hope in Blizzard"
Tourneys
Sparkling Tuna Cup - Weekly Open Tournament SC4ALL II announced - $10,000 prize pool, Dec 5-6 PIG STY FESTIVAL 8.0! (13 - 23 August) IntoTheTV X SOOP SC2 League : Weekly & Monthly Crank Gathers Season 4: BW vs SC2 Team League
Strategy
[G] Having the right mentality to improve
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 536 Railroad Switch The PondCast: SC2 News & Results Mutation # 535 Assembly of Vengeance Mutation # 534 Burning Evacuation
Brood War
General
ASL22 General Discussion Making an Online Broodwar Manager Game BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion BW Drama: Terror's Debt Incident + C9 disbanding
Tourneys
2v2v2v2 Tournament Escore Tournament - Season 3 [Megathread] Daily Proleagues BSL LAN Party - Kraków 29-30 August - OPEN SIGNUPS
Strategy
Simple Questions, Simple Answers Fighting Spirit mining rates Odyssey Mineral Stack Saturation PvT advise for noobs
Other Games
General Games
Stormgate/Frost Giant Megathread Beyond All Reason Nintendo Switch Thread Path of Exile ZeroSpace Early Access is Now Live!
Dota 2
Looking for a Dota Mentor Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish TSM pausing esports and CLG Dead
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Power Rank TL Mafia Community Thread NeO.D_StephenKing vs This Guy From 1 Million Dance
Community
General
Russo-Ukrainian War Thread European Politico-economics QA Mega-thread Artificial Intelligence Thread US Politics Mega-thread Things Aren’t Peaceful in Palestine
Fan Clubs
The Scarlett Fan Club The IdrA Fan Club The HerO Fan Club!
Media & Entertainment
Movie Discussion! Anime Discussion Thread Series you have seen recently... [Req][Books] Good Fantasy/SciFi books
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion MLB/Baseball 2023 McBoner: A hockey love story
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Simple Questions Simple Answers FPS when play League Of Legend on laptop
TL Community
Northern Ireland Global Starcraft The Automated Ban List
Blogs
What is a Gamer?
TrAiDoS
Hello guys!
LIN1s
ASL S22 English Commentary…
namkraft
Poker (part 2)
Nebuchad
An Exploration of th…
waywardstrategy
Customize Sidebar...

Website Feedback

Closed Threads



Active: 3530 users

TL BW Userscript - Page 5

Forum Index > BW General
Post a Reply
Prev 1 2 3 4 5 6 7 8 9 Next All
WhuazGoodJaggah
Profile Blog Joined January 2009
Lesotho777 Posts
Last Edited: 2011-08-25 01:36:23
August 25 2011 01:36 GMT
#81
On August 25 2011 07:23 jpak wrote:
Show nested quote +
On August 25 2011 02:27 WhuazGoodJaggah wrote:
I added a function to remove all streams except bw streams.
let bw streams rule tl.net MUAHAHAHHAHAH
var let_bw_streams_rule_the_featured_list = function() {
var bwNodes = new Array();

// get all the bw streams
var featuredStreams = nextObject(document.getElementById("nav_streams"));
featuredStreams = nextObject(featuredStreams.firstChild).firstChild.firstChild;
for (var i=0; i < featuredStreams.childNodes.length; i++) {
var node = featuredStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

var moreStreams = document.getElementById("more_streams");
for (var i=0; i < moreStreams.childNodes.length; i++) {
var node = moreStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

// remove all the old featured streams
while (featuredStreams.hasChildNodes()) {
featuredStreams.removeChild(featuredStreams.firstChild);
}

// insert bw streams into the featured streams list
for (var i=0; i < bwNodes.length; i++) {
featuredStreams.appendChild(bwNodes[i]);
featuredStreams.appendChild(document.createElement("br"));
}
}


just insert the function somewhere between other functions (f.e. below move_section) and then call it where the other functions (like move_section) are called.

+ Show Spoiler [full script] +
// ==UserScript==
// @name TLBW
// @description Userscript to make teamliquid more useful for Brood War fans
// @version 2.4
// @include [url=http://teamliquid.net/*]http://teamliquid.net/*[/url]
// @include [url=http://www.teamliquid.net/*]http://www.teamliquid.net/*[/url]
// @exclude [url=http://teamliquid.net/sc2/*]http://teamliquid.net/sc2/*[/url]
// @exclude [url=http://teamliquid.net/store/*]http://teamliquid.net/store/*[/url]
// @exclude [url=http://teamliquid.net/tlfe/*]http://teamliquid.net/tlfe/*[/url]
// @exclude [url=http://teamliquid.net/tournaments/*]http://teamliquid.net/tournaments/*[/url]
// @exclude [url=http://teamliquid.net/vods/*]http://teamliquid.net/vods/*[/url]
// @exclude [url=http://www.teamliquid.net/sc2/*]http://www.teamliquid.net/sc2/*[/url]
// @exclude [url=http://www.teamliquid.net/store/*]http://www.teamliquid.net/store/*[/url]
// @exclude [url=http://www.teamliquid.net/tlfe/*]http://www.teamliquid.net/tlfe/*[/url]
// @exclude [url=http://www.teamliquid.net/tournaments/*]http://www.teamliquid.net/tournaments/*[/url]
// @exclude [url=http://www.teamliquid.net/vods/*]http://www.teamliquid.net/vods/*[/url]
// @run-at document-end
// ==/UserScript==

/* Notes: This should be fully compatible with Firefox (Greasemonkey)/Chrome/Opera.
* Opera users should replace the .user.js extension with just a .js before putting it into the userjs directory.
*
* Changelog:
* 2.4: Changed the link when clicking on the TLPD banner to go directly to the BW TLPD
* 2.3: Fixed the script run time to properly change everything before the page shows up on all 3 browsers
* 2.2: Swapped store and power rank links on the top bar
* Moved around the order in which the default changes take place so more visibly obvious changes occur first (before the page fully loads)
* 2.1: Added all of teamliquid and blacklisted specific pages to run the script on, instead of whitelisting every individual page
* 2.0: Abstracted the section relocation stuff
*/

/* Sections: news, general, sc2, bw, games, blogs, replays, calendar, streams, tlpd, liquipedia, tsl, poll */

// Wrap the script in an anonymous function so Opera doesn't blow up
(function() {

function main() {
var news = new Section("nav_news_left_mid", 1, false);
var general = new Section("nav_general", 1, false);
var sc2 = new Section("nav_starcraft2", 1, false);
var bw = new Section("nav_broodwar", 1, false);
var games = new Section("nav_games", 1, false);
var blogs = new Section("nav_blogs", 1, false);
var replays = new Section("nav_replays", 1, false);

var calendar = new Section("nav_calendar", 2, true);
var streams = new Section("nav_streams", 1, true);
var tlpd = new Section("nav_tlpd", 1, true);
var liquipedia = new Section("nav_wiki", 1, true);
var tsl = new Section("nav_tslforum", 1, true);
var poll = new Section("nav_poll", 1, true);

/* Swap Power Rank and Store */
var links = document.getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
if (links[i].getAttribute("href") == "/powerrank/") {
links[i].href = "/store/";
links[i].innerHTML = "Store";
}
else if (links[i].getAttribute("href") == "/store/") {
links[i].href = "/powerrank/";
links[i].innerHTML = "Power Rank";
}
}

/* Remove SC2 Elo rank display */
var rank1 = nextObject(document.forms.namedItem("frm_tlpd_search"));
var rank2 = nextObject(rank1);
rank1.parentNode.removeChild(rank1);
rank2.parentNode.removeChild(rank2);

/* Move the Brood War forums above the SC2 forums */
move_section(bw, sc2);

/* Move replays to above poll */
move_section(replays, poll);

/* Remove poll */
remove_section(poll);

/* Only BW streams are important to me */
let_bw_streams_rule_the_featured_list();

/* Move streams to above TSL */
move_section(streams, tsl);

/* Change default tlpd search to BW (Korea) */
document.forms.namedItem("frm_tlpd_search").elements.namedItem("type").children[3].selected = true;
document.getElementById("nav_tlpd").href = "/tlpd/korean";

/* Change liquipedia search to Brood War liquipedia */
for (var i = 0; i < document.forms.length; i++) {
var form = document.forms[i];
if (form.action == "http://wiki.teamliquid.net/starcraft2/index.php")
form.action = "http://wiki.teamliquid.net/starcraft/index.php";
}

}

function Section(id, count, on_right) {
this.on_right = on_right;
this.elements = new Array();

var link = document.getElementById(id);
this.elements.push(link);
for (var x = 0; x < count; x++) {
this.elements.push(nextObject(link));
}
}

var remove_section = function(section) {
for (var x = 0; x < section.elements.length; x++) {
var node = section.elements[x];
node.parentNode.removeChild(node);
}
}

var prepend_section = function(section, location) {
var loc = location.elements[0];
for (var x = 0; x < section.elements.length; x++) {
var node = section.elements[x];
loc.parentNode.insertBefore(node, loc);
}
}

var move_section = function(from, to) {
remove_section(from);
prepend_section(from, to);
}

var let_bw_streams_rule_the_featured_list = function() {
var bwNodes = new Array();

// get all the bw streams
var featuredStreams = nextObject(document.getElementById("nav_streams"));
featuredStreams = nextObject(featuredStreams.firstChild).firstChild.firstChild;
for (var i=0; i < featuredStreams.childNodes.length; i++) {
var node = featuredStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

var moreStreams = document.getElementById("more_streams");
for (var i=0; i < moreStreams.childNodes.length; i++) {
var node = moreStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

// remove all the old featured streams
while (featuredStreams.hasChildNodes()) {
featuredStreams.removeChild(featuredStreams.firstChild);
}

// insert bw streams into the featured streams list
for (var i=0; i < bwNodes.length; i++) {
featuredStreams.appendChild(bwNodes[i];
featuredStreams.appendChild(document.createElement("br"));
}
}

/* Adapted from [url=http://v3.thewatchmakerproject.com/journal/329/]http://v3.thewatchmakerproject.com/journal/329/[/url] */
var nextObject = function(el) {
var n = el;
do n = n.nextSibling;
while (n && n.nodeType != 1);
return n;
}

var previousObject = function(el) {
var p = el;
do p = p.previousSibling;
while (p && p.nodeType != 1);
return p;
}

if (window.opera) {
if (document.readyState==="loading") {
if (window.addEventListener)
window.addEventListener("DOMContentLoaded", main, false);
else if (window.attachEvent)
window.attachEvent("onload", main);
}
else if (document.readyState==="complete") {
main();
}
else {
if (window.addEventListener)
window.addEventListener("load", main, false);
else if (window.attachEvent)
window.attachEvent("onload", main);
}
}
else {
main();
}
})();


when I try the full script, it says an 800A03F4 error with "expected /" on line 94 char 49.

Love the efforts, everyone!!


I uploaded it to userscripts.org, http://userscripts.org/scripts/show/111240.
small dicks have great firepower
insanet
Profile Joined January 2010
Peru439 Posts
August 25 2011 01:44 GMT
#82
this is working great, thank you.
Cambium
Profile Blog Joined June 2004
United States16368 Posts
Last Edited: 2011-08-26 05:25:58
August 25 2011 01:55 GMT
#83
Filtered Calendar (code below)
[image loading]


http://userscripts.org/scripts/show/111242

notes:
- pretty messy, I just wanted it to work
- I removed the toggle button and show all events by default
- so far, only OSL, MSL, SPL and STX are shown, more can be added in isSCBW method by including additional tag
- there's nothing stopping you from adding your favourite SC2 tourneys such as "[GSL] "
- updated on 08/26/2011


// ==UserScript==
// @name calendar fix
// @namespace tl
// @include h__p://www.teamliquid.net/*
// ==/UserScript==
//
//

// show all and hide the toggle
var toggle = document.getElementById( "span_more_events" );
toggle.style.display = "block";
toggle = document.getElementById( "link_show_more_events" );
toggle.style.display = "none";

// 'less' events
var node;
var par;
var parentXPath;
var nodeXPath;
for( i = 1; i <= 5; i++ ) {
nodeXPath = "/html/body/table/tbody/tr/td/table[2]/tbody/tr/td[3]/table/tbody/tr/td/div[2]/table/tbody/tr[" + i + "]/td[2]/a";
node = findXPathNode( nodeXPath );
if( !isSCBW( node ) ){
parentXPath = "/html/body/table/tbody/tr/td/table[2]/tbody/tr/td[3]/table/tbody/tr/td/div[2]/table/tbody/tr[" + i + "]";
par = findXPathNode( parentXPath );
par.style.display = "none";
}
}
// 'more' events
for( i = 1; i <= 15; i++ ){
nodeXPath = "/html/body/table/tbody/tr/td/table[2]/tbody/tr/td[3]/table/tbody/tr/td/div[2]/div[2]/table/tbody/tr[" + i + "]/td[2]/a";
node = findXPathNode( nodeXPath );
if( !isSCBW( node ) ){
parentXPath = "/html/body/table/tbody/tr/td/table[2]/tbody/tr/td[3]/table/tbody/tr/td/div[2]/div[2]/table/tbody/tr[" + i + "]";
par = findXPathNode( parentXPath );
par.style.display = "none";
}
}

function isSCBW( node )
{
var tags = new Array( "[OSL] ", "[MSL] ", "[SPL] ", "[STX] ", "[GC] " ); // GC = Gambit Cup
var str = node.innerHTML;
for (var i in tags) {
if (str.indexOf(tags[i]) != -1) {
return true;
}
}
return false;
}

function findXPathNode(xpath, start,doc)
{
var result = (doc == null ? document : doc).evaluate(xpath,(start == null ? document : start), null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE ,null);
return (result.snapshotLength > 0 ? result.snapshotItem(0) : null);
}
When you want something, all the universe conspires in helping you to achieve it.
WhuazGoodJaggah
Profile Blog Joined January 2009
Lesotho777 Posts
Last Edited: 2011-08-25 02:16:22
August 25 2011 02:10 GMT
#84
niceööö
A little suggestion for isSCBW, to make it easier to add and remove tags
function isSCBW( node )
{
var tags = new Array( "[OSL] ", "[MSL] ", "[SPL] ", "[STX] ", "[GC] " ); // GC = Gambit Cup
var str = node.innerHTML;
for (var i in tags) {
if (str.indexOf(tags[i]) != -1) {
return true;
}
}
return false;
}
small dicks have great firepower
soujiro_
Profile Joined June 2010
Uruguay5195 Posts
August 25 2011 02:14 GMT
#85
On August 25 2011 10:36 WhuazGoodJaggah wrote:
Show nested quote +
On August 25 2011 07:23 jpak wrote:
On August 25 2011 02:27 WhuazGoodJaggah wrote:
I added a function to remove all streams except bw streams.
let bw streams rule tl.net MUAHAHAHHAHAH
var let_bw_streams_rule_the_featured_list = function() {
var bwNodes = new Array();

// get all the bw streams
var featuredStreams = nextObject(document.getElementById("nav_streams"));
featuredStreams = nextObject(featuredStreams.firstChild).firstChild.firstChild;
for (var i=0; i < featuredStreams.childNodes.length; i++) {
var node = featuredStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

var moreStreams = document.getElementById("more_streams");
for (var i=0; i < moreStreams.childNodes.length; i++) {
var node = moreStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

// remove all the old featured streams
while (featuredStreams.hasChildNodes()) {
featuredStreams.removeChild(featuredStreams.firstChild);
}

// insert bw streams into the featured streams list
for (var i=0; i < bwNodes.length; i++) {
featuredStreams.appendChild(bwNodes[i]);
featuredStreams.appendChild(document.createElement("br"));
}
}


just insert the function somewhere between other functions (f.e. below move_section) and then call it where the other functions (like move_section) are called.

+ Show Spoiler [full script] +
// ==UserScript==
// @name TLBW
// @description Userscript to make teamliquid more useful for Brood War fans
// @version 2.4
// @include [url=http://teamliquid.net/*]http://teamliquid.net/*[/url]
// @include [url=http://www.teamliquid.net/*]http://www.teamliquid.net/*[/url]
// @exclude [url=http://teamliquid.net/sc2/*]http://teamliquid.net/sc2/*[/url]
// @exclude [url=http://teamliquid.net/store/*]http://teamliquid.net/store/*[/url]
// @exclude [url=http://teamliquid.net/tlfe/*]http://teamliquid.net/tlfe/*[/url]
// @exclude [url=http://teamliquid.net/tournaments/*]http://teamliquid.net/tournaments/*[/url]
// @exclude [url=http://teamliquid.net/vods/*]http://teamliquid.net/vods/*[/url]
// @exclude [url=http://www.teamliquid.net/sc2/*]http://www.teamliquid.net/sc2/*[/url]
// @exclude [url=http://www.teamliquid.net/store/*]http://www.teamliquid.net/store/*[/url]
// @exclude [url=http://www.teamliquid.net/tlfe/*]http://www.teamliquid.net/tlfe/*[/url]
// @exclude [url=http://www.teamliquid.net/tournaments/*]http://www.teamliquid.net/tournaments/*[/url]
// @exclude [url=http://www.teamliquid.net/vods/*]http://www.teamliquid.net/vods/*[/url]
// @run-at document-end
// ==/UserScript==

/* Notes: This should be fully compatible with Firefox (Greasemonkey)/Chrome/Opera.
* Opera users should replace the .user.js extension with just a .js before putting it into the userjs directory.
*
* Changelog:
* 2.4: Changed the link when clicking on the TLPD banner to go directly to the BW TLPD
* 2.3: Fixed the script run time to properly change everything before the page shows up on all 3 browsers
* 2.2: Swapped store and power rank links on the top bar
* Moved around the order in which the default changes take place so more visibly obvious changes occur first (before the page fully loads)
* 2.1: Added all of teamliquid and blacklisted specific pages to run the script on, instead of whitelisting every individual page
* 2.0: Abstracted the section relocation stuff
*/

/* Sections: news, general, sc2, bw, games, blogs, replays, calendar, streams, tlpd, liquipedia, tsl, poll */

// Wrap the script in an anonymous function so Opera doesn't blow up
(function() {

function main() {
var news = new Section("nav_news_left_mid", 1, false);
var general = new Section("nav_general", 1, false);
var sc2 = new Section("nav_starcraft2", 1, false);
var bw = new Section("nav_broodwar", 1, false);
var games = new Section("nav_games", 1, false);
var blogs = new Section("nav_blogs", 1, false);
var replays = new Section("nav_replays", 1, false);

var calendar = new Section("nav_calendar", 2, true);
var streams = new Section("nav_streams", 1, true);
var tlpd = new Section("nav_tlpd", 1, true);
var liquipedia = new Section("nav_wiki", 1, true);
var tsl = new Section("nav_tslforum", 1, true);
var poll = new Section("nav_poll", 1, true);

/* Swap Power Rank and Store */
var links = document.getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
if (links[i].getAttribute("href") == "/powerrank/") {
links[i].href = "/store/";
links[i].innerHTML = "Store";
}
else if (links[i].getAttribute("href") == "/store/") {
links[i].href = "/powerrank/";
links[i].innerHTML = "Power Rank";
}
}

/* Remove SC2 Elo rank display */
var rank1 = nextObject(document.forms.namedItem("frm_tlpd_search"));
var rank2 = nextObject(rank1);
rank1.parentNode.removeChild(rank1);
rank2.parentNode.removeChild(rank2);

/* Move the Brood War forums above the SC2 forums */
move_section(bw, sc2);

/* Move replays to above poll */
move_section(replays, poll);

/* Remove poll */
remove_section(poll);

/* Only BW streams are important to me */
let_bw_streams_rule_the_featured_list();

/* Move streams to above TSL */
move_section(streams, tsl);

/* Change default tlpd search to BW (Korea) */
document.forms.namedItem("frm_tlpd_search").elements.namedItem("type").children[3].selected = true;
document.getElementById("nav_tlpd").href = "/tlpd/korean";

/* Change liquipedia search to Brood War liquipedia */
for (var i = 0; i < document.forms.length; i++) {
var form = document.forms[i];
if (form.action == "http://wiki.teamliquid.net/starcraft2/index.php")
form.action = "http://wiki.teamliquid.net/starcraft/index.php";
}

}

function Section(id, count, on_right) {
this.on_right = on_right;
this.elements = new Array();

var link = document.getElementById(id);
this.elements.push(link);
for (var x = 0; x < count; x++) {
this.elements.push(nextObject(link));
}
}

var remove_section = function(section) {
for (var x = 0; x < section.elements.length; x++) {
var node = section.elements[x];
node.parentNode.removeChild(node);
}
}

var prepend_section = function(section, location) {
var loc = location.elements[0];
for (var x = 0; x < section.elements.length; x++) {
var node = section.elements[x];
loc.parentNode.insertBefore(node, loc);
}
}

var move_section = function(from, to) {
remove_section(from);
prepend_section(from, to);
}

var let_bw_streams_rule_the_featured_list = function() {
var bwNodes = new Array();

// get all the bw streams
var featuredStreams = nextObject(document.getElementById("nav_streams"));
featuredStreams = nextObject(featuredStreams.firstChild).firstChild.firstChild;
for (var i=0; i < featuredStreams.childNodes.length; i++) {
var node = featuredStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

var moreStreams = document.getElementById("more_streams");
for (var i=0; i < moreStreams.childNodes.length; i++) {
var node = moreStreams.childNodes[i];
if (node.nodeName == "A" && node.innerHTML.indexOf("[BW] ") != -1) {
bwNodes.push(node);
}
}

// remove all the old featured streams
while (featuredStreams.hasChildNodes()) {
featuredStreams.removeChild(featuredStreams.firstChild);
}

// insert bw streams into the featured streams list
for (var i=0; i < bwNodes.length; i++) {
featuredStreams.appendChild(bwNodes[i];
featuredStreams.appendChild(document.createElement("br"));
}
}

/* Adapted from [url=http://v3.thewatchmakerproject.com/journal/329/]http://v3.thewatchmakerproject.com/journal/329/[/url] */
var nextObject = function(el) {
var n = el;
do n = n.nextSibling;
while (n && n.nodeType != 1);
return n;
}

var previousObject = function(el) {
var p = el;
do p = p.previousSibling;
while (p && p.nodeType != 1);
return p;
}

if (window.opera) {
if (document.readyState==="loading") {
if (window.addEventListener)
window.addEventListener("DOMContentLoaded", main, false);
else if (window.attachEvent)
window.attachEvent("onload", main);
}
else if (document.readyState==="complete") {
main();
}
else {
if (window.addEventListener)
window.addEventListener("load", main, false);
else if (window.attachEvent)
window.attachEvent("onload", main);
}
}
else {
main();
}
})();


when I try the full script, it says an 800A03F4 error with "expected /" on line 94 char 49.

Love the efforts, everyone!!


I uploaded it to userscripts.org, http://userscripts.org/scripts/show/111240.


thanks for the upload, i was having issues trying to install it
ace hwaiting!!
Cambium
Profile Blog Joined June 2004
United States16368 Posts
August 25 2011 02:15 GMT
#86
On August 25 2011 11:10 WhuazGoodJaggah wrote:
niceööö
A little suggestion for isSCBW, to make it easier to add and remove tags
function isSCBW( node )
{
var tags = new Array( "[OSL] ", "[MSL] ", "[SPL] ", "[STX] ", "[GC] " ); // GC = Gambit Cup
var str = node.innerHTML;
for (var i in tags) {
if (str.indexOf(tags[i]) != -1) {
return true;
}
}
return false;
}

Yep, this is much easier, let me update it.
When you want something, all the universe conspires in helping you to achieve it.
sheaRZerg
Profile Blog Joined June 2009
United States613 Posts
August 25 2011 02:15 GMT
#87
This is awesome.

Thanks to everyone working on it.
"Dude, just don't listen to what I say; listen to what I mean." -Sean Plott
erin[go]bragh
Profile Joined December 2008
United States815 Posts
August 25 2011 02:44 GMT
#88
Amazing! Huge props to everyone working on it! Out of site, out of mind!

Getting rid of SC2 events on the calendar was the biggest thing for me. So hard to find BW event times in the sea of rubbish.

Now if only there were a way to remove posts like "OMG HOPE HE SWITCHES TO SC2 LAWL" in BW threads.
JulyZerg! by.hero, effOrt, KTY.
writer22816
Profile Blog Joined September 2008
United States5775 Posts
August 25 2011 03:04 GMT
#89
Changing the default TLPD search and cleansing the calendar? Wow this is absolutely amazing, can't wait to try this when I get home
8/4/12 never forget, never forgive.
therockmanxx
Profile Joined July 2010
Peru1174 Posts
August 25 2011 03:22 GMT
#90
can you jut make a script to remove sc2 forums ?? =D
Tekken ProGamer
Armathai
Profile Joined October 2007
1023 Posts
August 25 2011 03:44 GMT
#91
Amazing work b0lt! Chill said something about BW TL members needing to step up to help, and you've just done what R1CH doesn't have the time for and made our lives so much easier ^_^ <3 <3

@Cambium

I installed your script too (successfully) but it doesn't appear to be filtering out the SC2 events?
Thanks for the work anyway, hopefully I'll figure out what I'm doing wrong
Looking for ArcticCerebrate formerly from @USEast
4vvhiplash7
Profile Joined December 2010
South Africa392 Posts
August 25 2011 04:42 GMT
#92
On August 25 2011 11:44 erin[go]bragh wrote:
Amazing! Huge props to everyone working on it! Out of site, out of mind!

Getting rid of SC2 events on the calendar was the biggest thing for me. So hard to find BW event times in the sea of rubbish.

Now if only there were a way to remove posts like "OMG HOPE HE SWITCHES TO SC2 LAWL" in BW threads.


That would be amazing! LOL
AttackZerg
Profile Blog Joined January 2003
United States7584 Posts
August 25 2011 04:44 GMT
#93
Thank you guys!
CaucasianAsian
Profile Blog Joined September 2005
Korea (South)11599 Posts
August 25 2011 04:45 GMT
#94
Replays section doesn't show up when i use this extension.
Calendar@ Fish Server: `iOps]..Stark
Cambium
Profile Blog Joined June 2004
United States16368 Posts
August 25 2011 04:53 GMT
#95
On August 25 2011 12:44 Armathai wrote:
Amazing work b0lt! Chill said something about BW TL members needing to step up to help, and you've just done what R1CH doesn't have the time for and made our lives so much easier ^_^ <3 <3

@Cambium

I installed your script too (successfully) but it doesn't appear to be filtering out the SC2 events?
Thanks for the work anyway, hopefully I'll figure out what I'm doing wrong

That's strange, it seems to work for me.

Go to manage scripts --> calendar fix --[right click]-> edit

Do you see the source code in there?
When you want something, all the universe conspires in helping you to achieve it.
soujiro_
Profile Joined June 2010
Uruguay5195 Posts
August 25 2011 04:55 GMT
#96
On August 25 2011 13:45 CaucasianAsian wrote:
Replays section doesn't show up when i use this extension.



replays were moved to the right side, under tsl
ace hwaiting!!
CaucasianAsian
Profile Blog Joined September 2005
Korea (South)11599 Posts
August 25 2011 04:59 GMT
#97
oh ok thank you.
Calendar@ Fish Server: `iOps]..Stark
Sawamura
Profile Blog Joined August 2010
Malaysia7602 Posts
August 25 2011 05:16 GMT
#98
the calendar fix is awesome <3
BW/KT Forever R.I.P KT.Violet dearly missed ..
Cambium
Profile Blog Joined June 2004
United States16368 Posts
August 25 2011 05:22 GMT
#99
To OP:

Instead of looping through all forms, you can simply refer to liquipedia via its XPath:


var bwlpXPath = "/html/body/table/tbody/tr/td/table[2]/tbody/tr/td[3]/table[4]/tbody/tr/td/form";
node = findXPathNode( bwlpXPath );
node.action = "h__p://wiki.teamliquid.net/starcraft/index.php";
When you want something, all the universe conspires in helping you to achieve it.
HaruHaru
Profile Blog Joined November 2009
United States988 Posts
August 25 2011 06:15 GMT
#100
excellent post! this will help so much!
Long live BroodWar!
Prev 1 2 3 4 5 6 7 8 9 Next All
Please log in or register to reply.
Live Events Refresh
Next event in 1h 21m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
NeuroSwarm 242
PiGStarcraft27
StarCraft: Brood War
Bisu 107
ZZZero.O 64
NaDa 46
League of Legends
Doublelift5426
JimRising 370
Counter-Strike
Fnx 786
minikerr162
Other Games
gofns8821
tarik_tv3253
Mlord930
ToD355
TKL 241
C9.Mang0165
XaKoH 119
ViBE60
Livibee42
Organizations
Other Games
gamesdonequick1142
BasetradeTV28
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 18 non-featured ]
StarCraft 2
• Hupsaiya 63
• davetesta33
• RyuSc2 20
• Response 1
• IndyKCrew
• AfreecaTV YouTube
• intothetv
• Kozan
• sooper7s
• LaughNgamezSOOP
• Migwel
StarCraft: Brood War
• HerbMon 2
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• masondota21329
League of Legends
• Shiphtur573
Other Games
• tFFMrPink 16
Upcoming Events
PiG Sty Festival
1h 21m
Afreeca Starleague
5h 21m
RSL Revival
10h 21m
Clem vs Serral
herO vs Rogue
WardiTV Summer Champion…
13h 21m
WardiTV Weekly
1d 12h
Sparkling Tuna Cup
2 days
PiGosaur Cup
3 days
Replay Cast
3 days
Kung Fu Cup
3 days
Replay Cast
4 days
[ Show More ]
The PondCast
4 days
Replay Cast
5 days
IntoTheTV X SOOP
5 days
RSL Revival
6 days
Liquipedia Results

Completed

Escore Tournament S3: W5
CranK Gathers Season 4: BW vs SC2 Team League
Eternal Conflict S2 Finale

Ongoing

CSL 2026 Summer (S21)
KCM Race Survival 2026 Season 3
ASL Season 22: Qualifier #1
RSL Revival: Season 6
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026

Upcoming

ASL Season 22: Qualifier #2
K-JUNGMAN
Acropolis #5
Escore Tournament S3: W6
Escore Tournament S3: W7
Escore Tournament S3: W8
CSLAN 4
HSC XXX
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
PiG Sty Festival 8.0
Thunderpick World Champ.
ESL Pro League Season 24
Stake Ranked Episode 4
Logitech G Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #5
BLAST Open Fall 2026
Esports World Cup 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.