הבדלים בין גרסאות בדף "מדיה ויקי:Gadget-DeleteRequest.js"

מתוך ויקיסוגיה
קפיצה לניווט קפיצה לחיפוש
(יצירת דף עם התוכן "/* הסקריפט מוסיף לשוניות "מחיקה", "הגנה" ו"חסימה" על מנת שאפשר יהיה לבקש מחיקת דפים, הגנת דפי...")
 
שורה 41: שורה 41:
action:'query',
action:'query',
prop: 'links',
prop: 'links',
titles: 'המכלול:בקשות ממפעילים',
titles: 'ויקיסוגיה:בקשות ממפעילים',
pltitles: mw.config.get('wgPageName'),
pltitles: mw.config.get('wgPageName'),
indexpageids: 1
indexpageids: 1
שורה 81: שורה 81:
switch (caption) {
switch (caption) {
case "בקש מחיקה":
case "בקש מחיקה":
openDialog(function(value){save('המכלול:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, value), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('המכלול:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('המכלול:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["הבל", "מילוני/אולטרה קצרמר", "הפניה מיותרת", "הפניה שגויה", "הפניה לדף טיוטה", "לא אנציקלופדי", "פרסומת", "שגוי/טעות", "לבקשת הכותב", "הועבר למרחב טיוטה", "הועבר למרחב המשתמש", "הועבר למרחב הערכים"], "מחוק את הדף");
openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, value), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["הבל", "מילוני/אולטרה קצרמר", "הפניה מיותרת", "הפניה שגויה", "הפניה לדף טיוטה", "לא אנציקלופדי", "פרסומת", "שגוי/טעות", "לבקשת הכותב", "הועבר למרחב טיוטה", "הועבר למרחב המשתמש", "הועבר למרחב הערכים"], "מחוק את הדף");
break;
break;
case "בקש חסימה":
case "בקש חסימה":
openDialog(function(value){save('המכלול:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, value), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('המכלול:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, selectValue), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('המכלול:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["השחתה לאחר אזהרה", "תוכן בלתי ראוי למכלול", "הפרעה", "כניסה למלחמת עריכה", "העלאת הבלים או ערכים חסרי תוכן", "הסרת תוכן מדפים", "שם משתמש לא מקובל", "לא בא/ה לתרום", "Upload spam"], "חסום את המשתמש");
openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, value), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, selectValue), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["השחתה לאחר אזהרה", "תוכן בלתי ראוי למכלול", "הפרעה", "כניסה למלחמת עריכה", "העלאת הבלים או ערכים חסרי תוכן", "הסרת תוכן מדפים", "שם משתמש לא מקובל", "לא בא/ה לתרום", "Upload spam"], "חסום את המשתמש");
break;
break;
case "בקש הגנה":
case "בקש הגנה":
openDialog(function(value){save('המכלול:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, value), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('המכלול:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('המכלול:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["השחתות רבות", "אקטואלי", "טיפול מונע", "מלחמת עריכה"], "הגן על הדף");
openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, value), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["השחתות רבות", "אקטואלי", "טיפול מונע", "מלחמת עריכה"], "הגן על הדף");
break;
break;
case "בקש הסתרת גרסה":
case "בקש הסתרת גרסה":
openDialog(function(value){save('המכלול:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, value), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('המכלול:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, selectValue), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('המכלול:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["תוכן פוגעני", "תמונה לא ראויה", "תוכן בלתי ראוי למכלול", "לשון הרע/כבוד תח", "הוסרה תבנית סינון"], "הסתיר את הגרסה");
openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, value), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, selectValue), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["תוכן פוגעני", "תמונה לא ראויה", "תוכן בלתי ראוי למכלול", "לשון הרע/כבוד תח", "הוסרה תבנית סינון"], "הסתיר את הגרסה");
break;
break;
}
}
שורה 109: שורה 109:
addMenuItem('בקש הסתרת גרסה', 'בקשה להסתיר את הגרסה ' + mw.util.getParamValue('diff') , '{{הבדל|' + mw.config.get('wgPageName') + '|' + mw.util.getParamValue('diff') + '|' + mw.util.getParamValue('oldid') + '|טקסט=גרסה זו}} ב[['+ mw.config.get('wgPageName').replace( /_/g, " " ) +']]', '[');
addMenuItem('בקש הסתרת גרסה', 'בקשה להסתיר את הגרסה ' + mw.util.getParamValue('diff') , '{{הבדל|' + mw.config.get('wgPageName') + '|' + mw.util.getParamValue('diff') + '|' + mw.util.getParamValue('oldid') + '|טקסט=גרסה זו}} ב[['+ mw.config.get('wgPageName').replace( /_/g, " " ) +']]', '[');
$( document ).trigger( 'new-portlet-link' );
$( document ).trigger( 'new-portlet-link' );
});
}); </syntaxhighlight>
|}

גרסה מ־20:19, 19 בדצמבר 2021

/* הסקריפט מוסיף לשוניות "מחיקה", "הגנה" ו"חסימה" על מנת שאפשר יהיה לבקש מחיקת דפים, הגנת דפים וחסימת משתמשים באמצעות דף בקשות ממפעילים. */
if(mw.config.get('wgNamespaceNumber') + 1) // not a special page
$(function(){
function openDialog(code1, code2, code3, reasons, req) {
	var dialog = $("<div>").html("סיבה: ").dialog({title: "בקשה ל" + req});
	var select = $("<select>").append($("<option>").append("אחר"));
	dialog.append(select);
	for (var id in reasons) {
		select.append($("<option>").append(reasons[id]));	
	}
	var input = $("<input>");
	dialog.append($("<br>"), "סיבה אחרת/נוספת: ", input);
	input.focus();
	$(dialog).keypress(function(event) {
		if (event.key == "Enter") {
			var value = input["0"].value, selectValue = select["0"].value;
			if (value === "" && selectValue == "אחר") alert("לא מולאה סיבה");
			if (value !== "" && selectValue == "אחר") code1(value);
			if (value === "" && selectValue != "אחר") code2(selectValue);
			if (value !== "" && selectValue !== "אחר") code3(value, selectValue);
			dialog.dialog('close');
		}
	});
	dialog.dialog('option', 'buttons', {
		'בוצע':
			function(){
				var value = input["0"].value, selectValue = select["0"].value;
				if (value === "" && selectValue == "אחר") alert("לא מולאה סיבה");
				if (value !== "" && selectValue == "אחר") code1(value);
				if (value === "" && selectValue != "אחר") code2(selectValue);
				if (value !== "" && selectValue !== "אחר") code3(value, selectValue);
				dialog.dialog('close');
			},
		'סגור':
			function() {dialog.dialog('close');}
	});
}
function checkRequest() {
	var requestChecker = new $.Deferred();
	new mw.Api().get( {
		action:'query',
		prop: 'links',
		titles: 'ויקיסוגיה:בקשות ממפעילים',
		pltitles: mw.config.get('wgPageName'),
		indexpageids: 1
	}).done(function(d) {
		d = d.query;
		if ( d && d.pageids && d.pageids.length ) {
			d = d.pages[d.pageids[0]];
			if ( d.links && d.links.length > 0 )
			{
				if (!confirm('הדף כבר מוזכר בבקשות ממפעילים. האם לשלוח בכל זאת את הבקשה?')) {
					requestChecker.reject('.הדף כבר מוזכר בבקשות ממפעילים. הבקשה לא נשמרה');
					return;
				}
			}
		}
		requestChecker.resolve();
	});
	return requestChecker;
}

function save(title, summary, content, section, next) {
	var param = {action: 'edit', title: title, summary: summary.replace(/replaceParam/g, mw.config.get("wgPageName").replace(/_/g, " ")).replace(/replaceUser/g, mw.config.get('wgRelevantUserName')), token: mw.user.tokens.get('editToken'), section: section || '0', appendtext: content, format: 'json'};
	$.post(mw.util.wikiScript('api'), param, function(data) {
		if (data && data.error)
			mw.notify('שגיאה בשמירה: ' + data.erro[info]);
		else if (data && data.edit && data.edit.result == 'Success' && typeof next == 'function')
			next();
	});
}

function addMenuItem(caption, tooltip, message, accessKey) {
	var a = mw.util.addPortletLink('p-cactions','#',caption,'',tooltip.replace(/replaceParam/g, mw.config.get("wgPageName").replace(/_/g, " ")).replace(/replaceUser/g, mw.config.get('wgRelevantUserName')),(accessKey||''));
	$(a).click(function() {
		checkRequest().fail(function(err){
			mw.notify(err);
		}).done(function(){
			if (message.match(/reason/)) {message += ' ~~' + '~~'}else{message += ' - reason ~~' + '~~'}
			message = message.replace(/replaceParam/g, mw.config.get('wgPageName').replace(/_/g, " ")).replace(/replaceUser/g, mw.config.get('wgRelevantUserName'));
			switch (caption) {
				case "בקש מחיקה":
					openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, value), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 1, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["הבל", "מילוני/אולטרה קצרמר", "הפניה מיותרת", "הפניה שגויה", "הפניה לדף טיוטה", "לא אנציקלופדי", "פרסומת", "שגוי/טעות", "לבקשת הכותב", "הועבר למרחב טיוטה", "הועבר למרחב המשתמש", "הועבר למרחב הערכים"], "מחוק את הדף");
					break;
				case "בקש חסימה":
					openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, value), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, selectValue), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', "/* בקשות חסימה / הסרת חסימה */ [[משתמש:replaceUser:replaceUser|replaceUser]] ([[שיחת משתמש:replaceUser|ש]]|[[מיוחד:תרומות/replaceUser|ת]]|[[מיוחד:חסימה/replaceUser|ח]])", '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 2, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["השחתה לאחר אזהרה", "תוכן בלתי ראוי למכלול", "הפרעה", "כניסה למלחמת עריכה", "העלאת הבלים או ערכים חסרי תוכן", "הסרת תוכן מדפים", "שם משתמש לא מקובל", "לא בא/ה לתרום", "Upload spam"], "חסום את המשתמש");
					break;
				case "בקש הגנה":
					openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, value), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות הגנה / הסרת הגנה */ [[replaceParam]]', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 3, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["השחתות רבות", "אקטואלי", "טיפול מונע", "מלחמת עריכה"], "הגן על הדף");
					break;
				case "בקש הסתרת גרסה":
					openDialog(function(value){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, value), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, selectValue), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, function(value, selectValue){save('ויקיסוגיה:בקשות ממפעילים', '/* בקשות מחיקת גרסאות מסוימות */ הסתרת גרסה', '\n\n* ' + message.replace(/reason/g, selectValue + ": " + value), 4, function() { mw.notify('בקשתך נשמרה בדף הבקשות ממפעילים');})}, ["תוכן פוגעני", "תמונה לא ראויה", "תוכן בלתי ראוי למכלול", "לשון הרע/כבוד תח", "הוסרה תבנית סינון"], "הסתיר את הגרסה");
					break;
			}
		});
	});
}
var ca = $.inArray(mw.config.get('wgNamespaceNumber'), [6, 14]) + 1 ?  ':' : '';
var pageName = mw.config.get('wgPageName').replace( /_/g, " " );
if ($('#t-contributions').length) {
	addMenuItem('בקש חסימה', 'בקשה לחסום את replaceUser', "{{לחסום|replaceUser}}", "]");
}
var pageLink = $('.redirectMsg').length ? '{{ללא הפניה|replaceParam}}' : '[[' + ca + 'replaceParam]]';
addMenuItem('בקש הגנה', 'בקשה להגן על הדף replaceParam', pageLink, '=');
var deleteTemplate = $('.redirectMsg').length ? '{{בקשת מחיקה|replaceParam|reason|הפניה=כן}}' : '{{בקשת מחיקה|replaceParam|reason}}';
if (!mw.util.getParamValue('redlink'))
	addMenuItem('בקש מחיקה', 'בקשה למחוק את הדף replaceParam', deleteTemplate,'d');
if (mw.util.getParamValue('oldid') && mw.util.getParamValue('diff'))
	addMenuItem('בקש הסתרת גרסה', 'בקשה להסתיר את הגרסה ' + mw.util.getParamValue('diff') , '{{הבדל|' + mw.config.get('wgPageName') + '|' + mw.util.getParamValue('diff') + '|' + mw.util.getParamValue('oldid') + '|טקסט=גרסה זו}} ב[['+ mw.config.get('wgPageName').replace( /_/g, " " ) +']]', '[');
$( document ).trigger( 'new-portlet-link' );
}); </syntaxhighlight>
|}