Hypohalogenige Säuren und MediaWiki:Gadget-revisionCounter.js: Unterschied zwischen den Seiten
Erscheinungsbild
(Unterschied zwischen Seiten)
Inhalt gelöscht Inhalt hinzugefügt
Weiterleitung nach Halogensauerstoffsäuren erstellt |
K Umstellung auf mediawiki.api |
||
Zeile 1: | Zeile 1: | ||
//=========================================================================== |
|||
#WEITERLEITUNG [[Halogensauerstoffsäuren]] |
|||
// Fügt an den Reiter "Versionen/Autoren" die Anzahl Versionen an und die |
|||
// Anzahl vom Nutzer erstellter Versionen |
|||
//=========================================================================== |
|||
if (mw.config.get('wgNamespaceNumber') >= 0) { |
|||
$( function() { |
|||
if ( mw.config.get( 'revisionCounter.checkOnlyOnHistory', true ) && mw.config.get('wgAction') !== "history" ) { |
|||
return; |
|||
} |
|||
var api = new mw.Api; |
|||
var revisionCount = 0, revisionCountUser = 0; |
|||
var queryParams = { |
|||
action: 'query', |
|||
prop: 'revisions', |
|||
pageids: mw.config.get('wgArticleId'), |
|||
rvprop: 'user', |
|||
rvlimit: 'max', |
|||
requestid: mw.config.get('wgCurRevisionId') //Break client caching, when page has been edited |
|||
}; |
|||
var doQuery = function( api, queryParams ) { |
|||
api.get( |
|||
queryParams |
|||
).then( function( data ) { |
|||
queryResult( api, data ); |
|||
} ).fail( function( code, data ) { |
|||
mw.notify( |
|||
'Fehler beim ermitteln der Versionen' + |
|||
' (' + code + ( data && data.error && data.error.info ? ': ' + data.error.info : '' ) + ')', |
|||
{ tag: 'revisionCounter-error' } |
|||
); |
|||
} ); |
|||
}; |
|||
doQuery( api, $.merge( queryParams, { 'continue': '' } ) ); |
|||
var queryResult = function( api, res) |
|||
{ |
|||
var pageId = mw.config.get('wgArticleId'); |
|||
if (!res['query'] || !res['query']['pages'] || |
|||
!res['query']['pages'][pageId] || !res['query']['pages'][pageId]['revisions']) return; |
|||
var revs = res['query']['pages'][pageId]['revisions']; |
|||
revisionCount += revs.length; |
|||
var username = mw.config.get( 'wgUserName' ); |
|||
for (var i = 0; i < revs.length; i++) |
|||
if (revs[i]['user'] === username) revisionCountUser++; |
|||
if (res && res['continue']) |
|||
{ |
|||
doQuery( api, $.merge( queryParams, res['continue'] ) ); |
|||
} |
|||
else |
|||
{ |
|||
if (mw.config.get('skin') === 'vector') |
|||
{ |
|||
$("#ca-history a").text(function(index, curText) { |
|||
return curText + " (" + revisionCount + "/" + revisionCountUser + ")"; |
|||
}); |
|||
} |
|||
else |
|||
{ |
|||
var info = document.createElement("span"); |
|||
info.appendChild(document.createTextNode(" (" + revisionCount + "/" + revisionCountUser + ")")); |
|||
var infoTitle = document.createAttribute("title"); |
|||
infoTitle.nodeValue = "Insgesamt " + revisionCount + " Versionen, davon " + revisionCountUser + " von mir"; |
|||
info.setAttributeNode(infoTitle); |
|||
document.getElementById('ca-history').firstChild.appendChild(info); |
|||
} |
|||
} |
|||
} |
|||
}); |
|||
} |
Version vom 7. August 2015, 18:54 Uhr
//===========================================================================
// Fügt an den Reiter "Versionen/Autoren" die Anzahl Versionen an und die
// Anzahl vom Nutzer erstellter Versionen
//===========================================================================
if (mw.config.get('wgNamespaceNumber') >= 0) {
$( function() {
if ( mw.config.get( 'revisionCounter.checkOnlyOnHistory', true ) && mw.config.get('wgAction') !== "history" ) {
return;
}
var api = new mw.Api;
var revisionCount = 0, revisionCountUser = 0;
var queryParams = {
action: 'query',
prop: 'revisions',
pageids: mw.config.get('wgArticleId'),
rvprop: 'user',
rvlimit: 'max',
requestid: mw.config.get('wgCurRevisionId') //Break client caching, when page has been edited
};
var doQuery = function( api, queryParams ) {
api.get(
queryParams
).then( function( data ) {
queryResult( api, data );
} ).fail( function( code, data ) {
mw.notify(
'Fehler beim ermitteln der Versionen' +
' (' + code + ( data && data.error && data.error.info ? ': ' + data.error.info : '' ) + ')',
{ tag: 'revisionCounter-error' }
);
} );
};
doQuery( api, $.merge( queryParams, { 'continue': '' } ) );
var queryResult = function( api, res)
{
var pageId = mw.config.get('wgArticleId');
if (!res['query'] || !res['query']['pages'] ||
!res['query']['pages'][pageId] || !res['query']['pages'][pageId]['revisions']) return;
var revs = res['query']['pages'][pageId]['revisions'];
revisionCount += revs.length;
var username = mw.config.get( 'wgUserName' );
for (var i = 0; i < revs.length; i++)
if (revs[i]['user'] === username) revisionCountUser++;
if (res && res['continue'])
{
doQuery( api, $.merge( queryParams, res['continue'] ) );
}
else
{
if (mw.config.get('skin') === 'vector')
{
$("#ca-history a").text(function(index, curText) {
return curText + " (" + revisionCount + "/" + revisionCountUser + ")";
});
}
else
{
var info = document.createElement("span");
info.appendChild(document.createTextNode(" (" + revisionCount + "/" + revisionCountUser + ")"));
var infoTitle = document.createAttribute("title");
infoTitle.nodeValue = "Insgesamt " + revisionCount + " Versionen, davon " + revisionCountUser + " von mir";
info.setAttributeNode(infoTitle);
document.getElementById('ca-history').firstChild.appendChild(info);
}
}
}
});
}