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
/* JavaScript die hier wordt geplaatst heeft invloed op alle pagina's voor alle gebruikers 

<pre>*/

//Als het goed is wordt de scrollbalk nu niet weergegeven, maar word het suggestievakje wat groter...
os_max_lines_per_suggest = 10;

/**********************************/
/* Pas op: Dit is een woordenboek */
/*                         script */
/* Sumurai8; contact: OP          */
/* Maakt 'tooltips' mogelijk      */
/* Zie Sjabloon:Wbwoord           */
/*     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
  }
}

addOnloadHook(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"
  }
}

// <source lang='javascript'>

function protectionTemplates() {
  if (wgPageName == wgMainPageTitle || wgCanonicalNamespace == "Special" || typeof(wgRestrictionEdit) == "undefined") {
    // The current page is the main page, a special page or new. Nothing to do there!
    return false;
  }

  var content = document.getElementById('content');   
  if (content == null || document.getElementsByTagName('h1')[0] == null) {
    // There is no 'content' element and/or no h1 element. So quit.
    return false;
  }

  // Determine template.
  if (wgRestrictionEdit[0] != null && wgRestrictionEdit[0] == 'sysop') {
    // Editing is limited to sysops.
    var templateTitle = 'Beveiligd';
    var nodeId = 'templ_Beveiligd';
  } else if (wgRestrictionEdit[0] != null && wgRestrictionEdit[0] == 'autoconfirmed') {
    // Editing is limited to autoconfirmed users. Effectief nutteloos op deze wiki, dus geen sjabloon
    return false;
  } else if (wgRestrictionMove[0] != null) {
    // Moving the page is limited.
    var templateTitle = 'TitelBeveiligd';
    var nodeId = 'templ_TitelBeveiligd';
  } else {
    // The page is not protected.
    return false;
  }

  // Get template from API.
  var request = sajax_init_object();
  request.open('GET', wgServer + wgScriptPath + '/api.php?format=json&action=parse&text={{' + encodeURIComponent(templateTitle) + '}}&title=' + encodeURIComponent(wgPageName), true);
  request.onreadystatechange =
    function () {
      if (request.readyState != 4) return;
      if (request.status == 200 && request.responseText && request.responseText.charAt(0) == '{') {
        var json = eval ('(' + request.responseText + ')');
        if (json.parse.text['*']) {
          var divContent = json.parse.text['*'];
        }
      }

      if (divContent != null) {
        // We retrieved the template. Add it to the page.
        var divNode = document.createElement('div');
        divNode.id = nodeId;
        divNode.className = 'Titel_item3';
        divNode.innerHTML = divContent;
        content.insertBefore(divNode, document.getElementsByTagName('h1')[0]);
      }
      if( $('#awardtemplate').length ) { $('#protectedtext').hide() }
    };
  request.setRequestHeader ('Pragma', 'cache=yes');
  request.setRequestHeader ('Cache-Control', 'no-transform');
  request.send (null); 
}
 
addOnloadHook(protectionTemplates);


//Voeg automatisch beschrijvingsjabloon in op [[Speciaal:Upload]]
addOnloadHook( function() {
  $('.uploadTemplate').addClass('opvallend');
  if($('#wpDestFile').val() == "") {
    $('#wpUploadDescription').val('{{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}}');
    $('.uploadTemplate').hide();
  }
} );


//Automatische suggestie voor een al bestaand artikel over dit onderwerp in het enkelvoud
addOnloadHook( function() {
  if( $('.mw-newarticletext').length ) {
    var titles = [];
    if( wgTitle.split(" ").length > 1 ) {
      return false;
    }
    //Werken -> Werk
    if( wgTitle.substring( wgTitle.length - 2 ) == "en" ) {
      titles.push( wgTitle.substring( 0, wgTitle.length - 2 ) );
    }
    //Musicals -> Musical
    if( wgTitle.substring( wgTitle.length - 1 ) == "s" ) {
      titles.push( wgTitle.substring( 0, wgTitle.length - 1 ) );
    }
    //Fora -> Forum
    if( wgTitle.substring( wgTitle.length - 1 ) == "a" ) {
      titles.push( wgTitle.substring( 0, wgTitle.length - 1 ) + "um" );
    }
    //Technici -> Technicus
    if( wgTitle.substring( wgTitle.length - 1 ) == "i" ) {
      titles.push( wgTitle.substring( 0, wgTitle.length - 1 ) + "us" );
    }
    if( titles.length ) {
      $('.mw-newarticletext').append( $('<div></div>').addClass("mw-articleAlert") );
      $.get("http://wikikids.wiki.kennisnet.nl/api.php?action=query&prop=info&inprop=url&format=json&titles="+titles.join("|"), function( data ) { 
        for(page in data['query']['pages']) {
          if( data['query']['pages'][page]['missing'] != "" && data['query']['pages'][page]['redirect'] != "" ) {
            $('.mw-articleAlert').html('<b>Let op:</b> Er bestaat mogelijk al een artikel over dit onderwerp op deze pagina: <a href="'+data['query']['pages'][page]['fullurl']+'">'+data['query']['pages'][page]['title']+'</a>. Controleer dit eerst!').addClass("errorbox");
          }
        }
      } );
    }
  }
} );


//[Bugfix] Prepend de volledige url als de titel begint met een / en de relatieve url dus faalt
addOnloadHook( function() {
  if( wgPageName[0] == "/" ) {
    $('#editform').attr('action', '?action=submit');
    $('a[href^="/' + wgPageName + '"]').attr('href', function(i, oldval) { return '//wikikids.wiki.kennisnet.nl' + oldval } );
  }
} );

// ============================================================
	// BEGIN Dynamisch inklapbare div
 
	// set up the words in your language
	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);
 
	// EIND Dynamisch inklapbare div
	// ============================================================

/*</pre>*/
Afkomstig van Wikikids , de interactieve Nederlandstalige Internet-encyclopedie voor en door kinderen. "https://wikikids.nl/index.php?title=MediaWiki:Common.js&oldid=346272"