跳转到内容

MediaWiki:Gadget-purgetab.js:修订间差异

勤求古训,博采众方
删除的内容 添加的内容
Create purgetab gadget JS
修复 mw.util.jsMessage→mw.notify,按钮改为中文
第11行: 第11行:
'action': 'purge'
'action': 'purge'
}),
}),
(mw.config.get('skin') == "vector") ? "Purge" : "*",
(mw.config.get('skin') == "vector") ? "刷新缓存" : "*",
'ca-purge', "Purge cache for this page", '*'
'ca-purge', "刷新页面缓存", '*'
);
);


第21行: 第21行:
'forcelinkupdate': 1
'forcelinkupdate': 1
}),
}),
(mw.config.get('skin') == "vector") ? "Hard purge" : "**",
(mw.config.get('skin') == "vector") ? "强制刷新" : "**",
'ca-purge-forcelinkupdate', "Purge with forced link table update", ','
'ca-purge-forcelinkupdate', "强制刷新并更新链接表", ','
);
);
link.addEventListener('click', function(ev) {
link.addEventListener('click', function(ev) {
第35行: 第35行:
switch (code) {
switch (code) {
case 'http':
case 'http':
mesg = 'HTTP error: ' + details.xhr.statusText;
mesg = 'HTTP 错误: ' + details.xhr.statusText;
break;
break;
case 'ok-but-empty':
case 'ok-but-empty':
mesg = 'Received empty response.';
mesg = '收到空响应。';
break;
break;
default:
default:
mesg = details.error.info;
mesg = details.error.info;
}
}
mw.util.jsMessage('<b>Hard purge failed</b>: ' + mesg);
mw.notify('<b>强制刷新失败</b>: ' + mesg, { type: 'error' });
console.error(arguments);
console.error(arguments);
});
});
第51行: 第51行:
link = mw.util.addPortletLink(
link = mw.util.addPortletLink(
portletIdToAdd, 'javascript:void window.warranty',
portletIdToAdd, 'javascript:void window.warranty',
(mw.config.get('skin') == "vector") ? "Null edit" : "***",
(mw.config.get('skin') == "vector") ? "空编辑" : "***",
'ca-nulledit', "Null edit", '0'
'ca-nulledit', "空编辑(不改变内容,仅刷新)", '0'
);
);
link.addEventListener('click', function(ev) {
link.addEventListener('click', function(ev) {
第68行: 第68行:
switch (code) {
switch (code) {
case 'http':
case 'http':
mesg = 'HTTP error: ' + details.xhr.statusText;
mesg = 'HTTP 错误: ' + details.xhr.statusText;
break;
break;
case 'ok-but-empty':
case 'ok-but-empty':
mesg = 'Received empty response.';
mesg = '收到空响应。';
break;
break;
default:
default:
mesg = details.error.info;
mesg = details.error.info;
}
}
mw.util.jsMessage('<b>Null edit failed</b>: ' + mesg);
mw.notify('<b>空编辑失败</b>: ' + mesg, { type: 'error' });
console.error(arguments);
console.error(arguments);
});
});

2026年6月13日 (六) 16:26的版本

// {{documentation}}
jQuery(document).ready(function() {

	if (!mw.config.get('wgArticleId'))
		return;
	var link;
	var portletIdToAdd = $("#p-cactions").length != 0 ? "p-cactions" : "p-views";

	link = mw.util.addPortletLink(
		portletIdToAdd, mw.util.getUrl(mw.config.get('wgPageName'), {
			'action': 'purge'
		}),
		(mw.config.get('skin') == "vector") ? "刷新缓存" : "*",
		'ca-purge', "刷新页面缓存", '*'
	);

	var api = new mw.Api();
	link = mw.util.addPortletLink(
		portletIdToAdd, mw.util.getUrl(mw.config.get('wgPageName'), {
			'action': 'purge',
			'forcelinkupdate': 1
		}),
		(mw.config.get('skin') == "vector") ? "强制刷新" : "**",
		'ca-purge-forcelinkupdate', "强制刷新并更新链接表", ','
	);
	link.addEventListener('click', function(ev) {
		api.post({
			action: 'purge',
			pageids: mw.config.get('wgArticleId'),
			forcelinkupdate: 1
		}).then(function() {
			location.reload();
		}, function(code, details) {
			var mesg;
			switch (code) {
				case 'http':
					mesg = 'HTTP 错误: ' + details.xhr.statusText;
					break;
				case 'ok-but-empty':
					mesg = '收到空响应。';
					break;
				default:
					mesg = details.error.info;
			}
			mw.notify('<b>强制刷新失败</b>: ' + mesg, { type: 'error' });
			console.error(arguments);
		});
		ev.preventDefault();
	}, false);

	link = mw.util.addPortletLink(
		portletIdToAdd, 'javascript:void window.warranty',
		(mw.config.get('skin') == "vector") ? "空编辑" : "***",
		'ca-nulledit', "空编辑(不改变内容,仅刷新)", '0'
	);
	link.addEventListener('click', function(ev) {
		api.post({
			action: 'edit',
			pageid: mw.config.get('wgArticleId'),
			appendtext: '',
			watchlist: 'nochange',
			nocreate: '1',
			token: mw.user.tokens.get('csrfToken')
		}).then(function() {
			location.reload();
		}, function(code, details) {
			var mesg;
			switch (code) {
				case 'http':
					mesg = 'HTTP 错误: ' + details.xhr.statusText;
					break;
				case 'ok-but-empty':
					mesg = '收到空响应。';
					break;
				default:
					mesg = details.error.info;
			}
			mw.notify('<b>空编辑失败</b>: ' + mesg, { type: 'error' });
			console.error(arguments);
		});
		ev.preventDefault();
	}, false);

});