/* generated javascript */
if (!window.skin) {
	var skin = 'monaco';
	var stylepath = 'http://images.wikia.com/common/releases_200911.3/skins';
}

/* MediaWiki:Common.js */
/* Any JavaScript here will be loaded for all users on every page load. */

// createElement is taken from Chinese Wikipedia
// List of authors can be found at http://zh.wikipedia.org/w/index.php?title=MediaWiki:Common.js&action=history
function createElement(tag,children,props){
	var element = document.createElement(tag);
	if(!(children instanceof Array)){children=[children];}
	for(var i=0;i<children.length;i++){
		var child=children[i];
		if(typeof child=='string'){child=document.createTextNode(child);}
		if(child){element.appendChild(child);}
	}
	if(typeof props=='object'){
		for(var k in props){
			switch(k){
			case 'styles':
				var styles=props.styles;
				for(var s in styles){element.style[s]=styles[s];}
				break;
			case 'events':
				var events=props.events;
				for(var e in events){ addHandler(element,e,events[e]); }
				break;
			case 'class':
				element.className=props[k];break;
			default:
				element.setAttribute(k,props[k]);
			}
		}
	}
	return element;
}



var STRINGTAGTEXT; // yeah, this is a global variable.  Bite me.

function createStringTags(){
    var stringTags
    try{  // Some of the newer browsers support getElementsByClassName natively
        stringTags= document.getElementsByClassName('stringTags'); // find all tab definitions in the article
    } catch (el) { // and some don't
        return 0;
    }
    if (stringTags.length == 0) return 0;

    STRINGTAGTEXT = new Array(stringTags.length);
    for (var i=0; i < stringTags.length; i++){
        var curTag = stringTags[i];
        if (curTag.textContent) {
            STRINGTAGTEXT[i] = curTag.textContent;
        } else {
            STRINGTAGTEXT[i] = curTag.innerText;
        }
        newLink = createElement('A', 
                                curTag.title,
                                {'href':'javascript:insertStringTags(' + i + ');'}
                               );
        while (curTag.childNodes[0]) {
            curTag.removeChild(curTag.childNodes[0]);
        }
        curTag.appendChild(newLink);
    }
}

addOnloadHook(createStringTags);

function insertStringTags(idx){
    insertTags(STRINGTAGTEXT[idx], '', '');
}

//********************************************************************************
// Start "Hidden appearances section/interactive tree" script; cc-by-nc by [[w:c:MemoryAlpha:User:Bp]] at [[w:c:MemoryAlpha:User:Bp/interactive tree script]]
//********************************************************************************
function toggleAppearancesPane(eid) {
	e = document.getElementById(eid);
	if (e) { e.className = (e.className == "hiddenlist") ? "visiblelist" : "hiddenlist"; }
}

function showAppearancesPane(eid) {
	e = document.getElementById(eid);
	if (e) { e.className = "visiblelist"; }
}

function hideAppearancesPane(eid) {
	e = document.getElementById(eid);
	if (e) { e.className = "hiddenlist"; }
}
// -----

var tree = 0;
var pane = 0;
var paneListForThisTree = new Array();
var descriptionString = new String("This list contains %d items."); //%d is where the number of items is inserted

var smallTreeCount = 8; // less leaves than this, the tree will be open at first
var interactiveTrees = 1; // set this to 0 in user.js to turn this off

function button(text,onclick,cls) {
	var b = document.createElement('a');
	b.innerHTML = text;
	b.href="javascript:"+onclick;
	b.className = cls;
	return b;
}

function recursiveCountAndMark(e, depth) {
	var si = e.firstChild;
	var total = 0;
	while(si) {
		var tn = (si.tagName) ? si.tagName.toLowerCase() : '';
		if (tn == "li") { total++; }
		var subtotal = recursiveCountAndMark(si, depth+1);
		if (tn == "ul" || tn == "ol") {
			if (depth > 1) {
				si.id = "Pane" + pane++;
				paneListForThisTree.push(si.id);
				si.className = "hiddenlist";

				si.parentNode.insertBefore(document.createTextNode('('), si);
				si.parentNode.insertBefore(button(subtotal, "toggleAppearancesPane(\""+si.id+"\")", "listexpand"), si);
				si.parentNode.insertBefore(document.createTextNode(')'), si);
				total--; // don't count the li that this ul/ol is in
			} else {
				// we are finished and this is the top ul/ol
				if (subtotal < smallTreeCount) { // this small enough they can be visible right away
					for (var i=0;i<paneListForThisTree.length;i++) {
						toggleAppearancesPane(paneListForThisTree[i]);
					}
				}
				var allonexec = '{';
				var alloffexec = '{';
				for (var i=0;i<paneListForThisTree.length;i++) {
					allonexec += "showAppearancesPane(\""+paneListForThisTree[i]+"\"); ";
					alloffexec += "hideAppearancesPane(\""+paneListForThisTree[i]+"\"); ";
				}
				allonexec += '}'; alloffexec += '}';

				var ds = descriptionString.replace(/\%d/g, subtotal);

				si.parentNode.insertBefore(document.createTextNode(ds + ' ('), si);
				si.parentNode.insertBefore(button("show all", allonexec, "listexpand"), si);
				si.parentNode.insertBefore(document.createTextNode(' | '), si);
				si.parentNode.insertBefore(button("hide all", alloffexec, "listexpand"), si);
				si.parentNode.insertBefore(document.createTextNode(')'), si);
			}
		}
		total += subtotal;
		si = si.nextSibling;
	}
	return total;
}

function doAppearancesTrees() {
	if (!interactiveTrees) { return; }

	var divs = document.getElementsByTagName("div");
	for (var i = 0; i < divs.length; i++) {
		if (divs[i].className == 'appear') {
			recursiveCountAndMark(divs[i], 0);
			paneListForThisTree = new Array();
			tree++;
		}
	}

	// fix a bug noticed by renegade54
	// jump to the named anchor again
	if (window.location.hash && tree > 0) {
		// still won't work 100% in safari and khtml
		if (navigator.userAgent.indexOf("MSIE") != -1) {
			window.location = window.location.hash; // -- causes Firefox to fire onload events
		} else {
			window.location.hash = window.location.hash;
		}
	}

}

hookEvent("load", doAppearancesTrees);
// End "Hidden Appearances section" script

FixExternalLinks = function() {
var blip_elements = getElementsByClassName(document.getElementById('bodyContent'),'a','external');
 for(var i = 0; i < blip_elements.length; i++){
 blip_elements[i].target = '_blank';
 }
}
 
jQuery(document).ready(FixExternalLinks);



/*
////////////////////////////////////////////////////////
// Adding text to the top of a specific edit page.
////////////////////////////////////////////////////////
*/

function myTitle(){
  var title1 = ""+wgPageName;
if (wgPageName == "Super_Grover" | wgPageName == "Global_Grover" | wgPageName == "Pigs_in_Space" | wgPageName == "Baby_Piggy's_Alternate_Identities" | wgPageName == "Bean_Bunny's_Alternate_Identities_and_Ages" | wgPageName == "Bear_on_Patrol" | wgPageName == "Beautiful_Day_Monster_Sketches" | wgPageName == "Bernie_Broccoli" | wgPageName == "Bert_and_Ernie's_Great_Adventures" | wgPageName == "Caveman_Days" | wgPageName == "Colambo" | wgPageName == "Cookie_Monster_and_Ernie" | wgPageName == "Cookie_Monster_and_Kermit" | wgPageName == "Cookie_Monster_and_Prairie_Dawn" | wgPageName == "Cookie_Monster_Sketches:_Miscellaneous" | wgPageName == "Cookie_Monster's_Alternate_Identities" | wgPageName == "Count_von_Count_Sketches:_Castle" | wgPageName == "Count_von_Count_Sketches:_Miscellaneous" | wgPageName == "Deena_and_Pearl_Sketches" | wgPageName == "Dinner_Theatre" | wgPageName == "Elmo's_Alternate_Identities" | wgPageName == "Ernie_&_Bert_Show" | wgPageName == "Ernie_and_Bert_Sketches:_Apartment" | wgPageName == "Ernie_and_Bert_Sketches:_Expeditions" | wgPageName == "Ernie_and_Bert_Sketches:_Miscellaneous" | wgPageName == "Ernie_and_Bert_Sketches:_Nighttime" | wgPageName == "Ernie_and_Bert_Sketches:_Sesamstrasse" | wgPageName == "Ernie_and_Rubber_Duckie_Bumpers" | wgPageName == "Ernie_Impersonators" | wgPageName == "Ernie's_Alternate_Identities" | wgPageName == "Fairy_Tales_Today" | wgPageName == "Forgetful_Jones" | wgPageName == "Fozzie_Bear's_Alternate_Identities" | wgPageName == "Gonzo's_Alternate_Identities" | wgPageName == "Gonzo's_Alternate_Identities" | wgPageName == "Grover_and_Mr._Johnson" | wgPageName == "Grover_the_Assistant" | wgPageName == "Grover_the_Elevator_Operator" | wgPageName == "Grover_the_Salesman" | wgPageName == "Harvey_Kneeslapper" | wgPageName == "Herbert_Birdsfoot" | wgPageName == "Herry_Monster_Sketches:_Miscellaneous" | wgPageName == "Impersonations_of_Animals" | wgPageName == "Impersonations_of_other_characters" | wgPageName == "Impersonations_of_Plants" | wgPageName == "Journey_to_Ernie" | wgPageName == "Kermit_at_Home_Sketches" | wgPageName == "Kermit_Sketches:_Miscellaneous" | wgPageName == "Kermit_the_Frog_Impersonators" | wgPageName == "Kermit_the_Frog's_Alternate_Identities" | wgPageName == "Kermit's_Lectures" | wgPageName == "Lefty_the_Salesman" | wgPageName == "Marshal_Grover" | wgPageName == "Miss_Piggy_Impersonators" | wgPageName == "Miss_Piggy's_Alternate_Identities" | wgPageName == "Monsterpiece_Theater" | wgPageName == "Monsters_in_Day_Care" | wgPageName == "Muppet_&_Kid_Moments:_Cookie_Monster" | wgPageName == "Muppet_&_Kid_Moments:_Ernie_and_Bert" | wgPageName == "Muppet_&_Kid_Moments:_Grover" | wgPageName == "Muppet_&_Kid_Moments:_Herry_Monster" | wgPageName == "Muppet_&_Kid_Moments:_Kermit" | wgPageName == "Muppet_&_Kid_Moments:_Miscellaneous" | wgPageName == "Muppet_Labs" | wgPageName == "Muppet_News_Flash" | wgPageName == "Muppet_Sports" | wgPageName == "Oscar_the_Grouch's_Alternate_Identities" | wgPageName == "Prairie_Dawn_Sketches:_Miscellaneous" | wgPageName == "Professor_Grover" | wgPageName == "Rats'_Roles" | wgPageName == "Rowlf_the_Dog's_Alternate_Identities" | wgPageName == "Sam_the_Eagle's_Alternate_Identities" | wgPageName == "Scooter's_Alternate_Identities" | wgPageName == "Sesame_Street_Humans'_Alternate_Identities" | wgPageName == "Sesame_Street_News_Flash" | wgPageName == "Sesame_Street_Pageants" | wgPageName == "Sesame_Street_Singles" | wgPageName == "Sherlock_Hemlock" | wgPageName == "Simon_Soundman" | wgPageName == "Sprocket's_Impersonations" | wgPageName == "Statler_and_Waldorf's_Alternate_Identities_and_Ages" | wgPageName == "Telly's_Alternate_Identities" | wgPageName == "The_Adventures_of_Prairie_Dawn" | wgPageName == "The_Amazing_Mumford" | wgPageName == "The_Jimmy_Dean_Show" | wgPageName == "The_Letter_of_the_Day" | wgPageName == "The_Letter_of_the_Day_Games" | wgPageName == "The_Swedish_Chef" | wgPageName == "The_World_in_which_Kermit_was_Never_Born" | wgPageName == "Twiddlebugs" | wgPageName == "Two-Headed_Monster" | wgPageName == "Veterinarian's_Hospital" | wgPageName == "Waiter_Grover" | wgPageName == "Wayne_and_Wanda" | wgPageName == "Zoe's_Alternate_Identities" | wgPageName == "Sesame_Street_Game_Shows" | wgPageName == "The_Spanish_Word_of_the_Day" | wgPageName == "The_Martians" | wgPageName == "My_Favorite_Sesame_Street_Moments" | wgPageName == "Frackles" | wgPageName == "Good_Morning_America" | wgPageName == "The_Cast_of_Fame" && wgAction == "edit"){

    var elem = document.createElement("div");
    elem.setAttribute("style", "color:red; font-style:italic;");
    elem.setAttribute("align", "center");
    elem.innerHTML = "Please don't change the DIV tags, as it will break links coming to this page.";

    var titleArea = document.getElementById("top");
    if (titleArea != null){
      titleArea.appendChild(elem);
      titleArea.setAttribute("style", "text-decoration:none");
    }

  }

}

addOnloadHook(myTitle)

/*
////////////////////////////////////////////////////////
// END
////////////////////////////////////////////////////////
*/

/* MediaWiki:Monaco.js */
