MediaWiki:Gadget-ProtectionTemplates.js: verschil tussen versies
Uiterlijk
Verwijderde inhoud Toegevoegde inhoud
Using new Top icon system now (see common js/css) |
quick fix |
||
Regel 19: | Regel 19: | ||
// Determine template. |
// Determine template. |
||
if (wgRestrictionEdit |
if ( window.wgRestrictionEdit && wgRestrictionEdit.length && wgRestrictionEdit[0] == 'sysop') { |
||
// Editing is limited to sysops. |
// Editing is limited to sysops. |
||
var templateTitle = 'Beveiligd'; |
var templateTitle = 'Beveiligd'; |
Versie van 16 feb 2011 12:05
// <source lang='javascript'>
/**
* Protection templates
* Written by: Erwin
* Description: Display templates on protected pages.
*
*/
function protectionTemplates() {
if (wgPageName == wgMainPageTitle) {
// The current page is the main page. So quit.
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 ( window.wgRestrictionEdit && wgRestrictionEdit.length && wgRestrictionEdit[0] == 'sysop') {
// Editing is limited to sysops.
var templateTitle = 'Beveiligd';
var nodeId = 'tpl_Beveiligd';
} else if (wgRestrictionEdit[0] != null && wgRestrictionEdit[0] == 'autoconfirmed') {
// Editing is limited to autoconfirmed users.
var templateTitle = 'Semibeveiligd';
var nodeId = 'tpl_Semibeveiligd';
} else if (wgRestrictionMove[0] != null) {
// Moving the page is limited.
var templateTitle = 'TitelBeveiligd';
var nodeId = 'tpl_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 = 'Top_icon_dynamic';
divNode.innerHTML = divContent;
jQuery( 'h1:first' ).prepend( divNode );
}
};
request.setRequestHeader ('Pragma', 'cache=yes');
request.setRequestHeader ('Cache-Control', 'no-transform');
request.send (null);
}
addOnloadHook(protectionTemplates);
// </source>