User:Irukaza/js/editConflict.js:修订间差异
跳到导航
跳到搜索
imported>=海豚= 无编辑摘要 |
imported>=海豚= 无编辑摘要 |
||
| 第1行: | 第1行: | ||
(async () => { | (async () => { | ||
await mw.loader.using("mw.Api"); | await mw.loader.using("mw.Api"); | ||
mw.loader.using('mediawiki.notification'); | mw.loader.using('mediawiki.notification'); | ||
| 第21行: | 第18行: | ||
} | } | ||
wpSave.on("click", () => { | wpSave.on("click", () => { | ||
needCheckFlag = false; | needCheckFlag = false; | ||
disable(wpSave.attr("disabled", "disabled").val("正在提交......")); | disable(wpSave.attr("disabled", "disabled").val("正在提交......")); | ||
catch (e) { | |||
console.error("editConflict", e); | console.error("editConflict", e); | ||
wpSave.val(i <= 3 ? `提交失败!正在重试(第${i}次)......` : "提交失败,请备份您的编辑内容后刷新界面重新编辑"); | wpSave.val(i <= 3 ? `提交失败!正在重试(第${i}次)......` : "提交失败,请备份您的编辑内容后刷新界面重新编辑"); | ||
} | } | ||
setTimeout(() => { | setTimeout(() => { | ||
needCheckFlag = true; | needCheckFlag = true; | ||
2020年5月27日 (三) 15:11的版本
(async () => {
await mw.loader.using("mw.Api");
mw.loader.using('mediawiki.notification');
const wgPageName = mw.config.get("wgPageName");
const wgCurRevisionId = mw.config.get("wgCurRevisionId");
let needCheckFlag = true;
const api = new mw.Api({ timeout: 5000 });
const wpSave = $("#wpSave");
const editform = $("#editform");
const conflictAlert = "";
const SYMBOL_UNDEFINED = Symbol("SYMBOL_UNDEFINED");
wpSave.val = (value = SYMBOL_UNDEFINED) => {
const val = $.fn.val.bind(wpSave);
return value === SYMBOL_UNDEFINED ? val() : val(value).attr("title", value);
};
const disable = ($buttons) => {
return $buttons.css("font-weight", "normal").parent().removeClass("oo-ui-widget-enabled oo-ui-flaggedElement-primary oo-ui-flaggedElement-progressive").addClass("oo-ui-widget-disabled");
}
wpSave.on("click", () => {
needCheckFlag = false;
disable(wpSave.attr("disabled", "disabled").val("正在提交......"));
catch (e) {
console.error("editConflict", e);
wpSave.val(i <= 3 ? `提交失败!正在重试(第${i}次)......` : "提交失败,请备份您的编辑内容后刷新界面重新编辑");
}
setTimeout(() => {
needCheckFlag = true;
}, 2000);
}, 1);
}
return false;
});
})();