משתמשת:Neriah/Redirect.js
מראה
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
mw.loader.using( [ 'mediawiki.util', 'mediawiki.api', "mediawiki.user", "jquery.ui" ] ).then( function() {
if (mw.config.get("wgNamespaceNumber") === 0) {
$(mw.util.addPortletLink('p-tb', '#', "צור הפניה", "createRedirect", "כלי ליצירת הפניות במהירות", "9")).click(function() {
var dialog = $("<div>").html($("<input class='inputR'><input class='inputR'><input class='inputR'>")).dialog({title: "איפה ליצור את ההפניה?"});
dialog.before($("<button>").append("עוד הפניה").click(function(){
dialog.append($("<br>"), $("<input class='inputR'>"));
}));
$(dialog).keypress(function(key){if (key.key == "Enter") dialog.append($("<br>"), $("<input class='inputR'>"));});
var Api = new mw.Api();
dialog.before($("<button>").append("בצע").click(function(){
for (var num in $(".inputR")) {
var redirect = "#הפניה [[" + mw.config.get('wgPageName').replace(/_/g, " ") + "]]";
var pageName = $(".inputR")[num].value;
if (pageName && pageName.match(/#/)) {
redirect = redirect.replace(/\]\]/, pageName.match(/(#.+)/)[1] + "]]");
pageName = pageName.replace(/#.+/, "");
}
if (pageName) {
var sum = prompt("תקציר עריכה לדף " + pageName);
if (sum === "") {
sum = "הפניה לדף " + "[[" + mw.config.get('wgPageName').replace(/_/g, " ") + "]]";
}
Api.post({
action : 'edit',
title : pageName,
text: redirect,
summary: sum,
createonly: true,
token : mw.user.tokens.get('csrfToken')
}).done( function(data) { if (data && data.edit && data.edit.result == "Success") mw.notify('הפניה בשם "' + data.edit.title + '" נוצרה בהצלחה.'); }).fail(function(error) { mw.notify('ההפניה לא נוצרה עקב שגיאה: ' + error, { type:'error', title: "שגיאה"}); });
}
}
dialog.dialog("close");
}));
});
}
});