사용자:낙엽1124/common.js

최근 편집: 2022년 12월 18일 (일) 18:29

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

  • 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
  • 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
  • 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
  • 오페라: Ctrl-F5를 입력.
// <pre>
//존재/가상에 있는 링크 기울이기
//mw.loader.load("/index.php?title=사용자:렌즈/categoryCheck.js&action=raw&ctype=text/javascript");

// $(document).ready(function () {
//   var url = window.location.href;
//   // 주소 표시줄에 한국어 이름공간 있으면 영어로 바꾸기
//   var localNamespace = encodeURIComponent(
//     mw.config.get('wgFormattedNamespaces')[mw.config.get('wgNamespaceNumber')]
//   );
//   var namespace = mw.config.get('wgCanonicalNamespace');
//   url = url.replace(localNamespace, namespace);

//   // 한국어 특수문서 이름이 있으면 영어로 바꾸기
//   if (mw.config.get('wgCanonicalNamespace') == 'Special') {
//     var localName = encodeURIComponent(mw.config.get('wgTitle').split('/')[0]);
//     var name = mw.config.get('wgCanonicalSpecialPageName');
//     url = url.replace(localName, name);
//   }
//   window.history.replaceState({}, '', url);
// });

//메뉴에 Purge 링크 추가
$(document).ready(function () {
  try {
    var menu = document
        .getElementById('p-cactions')
        .getElementsByTagName('ul')[0],
      purge = document.createElement('li'),
      a = document.createElement('a'),
      lingurl =
        window.location.protocol +
        '//' +
        window.location.hostname +
        '/index.php?title=' +
        mw.config.get('wgPageName') +
        '&action=purge';
    posturl =
      window.location.protocol +
      '//' +
      window.location.hostname +
      '/api.php?action=purge&forcelinkupdate=1&titles=' +
      mw.config.get('wgPageName');
    menu.append(purge);
    purge.append(a);
    a.innerHTML = '새로고침';
    a.href = lingurl;
    a.onclick = function () {
      $.post({
        url: posturl,
      })
        .done(function (data) {
          console.log('done');
        })
        .fail(function (data) {
          console.log('fail');
        });
      //			location.reload();
      return false;
    };
  } catch (err) {}
});

//개인메뉴에 롤백 활성화 버튼 추가
$(document).ready(function () {
  var enabled = $.cookie('femiwiki-lens0021-rollback-enabled');
  if (enabled === '1') enabled = true;
  else enabled = false;

  var buttons = $('span.mw-rollback-link'),
    menu = $('#p-personal ul'),
    toggle = $('<li></li>').append($('<a href="#">롤백</a>'));
  menu.append(toggle);
  toggle.children('a').click(function (e) {
    e.preventDefault();
    enabled = !enabled;
    $.cookie('femiwiki-lens0021-rollback-enabled', enabled ? '1' : '0', {
      expires: 30,
    });
    buttons.toggle(enabled);
  });

  buttons.toggle(enabled);
});

//공유 메뉴에 판 링크 만들기 추가
$(document).ready(function () {
  try {
    var menu = document
        .getElementById('p-cactions')
        .getElementsByTagName('ul')[0],
      ref = document.createElement('li'),
      a = document.createElement('a');
    menu.append(ref);
    ref.append(a);
    a.innerHTML = '판 링크 만들기';
    a.href = '#';
    a.accesskey = 'r';
    a.onclick = function () {
      document.getElementById('searchInput').value =
        '[[' +
        mw.config.get('wgPageName').replace(/_/g, ' ') +
        ']]([[특:고유링크/' +
        mw.config.get('wgRevisionId') +
        '|' +
        mw.config.get('wgRevisionId') +
        '판]])';
      return false;
    };
  } catch (err) {}
});

// redlink 시각편집기로 열기
$(function () {
  $('a.new').each(function () {
    $(this).attr(
      'href',
      $(this).attr('href').replace('action=edit', 'veaction=edit')
    );
  });
});

// 동음이의어 문서 템플릿 가져오기
$(document).ready(function () {
  $(
    mw.util.addPortletLink(
      'p-cactions',
      '#',
      '동음이의어',
      'p-Disambiguation',
      ''
    )
  ).on('click', function () {
    var memo = document.createElement('textarea');
    memo.innerHTML = [
      '{{동음이의어 문서}}',
      '',
      '; [[문서1]]',
      ': 문서1에 대한 설명',
      ':',
      '; [[문서2]]',
      ': 문서2에 대한 설명',
      ':',
      '',
      '{{분류|성격/동음이의어}}',
    ].join('\n');
    document.body.appendChild(memo);
    memo.select();
  });
});

// https://en.wikipedia.org/wiki/User:Joeytje50/JWB
$.when(mw.loader.using(['mediawiki.util'], $.ready)).done( function() {
	mw.util.addPortletLink("p-personal", mw.config.get('wgArticlePath').replace('$1', "Project:AutoWikiBrowser/Script"), 'JWB', "tb-awbscript", "Run Javascript Wiki Browser");
});
if (mw.config.get('wgCanonicalNamespace')+':'+mw.config.get('wgTitle') === 'Project:AutoWikiBrowser/Script' && mw.config.get('wgAction') == 'view')
	mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Joeytje50/JWB.js&action=raw&ctype=text/javascript');

if (/특수:Newsletter\/\d+\/announce/.test(mw.config.get('wgPageName'))) {
  mw.loader.load('/w/사용자:낙엽1124/common.js/newsletter-tweak.js?action=raw&ctype=text/javascript');
}