"미디어위키:Common.js"의 두 판 사이의 차이
| 13번째 줄: | 13번째 줄: | ||
*/ | */ | ||
console.log(mw.user.tokens.get( 'csrfToken' )); | |||
//동일 유형 동시 조회 | //동일 유형 동시 조회 | ||
| 54번째 줄: | 55번째 줄: | ||
// } | // } | ||
// }); | // }); | ||
2022년 9월 23일 (금) 11:08 판
/* 이 자바스크립트 설정은 모든 문서, 모든 사용자에게 적용됩니다. */
/*
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));
}
}
}
*/
console.log(mw.user.tokens.get( 'csrfToken' ));
//동일 유형 동시 조회
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 );
//TOKEN
// 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 ){
// token = result.query.tokens.csrftoken;
// }
// });
// 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;
link.setAttribute('style', 'color: #0645AD; font-weight: bold;');
column1.appendChild( link );
row.appendChild( column1 );
//data: {action: 'query', format: 'json', prop: 'description', titles: link.innerText},
//data: {action: 'import', interwikisource: 'meta', interwikipage: link.innerText, token: token, format: 'json'},
//data: {action: 'query', format: 'json', generator: 'search', gsrsearch: link.innerText, prop: 'iwlinks'},
// SEARCH END SECTION NUMBER
var endNum;
$.ajax({
type: "POST",
url: mw.util.wikiScript('api'),
data: {action: 'parse', format: 'json', page: link.innerText},
dataType: 'json',
async: false,
success: function ( result ){
endNum = result.parse.sections.length;
}
});
// SEARCH INFO OF SECTION
var text, textArr;
var text1 = text2 = text4 = '';
$.ajax({
type: "POST",
url: mw.util.wikiScript('api'),
data: {action: 'parse', format: 'json', page: link.innerText, prop: 'wikitext', section: endNum},
dataType: 'json',
async: false,
success: function ( result ){
textObj = result.parse.wikitext;
text = JSON.stringify(textObj);
textArr = text.split('|}}');
}
});
for(var j = 0; j < textArr.length; j++) {
var indexNum = textArr[j].lastIndexOf('|') + 1;
var temp = textArr[j].substr(indexNum);
//console.log(temp);
switch(j) {
case 1:
text1 = temp;
break;
case 2:
text2 = temp;
break;
case 4:
text4 = temp;
break;
}
}
//console.log("-------");
var column2 = document.createElement( 'td' );
column2.innerText = text1;
row.appendChild( column2 );
var column3 = document.createElement( 'td' );
column3.innerText = text2;
row.appendChild( column3 );
var column4 = document.createElement( 'td' );
column4.innerText = text4;
row.appendChild( column4 );
listTable.appendChild( row );
}
listTable.setAttribute('class', 'menu-list-table');
categories.parentNode.insertBefore( listTable, categories.nextSibling );
categories.setAttribute('style', 'display:none;');
}
//검색박스 한글 자동완성
'use strict';
var $input = $('#searchInput');
var $input = $('input[name=search]');
$input.keyup(function (e) {
switch (e.key) {
case 'ArrowUp':
case 'ArrowRight':
case 'ArrowDown':
case 'ArrowLeft':
return;
}
$input.trigger('keypress');
});
//신규 문서 일반 편집 고정 이동
var $new = $('.searchresults').find('.new');
var $newhref = $new.attr('href').replace('action', 'veaction');
$new.attr('href', $newhref);