مدیاویکی:Gadget-Extra-Editbuttons.js: تفاوت میان نسخه‌ها

(صفحه‌ای تازه حاوی «// <nowiki> // DON'T REMOVE THIS LINE EVER ←‏global jQuery, mediaWiki, persianWikiTools, persianTools: /** * UI code for Persian tools *...» ایجاد کرد)
 
بدون خلاصۀ ویرایش
خط ۴۲: خط ۴۲:
* Save a page
* Save a page
*/
*/
function savePage(title, text, summary) {
   
return new mw.Api().post({
function goToEdit() {
action: 'edit',
        window.location="//"+mw.config.get('wgServerName')+"/w/index.php?title="+mw.config.get('wgPageName')+"&action=submit#continueAbar";
title: title,
text: text,
summary: summary,
nocreate: '',
minor: '',
token: mw.user.tokens.get('editToken')
});
}
}
 
    if (window.location.hash=='#continueAbar'){
            var text=$('#wpTextbox1').val()
            setTimeout(function() {
                var newText=persianWikiTools.superTool(text)
                $('#wpTextbox1').val(newText)
                $('#wpSummary').val('ویرایش به‌وسیلهٔ [[' + (mw.config.get('wgServerName') !== 'fa.wikipedia.org' ? ':w:fa:' : '') + 'وپ:ابرابزار|ابرابزار]]: ')
                setTimeout(function() {
                    document.getElementById('wpDiff').click();
                }, 500);
            }, 2000);
    };
if (mw.config.get('wgAction') === 'view' &&
if (mw.config.get('wgAction') === 'view' &&
mw.config.get('wgIsArticle') &&
mw.config.get('wgIsArticle') &&
mw.config.get('wgUserEditCount')>100&&
mw.config.get('wgPageName') !== 'صفحهٔ_اصلی') {
mw.config.get('wgPageName') !== 'صفحهٔ_اصلی') {
$('#ca-abar-abzar').remove();
$('#ca-abar-abzar').remove();
خط ۶۷: خط ۷۱:
interwikiFix = true;
interwikiFix = true;
}
}
$(mw.util.addPortletLink('p-views', '#', interwikiFix ? 'ابرابزار+انتقال میان‌ویکی' : 'ابرابزار', 'ca-abar-abzar', interwikiFix ? 'ابزار پیشرفتهٔ ویرایش متن + ابزار انتقال خودکار میان‌ویکی سنتی به ویکی‌داده' : 'ابزار پیشرفتهٔ ویرایش متن')).click(function (e) {
$(mw.util.addPortletLink('p-cactions', '#', interwikiFix ? 'ابرابزار+انتقال میان‌ویکی' : 'ابرابزار', 'ca-abar-abzar', interwikiFix ? 'ابزار پیشرفتهٔ ویرایش متن + ابزار انتقال خودکار میان‌ویکی سنتی به ویکی‌داده' : 'ابزار پیشرفتهٔ ویرایش متن')).click(function (e) {
e.preventDefault();
e.preventDefault();
mw.loader.using('oojs-ui').then(function () {
mw.loader.using('oojs-ui').then(function () {
خط ۷۳: خط ۷۷:
if (!confirmed) return;
if (!confirmed) return;
return loadPage(mw.config.get('wgPageName')).then(function (text) {
return loadPage(mw.config.get('wgPageName')).then(function (data) {
return savePage(
mw.config.get('wgPageName'),
persianWikiTools.superTool(text),
'ویرایش به‌وسیلهٔ [[' + (mw.config.get('wgServerName') !== 'fa.wikipedia.org' ? ':w:fa:' : '') + 'وپ:ابرابزار|ابرابزار]]: '
);
}).then(function (data) {
mw.notify('اجرای ابرابزار بر محتویات این صفحه…');
// افزودن میان‌ویکی سنتی به ویکی‌داده به صورت خودکار
// افزودن میان‌ویکی سنتی به ویکی‌داده به صورت خودکار
if (interwikiFix) {
if (interwikiFix) {
$.get('//tools.wmflabs.org/dexbot/interwikidata.php', { page: mw.config.get('wgPageName') })
$.get('//dexbot.toolforge.org/interwikidata.php', { page: mw.config.get('wgPageName') })
.then(function () {}, function () {});
.then(function () {}, function () {});
}
}
خط ۹۰: خط ۸۷:
botworks.trigMissedFileUpload();
botworks.trigMissedFileUpload();
botworks.trigMissedRef();
botworks.trigMissedRef();
if (data.error) {
}).then(function (text) {
mw.notify('ویرایش موفقیت‌آمیز نبود، دوباره تلاش کنید: ' + data.error.info);
return goToEdit();
} else if (data.edit && data.edit.result === 'Success') {
})
if (data.edit.nochange !== undefined) {
mw.notify('تغییری در صفحه ایجاد نشد.');
} else {
mw.notify('ویرایش با موفقیت انجام پذیرفت');
// Loading diff page
window.location = new mw.Uri(mw.config.get('wgScript')).extend({
title: mw.config.get('wgPageName'),
diff: data.edit.newrevid
});
}
} else {
mw.notify('ویرایش در صفحه موفقیت‌آمیز نبود.');
}
});
});
});
});
});
خط ۲۱۲: خط ۱۹۵:
}
}
}
}
}
/*
* اجازه می‌دهد که برخی کاربران از دسترسی به ابرابزار محروم شوند
*/
function superToolAllowed() {
return $.inArray(
mw.config.get('wgUserId'),
[
707839 // Viera iran
]
) == -1;
}
}