מדיה ויקי:Gadget-SysopRequests.js

הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
/***
SOURCE: he.wikipedia.org/wiki/MediaWiki:Gadget-DeleteRequest.js
***/
if(mw.config.get('wgNamespaceNumber') + 1) // not a special page
$(function(){

function save(title, summary, content, section, next) {
	var param = {action: 'edit', title: title, summary: summary, token: mw.user.tokens.get('csrfToken'), section: section || '0', appendtext: content, format: 'json'};
	$.post(mw.util.wikiScript('api'), param, function(data) {
		if (data && data.error)
			mw.util.jsMessage('שגיאה: ' + data.error['info']);
		else if (data && data.edit && data.edit.result == 'Success' && typeof next == 'function')
			next();
	});
}

function addMenuItem(caption, tooltip, section, message, summary, accessKey, replaceParam) {
	if (replaceParam) {
		var r = /replaceParam/g;
		tooltip = tooltip.replace(r, replaceParam);
		message = message.replace(r, replaceParam);
		summary = summary.replace(r, replaceParam);
	}
	var a = mw.util.addPortletLink('p-cactions','#',caption,'',tooltip,(accessKey||''));
	$(a).click(function() {
		var reason = prompt('אין באפשרותך לבצע את הפעולה הזאת, אבל ניתן לבקש ממפעילי המערכת לבצע אותה. כדי להוסיף את הבקשה לדף הבקשות ממפעילי המערכת, נא לרשום כאן את הסיבה לבקשה ולאחר מכן להקיש על Enter או ללחוץ על "אישור".');
		if ($.trim(reason) == '')
			return;
		message += ' - ' + reason + ' ~~' + '~~';
		save('ויקיספר:בקשות ממפעילים', summary, '\n\n* ' + message, section, function() { mw.util.jsMessage('הבקשה שלך נוספה לדף הבקשות ממפעילי המערכת.');});
	});
}

var ca = $.inArray(mw.config.get('wgNamespaceNumber'), [6, 14]) + 1 ?  ':' : '';
var pageName = mw.config.get('wgPageName').replace( /_/g, " " );
if ($('#t-contributions').length) {
	var badUser = mw.config.get('wgTitle').split('/')[0];
	addMenuItem('חסימה', 'בקשה לחסימת משתמש זה', 2, "{{לחסום|replaceParam}}", '/* בקשות חסימה / הסרת חסימה */ [[User:replaceParam|replaceParam]] ([[User talk:replaceParam|ש]]|[[Special:Contributions/replaceParam|ת]]|[[Special:Block/replaceParam|ח]])' ,']', badUser);
}
var pageLink = $('.redirectMsg').length ? '{{ללא הפניה|replaceParam}}' : '[[' + ca + 'replaceParam]]';
addMenuItem('הגנה', 'בקשה להגנה על דף זה', 3, pageLink, '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]' ,'=', pageName);
addMenuItem('מחיקה', 'בקשה למחיקת דף זה', 1, pageLink, '/* בקשות מחיקה */ [[replaceParam]]' ,'d', pageName);

if (mw.util.getParamValue('oldid') && mw.util.getParamValue('diff'))
	addMenuItem('הסתרת גרסה', 'בקשה להסתרת גרסה זו', 4, '([{{כתובת מלאה:' + mw.config.get('wgPageName') + '|diff=' + mw.util.getParamValue('diff') + '&oldid=' + mw.util.getParamValue('oldid') + '}} גרסה זו])', '/*בקשות מחיקת גרסאות מסוימות */ בקשה להסתרת גרסה בדף [[replaceParam]]' ,'[', pageName);

$( document ).trigger( 'new-portlet-link' );
});