사용자:하늘/liberty.js

< 사용자:하늘
하늘 (토론 | 기여)님의 2022년 7월 7일 (목) 15:27 판

참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.

  • 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
  • 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
  • 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
  • 오페라: Ctrl-F5를 입력.
if (mw.config.get('wgPageContentModel') == 'wikitext' && location.href.indexOf('veaction') == -1) {
    var editButton = document.querySelector('#ca-edit');
    var veditButton = editButton.cloneNode(true);

    veditButton.href = veditButton.href.replace('action', 'veaction'),
    veditButton.title = '비주얼 에디터로 편집하기',
    //veditButton.innerHTML = veditButton.innerHTML.replace('편집', 'VE'),
    veditButton.innerHTML = '<i class="fas fa-eye"></i>',
    veditButton.accessKey = 'v',
    editButton.after(veditButton);
    //비주얼 에디터
}
//console.log(mw.config);
//console.log(mw.config.get('wgPageContentModel'));
function toDark() { setDarkLight('dark'); }
function toLight() { setDarkLight('light'); }
function setAuto() { setDarkLight('undefined'); }
function setDarkLight(option) {
    new mw.Api().saveOption('liberty-dark', option).done(function () { location = location });
}

$(function () {
    var Button = document.querySelector('.dropdown-divider.view-logout').previousElementSibling.cloneNode();
    var ToDarkButton = Button.cloneNode();
    ToDarkButton.innerText = '다크모드(강제)';
    ToDarkButton.onclick = toDark;

    var ToLightButton = Button.cloneNode();
    ToLightButton.innerText = '라이트모드(강제)';
    ToLightButton.onclick = toLight;

    var setAutoButton = Button.cloneNode();
    setAutoButton.innerText = '다크모드(자동)'
    setAutoButton.onclick = setAuto;

    if (mw.user.options.values['liberty-dark'] == undefined) {
        $('.dropdown-divider.view-logout').before(ToDarkButton);
        $(ToDarkButton).after(ToLightButton);
    } else if (mw.user.options.values['liberty-dark'] == 'light') {
        $('.dropdown-divider.view-logout').before(ToDarkButton);
        $(ToDarkButton).after(setAutoButton);
    } else if (mw.user.options.values['liberty-dark'] == 'dark') {
        $('.dropdown-divider.view-logout').before(setAutoButton);
        $(setAutoButton).after(ToLightButton);
		mw.loader.load('/index.php?title=사용자:하늘/liberty-dark.css&action=raw&ctype=text/css', 'text/css');
    }
});