User:Bosco/common.js: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
m Installing User:Bosco/add-delete.js (script-installer) |
m = Tag: Reverted |
||
| Line 1: | Line 1: | ||
// rollback-summary (zh) with Simplified + Traditional Chinese |
|||
// Undo / Rollback |
|||
(() => { |
|||
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:WhitePhosphorus/js/AutoUndo.js&action=raw&ctype=text/javascript'); |
|||
const messages = { |
|||
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/Restorer.js&action=raw&ctype=text/javascript'); |
|||
hans: { |
|||
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Gracenotes/rollback.js&action=raw&ctype=text/javascript'); |
|||
prompt: '请输入自定义回退摘要(留空则使用系统预设摘要)', |
|||
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:FR30799386/undo.js&action=raw&ctype=text/javascript'); |
|||
cancelNotify: '已取消回退操作。', |
|||
//mw.loader.load( "https://zh.wikipedia.org/w/index.php?title=User:1F616EMO/AdvancedRollback/en.js&action=raw&ctype=text/javascript" ); |
|||
summary: '已还原$1的编辑:$2', |
|||
//seletive rollback config |
|||
summaryUser: '[[Special:Contributions/$1|$1]]([[User talk:$1|对话]])', |
|||
window.selectiveRollbackConfig = {}; |
|||
summaryNoUser: '已隐藏用户' |
|||
selectiveRollbackConfig.editSummaries = {}; |
|||
}, |
|||
selectiveRollbackConfig.editSummaries[0]='Reverted $7 edit(s) by [[Special:Contributions/$2|$2]] to version [[Special:Diff/$3|$3]] done by [[Special:Contributions/$1|$1]]'; |
|||
hant: { |
|||
selectiveRollbackConfig.editSummaries[1]='Reverted $7 edit(s) by [[Special:Contributions/$2|$2]] to version [[Special:Diff/$3|$3]] done by [[Special:Contributions/$1|$1]]: Spam or spambot'; |
|||
prompt: '請輸入自定義回退摘要(留空則使用系統預設摘要)', |
|||
selectiveRollbackConfig.editSummaries[2]='Reverted $7 edit(s) by [[Special:Contributions/$2|$2]] to version [[Special:Diff/$3|$3]] done by [[Special:Contributions/$1|$1]]: LTA'; |
|||
cancelNotify: '已取消回退操作。', |
|||
selectiveRollbackConfig.editSummaries[3]='Reverted $7 edit(s) by [[Special:Contributions/$2|$2]] to version [[Special:Diff/$3|$3]] done by [[Special:Contributions/$1|$1]]: Vandalism'; |
|||
summary: '已還原$1的編輯:$2', |
|||
selectiveRollbackConfig.editSummaries[4]='Reverted $7 edit(s) by [[Special:Contributions/$2|$2]] to version [[Special:Diff/$3|$3]] done by [[Special:Contributions/$1|$1]]: Bot error'; |
|||
summaryUser: '[[Special:Contributions/$1|$1]]([[User talk:$1|對話]])', |
|||
selectiveRollbackConfig.editSummaries[5]='Reverted $7 edit(s) by [[Special:Contributions/$2|$2]] to version [[Special:Diff/$3|$3]] done by [[Special:Contributions/$1|$1]]'; |
|||
summaryNoUser: '已隱藏用戶' |
|||
selectiveRollbackConfig.editSummaries[6]='Reverted $7 edit(s) to version [[Special:Diff/$3|$3]] done by [[Special:Contributions/$1|$1]]'; |
|||
} |
|||
// Mass js |
|||
}; |
|||
importScript('User:DodoMan/smartpatrol.js'); // Backlink: [[User:DodoMan/smartpatrol.js]] |
|||
mw.loader.load('//fr.wikipedia.org/w/index.php?title=MediaWiki:Gadget-Smart_patrol.js&action=raw&ctype=text/javascript'); |
|||
const hansLangs = ['zh-hans','zh-cn','zh-my','zh-sg']; |
|||
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Timotheus_Canens/massblock.js&action=raw&ctype=text/javascript'); |
|||
const hantLangs = ['zh-hant','zh-hk','zh-mo','zh-tw']; |
|||
//mw.loader.load('//it.wikipedia.org/w/index.php?title=MediaWiki:Gadget-Massblock.js&action=raw&ctype=text/javascript'); |
|||
// Inactive sysops |
|||
const lang = mw.config.get('wgUserLanguage'); |
|||
importScript('User:JJBullet/findInactiveSysops.js'); // Backlink: [[User:JJBullet/findInactiveSysops.js]] |
|||
let chosen; |
|||
// Script installer |
|||
if (hansLangs.includes(lang)) { |
|||
// Edit count |
|||
chosen = messages.hans; |
|||
//importScript('User:PB2008/editcount.js'); // Backlink: [[User:PB2008/editcount.js]] |
|||
} else if (hantLangs.includes(lang)) { |
|||
importScript('User:PB2008/script-installer.js'); // Backlink: [[User:PB2008/script-installer.js]] |
|||
chosen = messages.hant; |
|||
// TW |
|||
} else { |
|||
mw.loader.load("https://dev.miraheze.org/wiki/MediaWiki:Twinkle.js?action=raw&ctype=text/javascript"); |
|||
chosen = messages.hans; // 預設簡體 |
|||
// Mark admins |
|||
} |
|||
importScript('User:PB2008/markadmins/tw.js'); // Backlink: [[User:PB2008/markadmins/tw.js]] |
|||
// Edit count |
|||
const loadedMap = new WeakMap(); |
|||
(function(editCount) { |
|||
if (editCount !== null) mw.loader.addStyleTag('#pt-mycontris>a::after, .menu__item--userContributions>span>span::after, #mw-mf-page-left .menu__item--userContributions>span::after {content: " (' + editCount + ')"}') |
|||
mw.hook('wikipage.content').add(() => { |
|||
})(mw.config.get('wgUserEditCount')); |
|||
for (const link of $('.mw-rollback-link a')) { |
|||
// InPageEdit |
|||
if (loadedMap.has(link)) { |
|||
//mw.loader.load('https://cdn.jsdelivr.net/npm/mediawiki-inpageedit'); |
|||
continue; |
|||
// InPageEdit NEXT |
|||
} |
|||
document.body.append( |
|||
loadedMap.set(link, true); |
|||
Object.assign(document.createElement('script'), { |
|||
src: 'https://cdn.jsdelivr.net/npm/@inpageedit/core/dist/index.js', |
|||
$(link) |
|||
.on('click', (ev) => { |
|||
}) |
|||
const summary = prompt(chosen.prompt); |
|||
) |
|||
if (summary === null) { |
|||
//JWB |
|||
ev.preventDefault(); |
|||
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Joeytje50/JWB.js&action=raw&ctype=text/javascript'); |
|||
mw.notify(chosen.cancelNotify); |
|||
//importScript('User:Bosco/markadmins.js'); // Backlink: [[User:Bosco/markadmins.js]] |
|||
return; |
|||
//importScript('User:Bosco/UserRightsManager/crat.js'); // Backlink: [[User:Bosco/UserRightsManager/crat.js]] |
|||
} else if (summary === '') { |
|||
//importScript('User:Bosco/MarkRights.js'); // Backlink: [[User:Bosco/MarkRights.js]] |
|||
return; |
|||
importScript('User:Bosco/MediaWiki:Gadget-MarkRights.js'); // Backlink: [[User:Bosco/MediaWiki:Gadget-MarkRights.js]] |
|||
} |
|||
//importScript('User:Bosco/UserRightsManager.js'); // Backlink: [[User:Bosco/UserRightsManager.js]] |
|||
importScript('User:Bosco/prot.js'); // Backlink: [[User:Bosco/prot.js]] |
|||
ev.preventDefault(); |
|||
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=User:Jon_Harald_Søby/diffedit.js&action=raw&ctype=text/javascript' ); |
|||
const url = new URL(link.href); |
|||
importScript('User:Bosco/add-delete.js'); // Backlink: [[User:Bosco/add-delete.js]] |
|||
const username = url.searchParams.get('from'); |
|||
url.searchParams.set( |
|||
'summary', |
|||
mw.format( |
|||
chosen.summary, |
|||
username ? mw.format(chosen.summaryUser, username) : chosen.summaryNoUser, |
|||
summary |
|||
) |
|||
); |
|||
window.location.assign(url.href); |
|||
}) |
|||
.css('color', '#099'); |
|||
} |
|||
}); |
|||
})(); |
|||
Revision as of 13:11, 30 December 2025
// rollback-summary (zh) with Simplified + Traditional Chinese
(() => {
const messages = {
hans: {
prompt: '请输入自定义回退摘要(留空则使用系统预设摘要)',
cancelNotify: '已取消回退操作。',
summary: '已还原$1的编辑:$2',
summaryUser: '[[Special:Contributions/$1|$1]]([[User talk:$1|对话]])',
summaryNoUser: '已隐藏用户'
},
hant: {
prompt: '請輸入自定義回退摘要(留空則使用系統預設摘要)',
cancelNotify: '已取消回退操作。',
summary: '已還原$1的編輯:$2',
summaryUser: '[[Special:Contributions/$1|$1]]([[User talk:$1|對話]])',
summaryNoUser: '已隱藏用戶'
}
};
const hansLangs = ['zh-hans','zh-cn','zh-my','zh-sg'];
const hantLangs = ['zh-hant','zh-hk','zh-mo','zh-tw'];
const lang = mw.config.get('wgUserLanguage');
let chosen;
if (hansLangs.includes(lang)) {
chosen = messages.hans;
} else if (hantLangs.includes(lang)) {
chosen = messages.hant;
} else {
chosen = messages.hans; // 預設簡體
}
const loadedMap = new WeakMap();
mw.hook('wikipage.content').add(() => {
for (const link of $('.mw-rollback-link a')) {
if (loadedMap.has(link)) {
continue;
}
loadedMap.set(link, true);
$(link)
.on('click', (ev) => {
const summary = prompt(chosen.prompt);
if (summary === null) {
ev.preventDefault();
mw.notify(chosen.cancelNotify);
return;
} else if (summary === '') {
return;
}
ev.preventDefault();
const url = new URL(link.href);
const username = url.searchParams.get('from');
url.searchParams.set(
'summary',
mw.format(
chosen.summary,
username ? mw.format(chosen.summaryUser, username) : chosen.summaryNoUser,
summary
)
);
window.location.assign(url.href);
})
.css('color', '#099');
}
});
})();