사용자:하늘/addArticleMenuItem-func.js: 두 판 사이의 차이

편집 요약 없음
편집 요약 없음
44번째 줄: 44번째 줄:
if (mw.config.get('wgPageContentModel') == 'wikitext') {
if (mw.config.get('wgPageContentModel') == 'wikitext') {
window.extendedDropdownItemArray.AddItem('이 문서로의 넘겨주기를 생성합니다.', '넘겨주기 생성',
window.extendedDropdownItemArray.AddItem('이 문서로의 넘겨주기를 생성합니다.', '넘겨주기 생성',
function () {
{ callback : () => {
var promptStr = prompt("생성할 넘겨주기 이름을 입력하세요");
var promptStr = prompt("생성할 넘겨주기 이름을 입력하세요");
if (promptStr && promptStr !== '') {
if (promptStr && promptStr !== '') {
51번째 줄: 51번째 줄:
}
}
alert("넘겨주기 생성을 취소합니다.");
alert("넘겨주기 생성을 취소합니다.");
});
}});
}
}


59번째 줄: 59번째 줄:
veLink.search = new URLSearchParams({'title': mw.config.get('wgPageName'), 'veaction': 'edit'});
veLink.search = new URLSearchParams({'title': mw.config.get('wgPageName'), 'veaction': 'edit'});
window.extendedDropdownItemArray.AddItem('시각 편집기', '시각 편집기', url = veLink);
window.extendedDropdownItemArray.AddItem('시각 편집기', '시각 편집기', { url: veLink });
}
}


});
});

2023년 12월 30일 (토) 20:44 판

mw.loader.load('/index.php?title=사용자:하늘/moveCategory.js&action=raw&ctype=text/javascript');
mw.loader.getScript('/index.php?title=사용자:하늘/addArticleMenuItem.js&action=raw&ctype=text/javascript').then(function(e) {

if (mw.config.get('wgCanonicalNamespace') == 'User' && mw.config.get('wgPageContentModel') == 'wikitext') {
    window.extendedDropdownItemArray.AddItem('시리즈:리브레 한자사전으로 이동하기', '시리즈:한자사전으로 이동',
    () => {
        wgPageName = mw.config.get('wgPageName');
        mw.notification.autoHideSeconds = { 'short': 2 };
        const to = '시리즈:리브레 한자사전/' + wgPageName.split('/').pop(); //시리즈:리브레 한자사전/櫻
        
        var page1 = new Page(wgPageName);
        page1.Moveto(to, '시리즈 이전').done(data => {
            mw.notify('이동 완료!');
            new mw.Api().postWithEditToken({
                "action": "edit", "format": "json", "contentmodel": "wikitext",
                "title": to.split('/').pop(), //櫻
                "text": "#넘겨주기 [[" + to + "]]",  // #넘겨주기[[시리즈:리브레 한자사전/櫻]]
            }).done(data => {
                console.log(data);
            }).fail(data => { console.log(data); });
            location.href = mw.config.values.wgServer + "/wiki/" + to;
        }).fail(data => {
            mw.notify('이동 실패');
            console.log(data);
        });
    });

    window.extendedDropdownItemArray.AddItem('사용자 문서를 본문으로 이동합니다.', '본문으로 이전',
    function () {
    	mw.loader.getScript('/index.php?title=사용자:하늘/page.js&action=raw&ctype=text/javascript').then(function(e) {
        	wgPageName = mw.config.get('wgPageName');
        	mw.notification.autoHideSeconds = { 'short': 2 };
        	const to = wgPageName.split('/').pop(); //사용자:이름/(문서) -> (문서)
        	var page1 = new Page(wgPageName);
        	page1.Moveto(to, '본문으로 이전');
    	});
    });
} else if (document.querySelector('.content-tools')) {
    	window.extendedDropdownItemArray.AddItem('', '내 위키 링크', function () {
        window.location = "https://novawiki.kro.kr/wiki/" + mw.config.get('wgPageName');
    });
}

if (mw.config.get('wgPageContentModel') == 'wikitext') {
	window.extendedDropdownItemArray.AddItem('이 문서로의 넘겨주기를 생성합니다.', '넘겨주기 생성',
	{ callback : () => {
		var promptStr = prompt("생성할 넘겨주기 이름을 입력하세요");
		if (promptStr && promptStr !== '') {
			new mw.Api().create(promptStr, {}, "#넘겨주기 [[" + mw.config.get('wgTitle') + "]]");
			return;
		}
		alert("넘겨주기 생성을 취소합니다.");
	}});
}

if (mw.config.get('wgPageContentModel') == 'wikitext') {
	
	let veLink = new URL(location);
	veLink.search = new URLSearchParams({'title': mw.config.get('wgPageName'), 'veaction': 'edit'});
	
	window.extendedDropdownItemArray.AddItem('시각 편집기', '시각 편집기', { url: veLink });
}

});