미디어위키:Common.js

Smart (토론 | 기여)님의 2022년 8월 5일 (금) 13:28 판

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

  • 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
  • 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
  • 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
  • 오페라: Ctrl-F5를 입력.
/* 이 자바스크립트 설정은 모든 문서, 모든 사용자에게 적용됩니다. */

/*
var sections = document.querySelectorAll(".veaction-section");

if(sections != null){
  if(sections.length > 0){
    for(var i = 0; i < sections.length; i++){
      sections[i].children[0].setAttribute('href',sections[i].children[0].getAttribute('href') + (i+1));
    }
  }
}
*/


var categories = document.querySelector(".menu-list");

if(categories != null) {
    var listTable = document.createElement( 'table' );
    
    // TITLE
    var tr = document.createElement( 'tr' );

    var th1 = document.createElement( 'th' );
    th1.innerText = '문서 제목';
    tr.appendChild( th1 );

    var th2 = document.createElement( 'th' );
    th2.innerText = '발송사';
    tr.appendChild( th2 );

    var th3 = document.createElement( 'th' );
    th3.innerText = '수신일';
    tr.appendChild( th3 );

    var th4 = document.createElement( 'th' );
    th4.innerText = '비고';
    tr.appendChild( th4 );

    listTable.appendChild( tr );

    // CONTENT
    for(var i = 0; i < categories.childNodes.length; i++) {
      var row = document.createElement( 'tr' );

      var column1 = document.createElement( 'td' );
      var link = document.createElement( 'a' );
      link.setAttribute('href', categories.childNodes[i].childNodes[0].getAttribute('href'));
      link.innerText = categories.childNodes[i].innerText;
      column1.appendChild( link );
      row.appendChild( column1 );


      //data: {action: 'query', format: 'json', prop: 'description', titles: link.innerText},

      var token;

      $.ajax({
        type: "POST",
        url: mw.util.wikiScript('api'),
        data: {action: 'query', meta: 'tokens', type: 'csrf', format: 'json'},
        dataType: 'json',
        async: false,
        success: function( result ){
          console.log( result );
        },
        error: function () {
          console.log("ajax error");
        }
      });

//      $.ajax({
//        type: "GET",
//        url: mw.util.wikiScript('api'),
//        data: {action: 'import', interwikipage: link.innerText},
//        dataType: 'json',
//        async: false,
//        success: function ( result ){
//          console.log( result );
//        }
//     });

      var column2 = document.createElement( 'td' );
      //column2.innerText = '{{:2차 00고속도로(xx공구) 건설공사 설계변경|transcludesection=2발송사}}';
      row.appendChild( column2 );

      var column3 = document.createElement( 'td' );
      //column3.innerText = '{{:2차 00고속도로(xx공구) 건설공사 설계변경|transcludesection=2수신일}}';
      row.appendChild( column3 );

      var column4 = document.createElement( 'td' );
      //column4.innerText = '{{:2차 00고속도로(xx공구) 건설공사 설계변경|transcludesection=2비고}}';
      row.appendChild( column4 );


      listTable.appendChild( row );
    }

    listTable.setAttribute('class', 'menu-list-table');
    categories.parentNode.insertBefore( listTable, categories.nextSibling );
    categories.setAttribute('style', 'display:none;');
}