MediaWiki:Common.js

Uit Wikikids
Naar navigatie springen Naar zoeken springen

Let op! Nadat je de veranderingen hebt opgeslagen, moet je de cache van je browser nog legen om ze daadwerkelijk te zien.

Mozilla (incl. Firefox) ctrl-shift-r
IE ctrl-f5
Opera f5
Safari cmd-r
Konqueror f5
/*
 * Standaard samenvatting bij Speciaal: Uploaden
 */
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Upload' ) {
	jQuery(function($) {
		/* alert("BELANGRIJK: Als je de vragen in de samenvatting niet beantwoordt wordt je plaatje direct verwijderd!"); */
		uploadDescription = document.getElementById('wpUploadDescription');
		var doubleBracket = '{' + '{';

		uploadDescription.value = doubleBracket + 'Afbeelding\n|Wat staat er precies op de afbeelding?=\n|Waar heb je de afbeelding vandaan?=\n|Schrijf de complete link van de vindplaats op=\n|Wie heeft de afbeelding gemaakt?=\n|Heb je toestemming om de afbeelding te uploaden?=\n|Welke licentie?=\n}}';
	} );
}

/*
 * Het script voor de woordenboek sjablonen (Sjabloon:Wbwoord en Sjabloon: Wbbetekenis)
 */
var Wbq = ""
var Wbx = ""
var Wby = ""
var Wbz = ""
var WbK = "x" //keep it?

function enableTips() {
	for(var counter=1;counter<99;counter++) {
		Wbx = document.getElementById('woordenboek'+counter)
		Wbq = document.getElementById('woordenboekX'+counter)
	if(!Wbx) {
		break;
	}
	Wbq.style.display = "none"
	Wbx.style.display = ""
	Wbx.onmouseover = showWbTip
	Wbx.onmouseout = hideWbTip
	Wbx.onclick = keepWbTip
	}
}

$(enableTips);

function showWbTip() {
	if (WbK == "x") {
		Wbz = this.id
		Wbz = Wbz.substring(11,Wbz.length)
		Wby = document.getElementById('wbcontent'+Wbz)
		Wby.style.display = ""
	}
}

function hideWbTip() {
	if (WbK == "x") {
		Wby.style.display = "none"
	}
}

function keepWbTip() {
	if (WbK == "x") {
		WbK = "v"
	}
	else {
		WbK = "x"
	}
}

/*
 * Sinds de 1.26 upgrade wordt alleen in de WikiKids-skin nog de 'custom sidebar' van een MediaWiki-pagina gehaald.
 */
jQuery( function( $ ) {
	if ( mw.config.get( "skin" ) != "wikikids" ) {
		if ( mw.config.get( "skin" ) == "monobook" ) {
			$( '<div class="portlet" id="p-buttons"></div>' ).insertAfter( '#p-search' );
		} else if ( mw.config.get( "skin" ) == "vector" ) {
			$( '<div class="portlet" id="p-buttons"></div>' ).insertAfter( '#p-tb' );
		}
		
		$( "#p-buttons" ).append( '<div id="p-boomhut"><a href="/Wikikids:Boomhut"><img src="/images/3/38/Boomhut_klein.gif" border="0"></a></div>' );
		$( "#p-buttons" ).append( '<div id="p-alarm"><a href="/Wikikids:Alarm"><img src="/images/8/88/Alarm_klein.gif" border="0"></a></div>' );
	}
} );

/*
 * Automatisch een icoon weergeven rechtsboven de pagina wanneer deze beveiligd is
 */
jQuery(function($) {
	if (mw.config.get('wgPageName') == mw.config.get('wgMainPageTitle') 
		|| mw.config.get('wgCanonicalNamespace') == "Special" 
		|| typeof(mw.config.get('wgRestrictionEdit')) == "undefined"
	) {
		// Hoofdpagina, speciale pagina of niet beschermbaar
		return false;
	}

	if ($('#bodyContent')['length'] == 0) {
		// Kan geen tekst vinden
		return false;
	}

	// Juiste beveligingssjabloon uitzoeken.
	if (mw.config.get('wgRestrictionEdit')[0] != null && mw.config.get('wgRestrictionEdit')[0] == 'sysop') {
		// Alleen moderatoren kunnen bewerken
		var templateTitle = 'Beveiligd';
		var nodeId = 'templ_Beveiligd';
	} else if (mw.config.get('wgRestrictionEdit')[0] != null && mw.config.get('wgRestrictionEdit') == 'autoconfirmed') {
		// Alleen automatisch bevestigde gebruikers kunnen bewerken.
		var templateTitle = 'SemiBeveiligd';
		var nodeId = 'templ_SemiBeveiligd';
	} else if (mw.config.get('wgRestrictionMove')[0] != null) {
		// Het verplaatsen van de pagina is beveiligd.
		var templateTitle = 'TitelBeveiligd';
		var nodeId = 'templ_TitelBeveiligd';
	} else {
		// De pagina is niet beveiligd.
		return false;
	}

	// Get template from API.
	$.getJSON(
	mw.util.wikiScript('api'), 
	{
		format: 'json',
		action: 'parse',
		text: '{{' + encodeURIComponent(templateTitle) + '}}',
		contentmodel: 'wikitext'
	},
	function(obj) {
		$('.mw-indicators').before(obj['parse']['text']['*']);
	}
	);
});

/*
 * Inklapbare div
 */
var UitklapDivHide = 'Inklappen';
var UitklapDivShow = 'Uitklappen';
 
// shows and hides content of Uitklap divs
// Parameters:
// indexUitklapDiv: the index of Uitklap div to be toggled
var toggleUitklapDiv = window.toggleUitklapDiv = function(indexUitklapDiv) {
	var UitklapToggle = document.getElementById('UitklapToggle' + indexUitklapDiv);
	var UitklapFrame = document.getElementById('UitklapFrame' + indexUitklapDiv);
	var UitklapChild;

	if (!UitklapFrame || !UitklapToggle) {
		return false;
	}
 
	// if shown now
	if (UitklapToggle.firstChild.data === UitklapDivHide) {
		for (
			UitklapChild = UitklapFrame.firstChild;
			UitklapChild !== null;
			UitklapChild = UitklapChild.nextSibling
		) {
			if (UitklapChild.className === 'UitklapContent') {
				UitklapChild.style.display = 'none';
			}
			if (UitklapChild.className === 'UitklapToggle') {
				UitklapChild.firstChild.data = UitklapDivShow;
			}
		}

	// if hidden now
	} else if (UitklapToggle.firstChild.data === UitklapDivShow) {
		for (
			UitklapChild = UitklapFrame.firstChild;
			UitklapChild !== null;
			UitklapChild = UitklapChild.nextSibling
		) {
			if (UitklapChild.className === 'UitklapContent') {
				UitklapChild.style.display = 'block';
			}
			if (UitklapChild.className === 'UitklapToggle') {
				UitklapChild.firstChild.data = UitklapDivHide;
			}
		}
	}
};

// adds show/hide-button to navigation bars
function createUitklapDivToggleButton() {
	var indexUitklapDiv = 0;
	var i, u, UitklapFrame;
	// iterate over all < div >-elements
	for (i = 0; (UitklapFrame = document.getElementsByTagName('div')[i]); i++) {
		// if found a navigation bar
		if (UitklapFrame.className === 'UitklapFrame' || UitklapFrame.className === 'UitklapFrameNoClear') {

			indexUitklapDiv++;
			var UitklapToggle = document.createElement('a');
			UitklapToggle.className = 'UitklapToggle';
			UitklapToggle.setAttribute('id', 'UitklapToggle' + indexUitklapDiv);
			$(UitklapToggle).data('mwUitklapFrameIndex', indexUitklapDiv).click(function (e) {
				toggleUitklapDiv($(this).data('mwUitklapFrameIndex'));
				e.preventDefault();
			});

			var UitklapToggleText = document.createTextNode(UitklapDivHide);
			UitklapToggle.appendChild(UitklapToggleText);

			// add NavToggle-Button as first div-element
			// in < div class="UitklapFrame" >
			UitklapFrame.insertBefore(UitklapToggle, UitklapFrame.firstChild);
			UitklapFrame.setAttribute('id', 'UitklapFrame' + indexUitklapDiv);
		}
	}
	for (u = 1; u <= indexUitklapDiv; u++) {
		toggleUitklapDiv(u);
	}
}

$(createUitklapDivToggleButton);
	
jQuery(function(){$('#sidebar').append($('#p-tb'))});

/**
  * Collapsible tables
  * Allows tables to be collapsed, showing only the header. See [[:en:Wikipedia:NavFrame]].
  * Maintainers: [[:en:User:R. Koot]]
  */
var autoCollapse = 2;
var collapseCaption = 'verbergen';
var expandCaption = 'weergeven';

function collapseTable(tableIndex) {
	var Button = document.getElementById('collapseButton' + tableIndex);
	var Table = document.getElementById('collapsibleTable' + tableIndex);
	var i;

	if (!Table || !Button) {
		return false;
	}

	var Rows = Table.getElementsByTagName('tr');

	if (Button.firstChild.data === collapseCaption) {
		for (i = 1; i < Rows.length; i++) {
			Rows[i].style.display = 'none';
		}
		Button.firstChild.data = expandCaption;
	} else {
		for (i = 1; i < Rows.length; i++) {
			Rows[i].style.display = Rows[0].style.display;
		}
		Button.firstChild.data = collapseCaption;
	}
}

function createCollapseButtons() {
	var tableIndex = 0;
	var NavigationBoxes = {};
	var Tables = document.getElementsByTagName('table');
	var i;

	for (i = 0; i < Tables.length; i++) {
		if ($(Tables[i]).hasClass('collapsible')) {
			NavigationBoxes[tableIndex] = Tables[i];
			Tables[i].setAttribute('id', 'collapsibleTable' + tableIndex);

			var Button = document.createElement('span');
			var ButtonLink = document.createElement('a');
			var ButtonText = document.createTextNode(collapseCaption);

			Button.style.styleFloat = 'right';
			Button.style.cssFloat = 'right';
			Button.style.fontWeight = 'normal';
			Button.style.textAlign = 'right';
			Button.style.width = "6em";

			ButtonLink.setAttribute('id', 'collapseButton' + tableIndex);
			$(ButtonLink).data('mwCollapsibleTableIndex', tableIndex).click(function (e) {
				collapseTable($(this).data('mwCollapsibleTableIndex'));
					e.preventDefault();
			});
			ButtonLink.appendChild(ButtonText);

			Button.appendChild(document.createTextNode('['));
			Button.appendChild(ButtonLink);
			Button.appendChild(document.createTextNode(']'));

			var Header = Tables[i].getElementsByTagName('tr')[0].getElementsByTagName('th')[0];
			/* only add button and increment count if there is a header row to work with */
			if (Header) {
				Header.insertBefore(Button, Header.childNodes[0]);
				tableIndex++;
			}
		}
	}

	for (i = 0;  i < tableIndex; i++) {
		if ($(NavigationBoxes[i]).hasClass('collapsed') || (tableIndex >= autoCollapse && $(NavigationBoxes[i]).hasClass( 'autocollapse'))) {
			collapseTable(i);
		}
	}
}

$(createCollapseButtons);

/*
 * Automatisch legen van de samenvatting op Speciaal:Verwijderen
 */
function legen_verwijdersamenvatting() {
	document.getElementById('wpReason').value = '';
	document.getElementById('wpReason').focus();
} 
if ( mw.config.get( 'wgAction' ) === 'delete' ) {
	$(legen_verwijdersamenvatting);
}

/*
 * Gemodificeerd editcount script op Gebruiker:Apoo/Editcount
 */
mw.loader.load('https://wikikids.nl/index.php?title=User:Apoo/EditCount.js&action=raw&ctype=text/javascript');
Afkomstig van Wikikids , de interactieve Nederlandstalige Internet-encyclopedie voor en door kinderen. "https://wikikids.nl/index.php?title=MediaWiki:Common.js&oldid=571988"