मीडियाविकि:Gadget-quickeditcounter.js
सूचना: सम्पादनहरू प्रकाशित गरेपछि, परिवर्तनहरू हेर्नको लागि तपाईंले आफ्नो ब्राउजरको क्यासलाई बाइपास गर्नुपर्छ। गुगल क्रोम, फायरफक्स, माइक्रोसफ्ट एज र सफारी: ⇧ Shift कुञ्जी थिचिराखेर रिलोड उपकरणपट्टी बटनमा थिच्नुहोस्।
// Warning! This gadget also use other projects.
// Original version:
// - QuickEditCounter script by [[:pl:User:ChP94]]
// - Released under the [http://www.gnu.org/licenses/gpl.txt GNU Public License (GPL)]
// Modified by: [[:pl:User:Beau]], [[:pl:User:Rzuwig]], [[:fr:User:Arkanosis]], [[:d:User:Vivaelcelta]]
window.qecGadget = {
version: 10,
_i18n: ( function () {
var l10n = {
bn: {
thismaleusermade: 'এই পুরুষ ব্যবহারকারী',
thisfemaleusermade: 'এই মহিলা ব্যবহারকারী',
total: 'মোট',
edits: 'টি সম্পাদনা করেছেন'
},
ca: {
thismaleusermade: 'Aquest usuari ha fet',
thisfemaleusermade: 'Aquesta usuària ha fet',
total: 'un total de',
edits: 'edicions'
},
cs: {
thismaleusermade: 'Tento uživatel provedl',
thisfemaleusermade: 'Tato uživatelka provedla',
total: 'celkem',
edits: 'editací'
},
de: {
thismaleusermade: 'Dieser Benutzer hat',
thisfemaleusermade: 'Diese Benutzerin hat',
total: 'insgesamt',
edits: 'Bearbeitungen durchgeführt'
},
el: {
thismaleusermade: 'Ο χρήστης αυτός έχει κάνει',
thisfemaleusermade: 'Ο χρήστης αυτός έκανε',
total: 'συνολικά',
edits: 'επεξεργασίες'
},
en: {
thismaleusermade: 'This user has made',
thisfemaleusermade: 'This user has made',
total: 'a total of',
edits: 'edits'
},
eo: {
thismaleusermade: 'Tiu ĉi uzanto faris',
thisfemaleusermade: 'Tiu ĉi uzanto faris',
total: 'entute',
edits: 'redaktojn'
},
es: {
thismaleusermade: 'Este usuario hizo',
thisfemaleusermade: 'Esta usuaria hizo',
total: 'un total de',
edits: 'ediciones'
},
fr: {
thismaleusermade: 'Cet utilisateur a fait',
thisfemaleusermade: 'Cette utilisatrice a fait',
total: 'un total de',
edits: 'éditions'
},
gl: {
thismaleusermade: 'Este usuario fixo',
thisfemaleusermade: 'Esta usuaria fixo',
total: 'un total de',
edits: 'edicións'
},
id: {
thismaleusermade: 'Pengguna ini telah membuat',
thisfemaleusermade: 'Pengguna ini telah membuat',
total: 'sebanyak',
edits: 'suntingan'
},
it: {
thismaleusermade: 'Questo utente ha fatto',
thisfemaleusermade: 'Questa utente ha fatto',
total: 'un totale di',
edits: 'modifiche'
},
ja: {
thismaleusermade: 'この利用者は',
thisfemaleusermade: 'この利用者は',
total: ' ',
edits: '編集回数持ってます。'
},
ko: {
thismaleusermade: '이 사용자는',
thisfemaleusermade: '이 사용자는',
total: '총',
edits: '회 편집하였습니다'
},
mk: {
hismaleusermade: 'Корисников има направено',
thisfemaleusermade: 'Корисничкава има направено',
total: 'вкупно',
edits: 'уредувања'
},
pl: {
thismaleusermade: 'Ten użytkownik wykonał',
thisfemaleusermade: 'Ta użytkowniczka wykonała',
total: 'łącznie',
edits: 'edycji'
},
sk: {
thismaleusermade: 'Tento redaktor vykonal',
thisfemaleusermade: 'Táto redaktorka vykonala',
total: 'dokopy',
edits: 'úprav'
},
sv: {
thismaleusermade: 'Den här användaren har utfört',
thisfemaleusermade: 'Den här användare har utfört',
total: 'sammanlagt',
edits: 'redigeringar'
}
};
var lang = mw.config.get( 'wgUserLanguage' );
if ( !l10n[ lang ] ) {
lang = 'en';
}
return function ( key ) {
if ( l10n[ lang ][ key ] ) {
return l10n[ lang ][ key ];
} else {
return l10n.en[ key ];
}
};
} )(),
init: function () {
if ( mw.config.get( 'wgNamespaceNumber' ) !== 2 && mw.config.get( 'wgNamespaceNumber' ) !== 3 ) {
return;
}
if ( mw.util.getParamValue( 'printable' ) === 'yes' ) {
return;
}
this.username = mw.config.get( 'wgTitle' ).replace( /\/.*$/, '' );
var that = this;
var request = {
action: 'query',
list: 'users',
usprop: 'editcount|gender',
ususers: this.username,
requestid: new Date().getTime()
};
var api = new mw.Api();
api.get( request )
.done( function ( result ) {
if ( result ) {
jQuery( document ).ready( function () {
that.showResults( result );
} );
}
} );
},
showResults: function ( data ) {
data = data.query.users[0];
if ( !data || data.name !== this.username || data.invalid || data.editcount === undefined )
return;
var firstHeading;
var headers = document.getElementsByTagName( 'h1' );
for ( var i = 0; i < headers.length; i++ ) {
var header = headers[i];
if ( header.className === 'firstHeading' || header.id === 'firstHeading' || header.className === 'pagetitle' ) {
firstHeading = header; break;
}
}
if ( !firstHeading ) {
firstHeading = document.getElementById( 'section-0' );
}
if ( !firstHeading ) {
return;
}
var url = '//tools.wmflabs.org/xtools-ec/?' + $.param( {
user: this.username,
project: mw.config.get( 'wgServerName' )
} );
var html = data.gender === 'female'
? this._i18n( 'thisfemaleusermade' )
: this._i18n( 'thismaleusermade' );
html += ' ' + this._i18n( 'total' ) + ' <a href="' + url + '">' + data.editcount + '</a> ' + this._i18n( 'edits' ) + '.';
var div = document.createElement( 'div' );
div.style.cssText = 'font-size:0.5em;line-height:1em';
div.className = 'plainlinks';
div.innerHTML = html;
if ( mw.config.get( 'skin' ) === 'modern' ) {
div.style.marginLeft = '10px';
div.style.display = 'inline-block';
}
firstHeading.appendChild( div );
}
};
qecGadget.init();