22,592
edits
(teh Splarks told meh to.) |
mNo edit summary |
||
(156 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
/* | /* Any JavaScript here will be loaded for users using the MonoBook skin */ | ||
/* | /* MONOBOOK SIDEBAR v2.3 */ | ||
window.wgSidebar = ( window.wgSidebar || {} ); | |||
wgSidebar["Navigation"] = [ | |||
"Special:RecentChanges|Recent changes", | |||
"Special:Random|Random page", | |||
]; | |||
wgSidebar["Games"] = [ | |||
{"Category:Video games|Original trilogy": [ | |||
"Halo: Combat Evolved", | |||
"Halo: Combat Evolved Anniversary", | |||
"Halo 2", | |||
"Halo 2: Anniversary", | |||
"Halo 3", | |||
]}, | |||
{"Category:Video games|Mainline 343i games": [ | |||
"Halo 4", | |||
"Halo 5: Guardians", | |||
"Halo Infinite", | |||
]}, | |||
{"Category:Video games|Halo: Spartan series": [ | |||
"Halo: Spartan Assault", | |||
"Halo: Spartan Strike", | |||
]}, | |||
{"Category:Video games|Halo Wars series": [ | |||
"Halo Wars", | |||
"Halo Wars 2", | |||
]}, | |||
{"Category:Video games|Other games": [ | |||
"Halo 3: ODST", | |||
"Halo: Reach", | |||
"Halo: Fireteam Raven", | |||
]}, | |||
{"Category:Video games|Ports and expansions": [ | |||
"Halo: Combat Evolved (PC port)|Halo PC", | |||
"Halo Custom Edition", | |||
"Halo 2 Multiplayer Map Pack", | |||
"Halo 2 (Windows Vista)|Halo 2 Vista", | |||
"Halo 3 Mythic", | |||
"Halo: The Master Chief Collection", | |||
"Halo 5: Forge", | |||
]}, | |||
{"Category:Applications|Applications": [ | |||
"Halo Waypoint|Halo Waypoint", | |||
"Halo 4: King of the Hill Fueled by Mountain Dew|Halo 4: King of the Hill", | |||
"Halo Channel", | |||
"Halo (Windows 10 app)|Halo app", | |||
"Halo Stickers", | |||
"Halo Recruit", | |||
]}, | |||
{"Category:Tabletop games|Table top": [ | |||
{"Category:Tabletop games|Spartan Games": [ | |||
"Halo: Fleet Battles", | |||
"Halo: Ground Command", | |||
]}, | |||
"Halo 4: King of the Hill Fueled by Mountain Dew|Halo 4: King of the Hill", | |||
"Halo Interactive Strategy Game", | |||
"Risk|Halo Risk", | |||
"Monopoly: Halo Collector's Edition|Halo Monopoly", | |||
]}, | |||
{"Category:Deleted material|Canceled projects": [ | |||
"Halo: Chronicles", | |||
"Titan (canceled game)|Titan", | |||
"Haggar", | |||
"Halo Online", | |||
"Halo: Starfighter", | |||
]}, | |||
]; | |||
wgSidebar["Other media"] = [ | |||
{"Halo novels|Novels": [ | |||
{"The Original Series": [ | |||
"Halo: The Fall of Reach|The Fall of Reach", | |||
"Halo: The Flood|The Flood", | |||
"Halo: First Strike|First Strike", | |||
"Halo: Ghosts of Onyx|Ghosts of Onyx", | |||
]}, | |||
{"The Forerunner Saga": [ | |||
"Halo: Cryptum|Cryptum", | |||
"Halo: Primordium|Primordium", | |||
{"Halo: Silentium|Silentium": [ | |||
"Rebirth", | |||
]}, | |||
]}, | |||
{"Kilo-Five Trilogy": [ | |||
"Halo: Glasslands|Glasslands", | |||
"Halo: The Thursday War|The Thursday War", | |||
"Halo: Mortal Dictata|Mortal Dictata", | |||
]}, | |||
{"Alpha-Nine series|Alpha-Nine": [ | |||
"Halo: New Blood|New Blood", | |||
"Halo: Bad Blood|Bad Blood", | |||
]}, | |||
{"The Ferrets series|The Ferrets": [ | |||
"Halo: Last Light|Last Light", | |||
"Halo: Retribution|Retribution", | |||
"Halo: Divine Wind|Divine Wind", | |||
]}, | |||
{"Rion Forge & Ace Of Spades series|Rion Forge & Ace of Spaces": [ | |||
"Halo: Smoke and Shadow|Smoke and Shadow", | |||
"Halo: Renegades|Renegades", | |||
"Halo: Point of Light|Point of Light", | |||
]}, | |||
{"A Master Chief Story": [ | |||
"Halo: Silent Storm|Silent Storm", | |||
"Halo: Oblivion|Oblivion", | |||
{"Halo: Shadows of Reach|Shadows of Reach": [ | |||
"Sacrifice", | |||
]}, | |||
]}, | |||
{"Battle Born: A Halo Young Adult Novel Series|Battle Born": [ | |||
"Halo: Battle Born|Battle Born", | |||
"Halo: Meridian Divide|Meridian Divide", | |||
"Halo: Silentium|Silentium", | |||
]}, | |||
{"Halo novels|Individual novels": [ | |||
"Halo: Contact Harvest|Contact Harvest", | |||
"Halo: Hunters in the Dark|Hunters in the Dark", | |||
"Halo: Legacy of Onyx|Legacy of Onyx", | |||
"Halo: The Rubicon Protocol|The Rubicon Protocol", | |||
"Halo: Outcasts|Outcasts", | |||
]}, | |||
{"Halo novels|Individual novellas": [ | |||
"Halo: Saint's Testimony|Saint's Testimony", | |||
"Halo: Shadow of Intent|Shadow of Intent", | |||
]}, | |||
{"Halo novels|Anthologies": [ | |||
"Halo: Evolutions|Evolutions", | |||
"Halo: Fractures|Fractures", | |||
]}, | |||
]}, | |||
{"Category:Comics|Comics": [ | |||
"Halo Graphic Novel|Graphic Novel", | |||
"Halo 3: The Cradle of Life|The Cradle of Life", | |||
"Halo: Uprising|Uprising", | |||
"Halo: Helljumper|Helljumper", | |||
"Halo: Blood Line|Blood Line", | |||
"Halo: Fall of Reach|Fall of Reach", | |||
"Halo Wars: Genesis|Genesis", | |||
"Halo: Initiation|Initiation", | |||
"Halo: Escalation|Escalation", | |||
"Halo: Tales from Slipspace|Tales from Slipspace", | |||
"Halo: Rise of Atriox|Rise of Atriox", | |||
"Halo: Collateral Damage|Collateral Damage", | |||
"Halo: Lone Wolf|Lone Wolf", | |||
]}, | |||
{"Category:Art books|Art books": [ | |||
"The Art of Halo: Creating a Virtual World|The Art of Halo", | |||
"The Art of Halo 3|The Art of Halo 3", | |||
"Halo: The Great Journey - The Art of Building Worlds|Halo: The Great Journey", | |||
"Awakening: The Art of Halo 4|The Art of Halo 4", | |||
"The Art of Halo 5: Guardians|The Art of Halo 5: Guardians", | |||
"The Art of Halo Infinite|The Art of Halo Infinite", | |||
]}, | |||
{"Category:Reference books|Reference books": [ | |||
{"Halo Encyclopedia|Original encyclopedias": [ | |||
"Halo Encyclopedia (2009 edition)|2009 edition", | |||
"Halo Encyclopedia (2011 edition)|2011 edition", | |||
]}, | |||
"Halo: The Essential Visual Guide", | |||
"Halo 4: The Essential Visual Guide", | |||
"Halo Mythos: A Guide to the Story of Halo|Halo Mythos", | |||
"Halo: Warfleet – An Illustrated Guide to the Spacecraft of Halo|Halo: Warfleet", | |||
"Halo: Official Spartan Field Manual", | |||
"Halo Encyclopedia (2022 edition)", | |||
]}, | |||
{"Category:Strategy guides|Strategy guides": [ | |||
"Halo: Combat Evolved: Sybex Official Strategies & Secrets|Halo: Combat Evolved", | |||
"Halo 2: The Official Strategy Guide|Halo 2", | |||
"Halo 3: The Official Strategy Guide|Halo 3", | |||
"Halo Wars: Official Strategy Guide|Halo Wars", | |||
"Halo 3: ODST Official Strategy Guide|Halo 3: ODST", | |||
"Halo: Reach Official Strategy Guide|Halo: Reach", | |||
"Halo 4: Official Game Guide|Halo 4", | |||
"Halo 5: Guardians Official Game Guide|Halo 5: Guardians", | |||
]}, | |||
{"Category:Animated films|Animation": [ | |||
"Halo Legends", | |||
"Halo: The Fall of Reach - The Animated Series|Halo: The Fall of Reach", | |||
]}, | |||
{"Category:Live action|Live action": [ | |||
"Halo: Landfall|Landfall", | |||
"The Life", | |||
"Birth of a Spartan", | |||
"Remember Reach", | |||
"Halo 4: Forward Unto Dawn", | |||
"Halo film|Halo movie", | |||
"Halo: Nightfall|Nightfall", | |||
"Halo: The Television Series|Halo TV series", | |||
]}, | |||
]; | |||
wgSidebar["Gameplay"] = [ | |||
"Halo Waypoint|Waypoint", | |||
"Equipment", | |||
"Weapons (gameplay)|Weapons", | |||
"Category:Vehicles|Vehicles", | |||
"Armor customizations", | |||
"Category:Levels|Walkthroughs", | |||
"Multiplayer", | |||
]; | |||
wgSidebar["The universe"] = [ | |||
{"Category:Characters|Characters": [ | |||
{"Blue Team": [ | |||
"John-117", | |||
"Linda-058", | |||
"Kelly-087", | |||
"Frederic-104", | |||
]}, | |||
{"Red Team": [ | |||
"Jerome-092", | |||
"Douglas-042", | |||
"Alice-130", | |||
]}, | |||
{"Alpha-Nine": [ | |||
"Rookie", | |||
"Michael Crespo|Michael 'Mickey' Crespo", | |||
"Taylor Miles|Taylor 'Dutch' Miles", | |||
"Kojo Agu|Kojo 'Romeo' Agu", | |||
]}, | |||
{"NOBLE Team": [ | |||
"SPARTAN-B312", | |||
"Carter-A259", | |||
"Jun-A266", | |||
"Emile-A239", | |||
"Kat-B320", | |||
"Jorge-052", | |||
]}, | |||
{"Fireteam Osiris": [ | |||
"Jameson Locke", | |||
"Edward Buck", | |||
"Olympia Vale", | |||
"Holly Tanaka", | |||
]}, | |||
"Catherine Halsey", | |||
"Jacob Keyes", | |||
"Cortana", | |||
"Avery Johnson", | |||
"343 Guilty Spark", | |||
"Thel 'Vadam", | |||
"Terrence Hood", | |||
"Miranda Keyes", | |||
"Rtas 'Vadum", | |||
"Gravemind", | |||
"James Cutter", | |||
"John Forge", | |||
"Ellen Anders", | |||
"Librarian", | |||
"IsoDidact", | |||
"Ur-Didact", | |||
"Jul 'Mdama", | |||
"Thomas Lasky", | |||
"Sarah Palmer", | |||
"Roland", | |||
"Atriox", | |||
"Isabel", | |||
]}, | |||
{"Category:Locations|Locations": [ | |||
"Earth", | |||
"Reach", | |||
"Harvest", | |||
"Sanghelios", | |||
"High Charity", | |||
"Mombasa", | |||
"Installation 04|Alpha Halo", | |||
"Installation 05|Delta Halo", | |||
"Installation 00|The Ark", | |||
"Requiem", | |||
"Maethrillian", | |||
]}, | |||
{"Category:Sapient species|Species": [ | |||
"Human", | |||
"San'Shyuum", | |||
"Sangheili", | |||
"Kig-Yar", | |||
"Jiralhanae", | |||
"Huragok", | |||
"Lekgolo", | |||
"Yanme'e", | |||
"Unggoy", | |||
"Forerunner", | |||
"Flood", | |||
]}, | |||
{"Category:Factions|Factions": [ | |||
{"United Nations Space Command|United Nations Space Command": [ | |||
"UNSC Army", | |||
"UNSC Air Force", | |||
"UNSC Marine Corps", | |||
"Orbital Drop Shock Troopers", | |||
"UNSC Navy", | |||
"Office of Naval Intelligence", | |||
"Spartan|SPARTAN programs", | |||
]}, | |||
{"Covenant|Covenant": [ | |||
"Covenant military", | |||
"Covenant Honor Guard", | |||
"High Council", | |||
]}, | |||
{"Insurrectionist|Insurrectionists": [ | |||
"United Rebel Front", | |||
"New Colonial Alliance", | |||
]}, | |||
"Unified Earth Government", | |||
"Swords of Sanghelios", | |||
"Jul 'Mdama's Covenant", | |||
"Ecumene|Forerunner ecumene", | |||
"Ancient humanity", | |||
"Precursor|Precursors", | |||
]}, | |||
{"Category:Technology|Technology": [ | |||
"Technological Achievement Tiers", | |||
"Active camouflage", | |||
"Artificial intelligence", | |||
"Biological augmentation", | |||
"Cryonics", | |||
"Energy shielding", | |||
"Holography", | |||
"Slipstream space", | |||
"Powered exoskeleton", | |||
"Category:Propulsion|Propulsion", | |||
"Category:Communications technology|Communications", | |||
"Category:Medicine|Medicine", | |||
"Category:Vehicles|Vehicles", | |||
"Category:Weapons|Weapons", | |||
]}, | |||
{"Category:Ships|Ships": [ | |||
"UNSC Pillar of Autumn", | |||
"Truth and Reconciliation", | |||
"UNSC In Amber Clad", | |||
"UNSC Forward Unto Dawn", | |||
"Shadow of Intent", | |||
"UNSC Spirit of Fire", | |||
"UNSC Infinity", | |||
"Mantle's Approach", | |||
"Enduring Conviction", | |||
]}, | |||
{"Category:Society and culture|Society and culture": [ | |||
"Category:Languages|Languages", | |||
"Religion", | |||
"Mantle", | |||
"List of food and drinks|Food and drink", | |||
"Category:Terms and phrases|Terms and phrases", | |||
]}, | |||
{"Halopedia:Projects/Timeline/Eras|Timeline": [ | |||
"Human-Forerunner wars", | |||
"Forerunner-Flood war", | |||
"Great Purification|The Halos' firing", | |||
"War of Beginnings", | |||
"Interplanetary War", | |||
"Insurrection", | |||
"Human-Covenant War", | |||
"Post-Covenant War conflicts", | |||
]}, | |||
]; | |||
wgSidebar["Halopedia Archive"] = [ | |||
"Archive:Text archives|Text archives", | |||
"Archive:Website archives|Website archives", | |||
"https://www.youtube.com/channel/UCMeCf0KFYzOHw2lp2GRtgWA|Video archives", | |||
]; | |||
wgSidebar["Halopedia"] = [ | |||
{"Halopedia:Social media|Social media": [ | |||
"https://twitter.com/Halopedia|Twitter", | |||
"https://www.facebook.com/HalopediaWiki|Facebook", | |||
]}, | |||
"Halopedia:Discord server|Discord server", | |||
"Special:WikiForum|Halopedia forums", | |||
"News:Main|Halo News Network", | |||
"Halopedia:Projects/Improvement|Article improvement", | |||
"Halopedia:Featured/Article|Featured articles", | |||
"Halopedia:Staff|Halopedia staff", | |||
]; | |||
wgSidebar["Wiki help"] = [ | |||
{"Category:Policies|Policies": [ | |||
"Halopedia:Manual of Style|Manual of Style", | |||
"Halopedia:Blocking policy|Blocking policy", | |||
"Halopedia:Canon policy|Canon policy", | |||
"Halopedia:Layout guide|Layout guide", | |||
"Halopedia:Media policy|Media policy", | |||
"Halopedia:Notability policy|Notability policy", | |||
"Halopedia:Personal Image policy|Personal Image policy", | |||
"Halopedia:Protected Page policy|Protected Page policy", | |||
"Halopedia:Signature policy|Signature policy", | |||
"Halopedia:Spoiler policy|Spoiler policy", | |||
"Halopedia:Voting policy|Voting policy", | |||
]}, | |||
{"Category:Help|Help pages": [ | |||
"Help:Disambiguation|Disambiguation", | |||
"Help:Editing|Editing", | |||
"Help:Images|Images", | |||
"Help:Links|Links", | |||
"Help:References|References", | |||
"Help:Signatures|Signatures", | |||
"Help:Tables|Tables", | |||
"Help:Templates|Templates", | |||
"Help:Videos|Videos", | |||
"Help:Walkthroughs|Walkthroughs", | |||
]}, | |||
"Halopedia:General disclaimer|General disclaimer", | |||
"Halopedia:What Halopedia is|What Halopedia is", | |||
]; | |||
wgSidebar["Related sites"] = [ | |||
{"Halopedia:Related sites and affiliates|Affiliates": [ | |||
"https://www.marathonwiki.com|CyberAcme", | |||
"https://www.destinypedia.com|Destinypedia", | |||
"https://www.youtube.com/@HaloCanon|Halo Canon", | |||
"https://www.niwanetwork.org|NIWA", | |||
]}, | |||
{"Halopedia:Related sites and affiliates|Community": [ | |||
"https://halo.bungie.org|halo.bungie.org", | |||
"https://www.readyuplive.com|Ready Up Live", | |||
"http://www.forwarduntodawn.com|Forward Unto Dawn", | |||
"https://www.reddit.com/r/halo|/r/halo", | |||
"https://www.reddit.com/r/HaloStory|/r/HaloStory", | |||
"https://www.forgehub.com|ForgeHub", | |||
"http://haloterms.bungie.org|Terminal Hub", | |||
"https://roosterteeth.com|Rooster Teeth", | |||
"https://405th.com|405th", | |||
]}, | |||
{"Halopedia:Related sites and affiliates|Podcasts": [ | |||
"https://www.podtacular.com|Podtacular", | |||
"https://www.halopodcastevolved.com/podcast-evolved|Podcast Evolved", | |||
]}, | |||
{"Halopedia:Related sites and affiliates|Wikis": [ | |||
{"Halopedia:Related sites and affiliates|International": [ | |||
"https://halo.fandom.com/de|Deutsch (German)", | |||
"https://halo.fandom.com/el|Ελληνικά (Greek)", | |||
"https://halo.fandom.com/it|Italiano (Italian)", | |||
"https://halo.fandom.com/ja|日本語 (Japanese)", | |||
"https://halo.fandom.com/ko|한국어 (Korean)", | |||
"https://halo.fandom.com/pl|Polski (Polish)", | |||
"https://halo.fandom.com/ru|Русские (Russian)", | |||
"https://halo.fandom.com/es|Español (Spanish)", | |||
]}, | |||
"https://halofanon.fandom.com|Halo Fanon", | |||
"https://unhalo.fandom.com|Gruntipedia", | |||
"https://halomachinima.fandom.com|Halo Machinima", | |||
"https://wiki.halo.fr|Halo.fr", | |||
"https://rvb.fandom.com|Red vs. Blue", | |||
]}, | |||
]; | |||
/** | |||
* MonobookSidebar: Sets sidebar submenus for elements of MonoBook, adding special | |||
* classes to pass the pointer over to allow the effect on all browsers. | |||
* | |||
* Date: 15 October 2010 | |||
* Copyright © 2010 Jesús Martínez Novo ([[User:Ciencia Al Poder]]) | |||
* | |||
* This program is free software; you can redistribute it and/or modify | |||
* it under the terms of the GNU General Public License as published by | |||
* the Free Software Foundation; either version 2 of the License, or | |||
* (at your option) any later version | |||
*/ | |||
MonobookSidebar = { | |||
re_s: / /g, | |||
re_p: /%/g, | |||
loadedMenus: [], | |||
init: function() { | |||
if ( !window.wgSidebar ) { | |||
return; | |||
} | |||
for ( var menu in wgSidebar ) { | |||
var item = document.getElementById( MonobookSidebar.getId( menu ) ); | |||
if ( !item ) { | |||
continue; | |||
} | |||
var menuId = jQuery( item ).parents().get( 2 ).id; | |||
// Check it's a valid portlet item | |||
if ( !menuId || menuId === '' ) { | |||
continue; | |||
} | |||
// Generate menu hierarchy | |||
MonobookSidebar.buildSubmenu( item, wgSidebar[menu] ); | |||
// Set events | |||
MonobookSidebar.setEvents( menuId ); | |||
} | |||
}, | |||
buildSubmenu: function( el, arr ) { | |||
var ul = document.createElement( 'ul' ); | |||
ul.className = 'sub-menu'; | |||
for ( var i = 0; i < arr.length; i++ ) { | |||
var a; | |||
var li = document.createElement( 'li' ); | |||
if ( typeof arr[i] == 'string' ) { | |||
a = MonobookSidebar.linkFromText( arr[i] ); | |||
li.appendChild( a ); | |||
} else { | |||
for ( var menukey in arr[i] ) { | |||
a = MonobookSidebar.linkFromText( menukey ); | |||
li.appendChild( a ); | |||
MonobookSidebar.buildSubmenu( li, arr[i][menukey] ); | |||
} | |||
} | |||
ul.appendChild( li ); | |||
} | |||
el.appendChild( ul ); | |||
el.className = 'with-sub-menu'; | |||
var em = document.createElement( 'em' ); | |||
em.appendChild( document.createTextNode( '\u203A' ) ); | |||
el.firstChild.appendChild( em ); | |||
}, | |||
setEvents: function( menuId ) { | |||
for ( var i = 0; i < MonobookSidebar.loadedMenus; i++ ) { | |||
if ( MonobookSidebar.loadedMenus[i] == menuId ) { | |||
return; | |||
} | |||
} | |||
jQuery( '#' + menuId ).children().eq( 1 ).children().eq( 0 ) | |||
.on( 'mouseover', MonobookSidebar.mouseover ) | |||
.on( 'mouseout', MonobookSidebar.mouseout ); | |||
MonobookSidebar.loadedMenus.push( menuId ); | |||
}, | |||
mouseover: function( e ) { | |||
var target = e.target; | |||
while ( target.tagName.toLowerCase() != 'div' ) { | |||
if ( target.tagName.toLowerCase() == 'a' ) { | |||
target = target.parentNode; | |||
} | |||
if ( target.tagName.toLowerCase() == 'li' ) { | |||
jQuery( target ).addClass( 'hover' ); | |||
} | |||
target = target.parentNode; | |||
} | |||
}, | |||
mouseout: function( e ) { | |||
var target = e.target; | |||
while ( target.tagName.toLowerCase() != 'div' ) { | |||
if ( target.tagName.toLowerCase() == 'a' ) { | |||
target = target.parentNode; | |||
} | |||
if ( target.tagName.toLowerCase() == 'li' ) { | |||
jQuery( target ).removeClass( 'hover' ); | |||
} | |||
target = target.parentNode; | |||
} | |||
}, | |||
linkFromText: function( txt ) { | |||
var article = '', caption = '', sepPos = txt.indexOf( '|' ); | |||
if ( sepPos > 0 ) { | |||
article = txt.substr( 0, sepPos ); | |||
caption = txt.substr( sepPos + 1 ); | |||
} else { | |||
article = caption = txt; | |||
} | |||
article = article.replace( MonobookSidebar.re_s, '_' ); | |||
var a = document.createElement( 'a' ); | |||
if ( article.length > 4 && article.substr( 0, 4 ) == 'http' ) { | |||
a.setAttribute( 'href', article ); | |||
} else { | |||
article = article.replace( MonobookSidebar.re_s, '_' ); | |||
// Replace encoded colons with normal colons | |||
article = article.replace( '%3A', ':' ); | |||
a.setAttribute( 'href', mw.config.get( 'wgArticlePath' ).replace( '$1', article ) ); | |||
} | |||
a.appendChild( document.createTextNode( caption ) ); | |||
return a; | |||
}, | |||
getId: function( name ) { | |||
return 'n-' + name.replace( MonobookSidebar.re_s, '-' ).replace( MonobookSidebar.re_p, '.' ); | |||
} | |||
}; | |||
/* Calling this code to initialize */ | |||
$( MonobookSidebar.init ); |