< 사용자:낙엽1124 | 스크립트
참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.
- 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
- 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
- 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
- 오페라: Ctrl-F5를 입력.
(function () {
function onClick() {
mw.notify('이동 중...');
var oldTitle = mw.config.get('wgPageName').replace(/_/g, ' ');
var newTitle = oldTitle.replace('페미위키:포크 프로젝트/리브레 위키/', '');
var params = {
action: 'move',
from: oldTitle,
to: newTitle,
movetalk: '1',
noredirect: '1',
format: 'json'
},
api = new mw.Api();
api
.postWithToken('csrf', params)
.done(function (data) {
mw.notify('성공했습니다. ' + newTitle + ' 문서로 이동합니다.', {
type: 'success'
});
window.location = mw.config
.get('wgArticlePath')
.replace('$1', newTitle);
})
.fail(function (data) {
switch (data) {
case 'articleexists':
mw.notify(
'실패했습니다. (' + newTitle + ' 문서가 이미 존재합니다)',
{ type: 'error' }
);
break;
case 'missingtitle':
mw.notify(
'실패했습니다. (' + oldTitle + ' 문서는 이미 이동되었습니다)',
{ type: 'error' }
);
break;
default:
mw.notify('실패했습니다. (알 수 없는 오류: ' + data + ')', {
type: 'error'
});
console.log(params);
}
});
}
if (
mw.config
.get('wgPageName')
.startsWith('페미위키:포크_프로젝트/리브레_위키/') &&
mw.config.get('wgArticleId')
) {
var link = document.createElement('a');
link.innerHTML = '<span style="color:red;">여기를 클릭하세요</span>';
link.addEventListener('click', onClick);
document.body.appendChild(link);
$(
mw.util.addPortletLink(
/*portletId*/ 'p-cactions',
/*href*/ '#',
/*text*/ '원클릭 이동',
/*id*/ 'p-oneclickmove',
/*tooltip*/ '이 포크를 일반 이름공간 아래로 이동합니다.',
/*accesskey*/ null,
/*nextnode*/ '#ca-move'
)
).on('click', onClick);
}
})();