ميدياويكي:Gadget-quickeditcounter.js

هذه هي النسخة الحالية من هذه الصفحة، وقام بتعديلها عبود السكاف (نقاش | مساهمات) في 19:31، 27 مارس 2012 (أنشأ الصفحة ب'// UWAGA! Z tego gadżetu korzystają także inne projekty // Original version: // - QuickEditCounter script by pl:User:ChP94 // - Released under the [http://www.gn...'). العنوان الحالي (URL) هو وصلة دائمة لهذه النسخة.

(فرق) → نسخة أقدم | نسخة حالية (فرق) | نسخة أحدث ← (فرق)

ملاحظة: بعد الحفظ، قد يلزمك إفراغ الكاش لرؤية التغييرات.

// UWAGA! Z tego gadżetu korzystają także inne projekty
// 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]]

window.qecGadget = {
	version: 9,

	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',
			format:	'json',
			ususers:	this.username,
			requestid:	new Date().getTime()
		};

		jQuery.getJSON( mw.util.wikiScript( 'api' ), request, function(result) {
			jQuery(document).ready(function() {
				if (result) {
					that.showResults(result);
				}
			});
		});
	},
	showResults: function(data) {
		data = data.query.users[0];
		if (!data || data.name != this.username || data.invalid != null || 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 html = data.gender == "female" ? 'عدد تعديلاتها' : 'عدد تعديلاته';
		var lang = 'ar';
		var wiki = 'wikipedia';

		var m;
		if (m = mw.config.get( 'wgServer' ).match(/^(?:http:)?\/\/(.+?).([^.]+).org$/)) {
			lang = m[1];
			wiki = m[2];
		}
		else if (m = mw.config.get( 'wgScriptPath' ).match(/\/(.+?)\/(.+?)\//)) {
			lang = m[2];
			wiki = m[1];
		}

		html += ' <a href="//toolserver.org/~tparis/pcount/index.php?name=' + encodeURIComponent(this.username) + '&wiki=' + encodeURIComponent(wiki) + '&lang=' + encodeURIComponent(lang) + '">' + data.editcount + '</a>';

		var div = document.createElement("div");
		div.style.cssText = "font-size:0.5em;line-height:1.5em;margin-right:1em;";
		div.className = 'plainlinks';
		div.innerHTML = html;

		if ( mw.config.get( 'skin' ) == 'modern' ) {
			div.style.marginRight = "10px";
			div.style.display = "inline-block";
		}

		firstHeading.appendChild(div);
	}
};

qecGadget.init();