미디어위키:Common.js 문서 원본 보기
←
미디어위키:Common.js
둘러보기로 이동
검색으로 이동
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
이 문서는 소프트웨어 인터페이스에 쓰이는 문서로, 부정 행위를 막기 위해 보호되어 있습니다.
이 문서는
관리자
만이 수정할 수 있습니다. 내용의 변경이 필요하다면
관리자 요청
에 편집 요청을 남겨 주세요.
모든 방문자에게 영향을 미칠 수 있기 때문에 이 자바스크립트 문서의 편집 권한이 없습니다.
문서의 원본을 보거나 복사할 수 있습니다.
/* 이 자바스크립트 설정은 모든 문서, 모든 사용자에게 적용됩니다. */ /*<source lang="javascript"><nowiki>*/ /** [[틀:USERNAME]]에서 사용하는 바꿔치기 함수 * 작성자: [[사용자:Peremen]] */ function UserNameReplace() { if (typeof(disableUsernameReplace) != 'undefined' && disableUsernameReplace) return; if (!document.getElementById('pt-userpage')) return; $("span.insertusername").each(function(i) { $(this).text(mw.config.get("wgUserName")) }) }; $(UserNameReplace); /** 플러그인이 작동하지 않을 때 나타나는 내용 * js: noPlugin('(이름)'); * html: class="noplugin-(이름)" * 작성자: [[사용자:Gustmd7410|Gustmd7410]] */ function noPlugin(name) { $('.noplugin-' + name).each(function() { $(this).remove(); }); } // [[미디어위키:common.js]] 미작동시: class="noplugin" $('.noplugin').each(function() { $(this).remove(); }); /* window.location.search를 객체 형태로 반환 @param {object} location 획득할 로케이션 객체, 비어있으면 window.location을 참조 원작성자: [[사용자:BANIP|BANIP]] */ function geturlSearch(location) { location = location || window.location; var result = {}; if(location.search) decodeURIComponent(location.search) .substring(1) .split("&") .map(function(v) { return v.split("=") }) .forEach(function(v) { result[v[0]] = v[1] }); return result;url.hash = encodeURIComponent(hash); } /* 객체형태로 된 SearchParam을 받아 string형태로 반환 원작성자: [[사용자:BANIP|BANIP]] */ function searchParamToString(searchParamsObj){ return "?" + Object.entries(searchParamsObj).map(function(v){ return v.map(function(v) { return encodeURIComponent(v); }).join("="); }).join("&"); } /** [[백괴게임:연습장]] 문서 내용 비우기 * 작성자: [[사용자:*devunt]] */ $(function() { if (mw.config.get("wgPageName") != "리버티게임:연습장") return; if (document.URL.lastIndexOf("action=edit") != -1) { if (document.URL.lastIndexOf("fakeaction=clean") == -1) return; var dbindex = document.editform.wpTextbox1; dbindex.value = "<!-- 이 줄은 지우지 마세요 -->{{리버티게임:연습장/안내문}}[["+"분류:리버티게임 도움말]]"; document.editform.wpSummary.value = "연습장 비움"; document.editform.wpSave.click(); return; } }); /* userAgent */ /** source: http://www.gregoryvarghese.com/how-to-get-browser-name-and-version-via-javascript/ **/ function get_browser_info() { var ua = navigator.userAgent, tem, M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || []; if (/trident/i.test(M[1])) { tem = /\brv[ :]+(\d+)/g.exec(ua) || []; return { name: 'IE ', version: (tem[1] || '') }; } if (M[1] === 'Chrome') { tem = ua.match(/\bOPR\/(\d+)/) if (tem != null) { return { name: 'Opera', version: tem[1] }; } } M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?']; if ((tem = ua.match(/version\/(\d+)/i)) != null) { M.splice(1, 1, tem[1]); } return { name: M[0], version: M[1] }; } /** paramtest 함수 * [[틀:CGI2|CGI2]] 등에 적용되는 searchParams 메소드 지원 여부를 판단하는 함수 * 작성자: [[사용자:Manymaster|manymaster]] */ function paramtest() { var test_code; var Params = new URL(document.location).searchParams; if (Params === undefined) { test_code = 0; } else { test_code = 1; } return test_code; } /** paraminfo 함수 * paramtest의 부속 함수로 searchParams 메소드 지원시 지정한 메시지를 숨길 수 있게 해주는 함수 * 메시지는 searchparam_test 클래스로 지정하여 숨길 수 있습니다. */ function paraminfo() { var test_code = paramtest(); if (test_code == 0) { return; } else { for (var i = 0; i < document.getElementsByClassName("searchparam_test").length; i++) { document.getElementsByClassName("searchparam_test")[i].style.display = "none"; } } } $(paraminfo); /* paramtest 및 부속 함수 끝 */ /** 스크립트의 함수를 실행시키는 링크 만들기 * $('(객체)').each(function() { scriptLink(this); $(this).click(function () { (함수) }); }); * 작성자: [[사용자:Gustmd7410|Gustmd7410]] */ function scriptLink(element) { $(element).html('<a>' + $(element).html() + '</a>'); } /** * [[백괴게임:댸문]]문서의 일부 링크를 낚시문서로 바꿔치기 * 원작성자: [[사용자:BANIP|BANIP]] */ $(function(){ var gate = document.getElementsByClassName("fakegate"); if (gate[0] === undefined || gate[0] === null) { return; } else{ var targetLink = "https://libertygame.miraheze.org/wiki/"+gate[0].innerHTML; $("#bodyContent a").attr("href",targetLink); } }) /* [[백괴게임:댸문]]문서의 일부 링크를 낚시문서로 바꿔치기 끝 */ /** 편집 저장시 다른 문서나 CGI로 넘겨주기 * ?action=edit&redirectquery=(params) * 작성자: [[사용자:Gustmd7410|Gustmd7410]] **/ $(function() { // 현재 URL 파라미터 var params; // URLSearchParams 호환시 if(URLSearchParams) params = new URLSearchParams(location.search); // 비호환시 geturlSearch() 사용 else { // Map 호환시 if(Map) params = new Map(Object.entries(geturlSearch())); // 비호환시 mw.Map 사용 else { params = new mw.Map(); params.values = geturlSearch(); params.has = params.exists; } } // 편집창에서 redirectquery 파라미터가 있을때 if(params.has('redirectquery')) { // 편집 폼에 wpExtraQueryRedirect 파라미터 input 요소 추가 $('#editform').append($('<input />', { type: 'hidden', name: 'wpExtraQueryRedirect', value: params.get('redirectquery') })); } }); /* 편집 저장시 다른 문서나 CGI로 넘겨주기 끝 */ /** 기여 확인용 플러그인 * 작성자: [[사:Bd3076|Bd3076]] */ function enoughEdit(){ function compareEditCount(number, id1, id2){ var editCount = mw.config.get('wgUserEditCount'); if(editCount < number){ document.getElementById(id1).style.display = "block"; } else{ document.getElementById(id2).style.display = "block"; } } $('.editCompare').each(function(){ var num = $(this).attr("data-num"); var enough = $(this).attr("data-id1"); var nenough = $(this).attr("data-id2"); compareEditCount(num, enough, nenough); }); } $(enoughEdit); /* 기여 확인용 플러그인 끝 */ /** 상위 문서 링크 바꿔치기 * id="setsub" * 작성자: [[사용자:Gustmd7410|Gustmd7410]] **/ function changeContentSub() { var newsub = document.getElementById('setsub'); if(newsub) { document.querySelector('#contentSub').innerHTML = newsub.innerHTML; newsub.remove(); } } $(changeContentSub); /* 상위 문서 링크 바꿔치기 끝 */ /** [[틀:자동저장]]용 문서 미리 비워놓기 * 원출처: [[틀:자동저장/플러그인]] * 비 자동 인증된 사용자가 자동저장 겸용 문서에서 복붙을 할 때 * 문서를 덮어씌우지 않고 밑에 복붙을 하는 상황을 막기 위한 플러그인입니다. */ function nonautosaveready() { /* autosave 편집모드가 아닐 경우 플러그인 종료 */ var searchParams = geturlSearch(location); var isEditMode = searchParams.action === "edit"; var isAutosaveMode = searchParams.autosave === "1"; if (!(isEditMode && isAutosaveMode)) return ""; /* 자동 저장하기에 안전한 네임스페이스가 아닌 경우 플러그인 종료 */ var safeNameSpace = [""]; var thisNamespaceNumber = mw.config.get("wgNamespaceNumber"); var nameSpaceIds = mw.config.get("wgNamespaceIds"); var isSafeNameSpace = safeNameSpace .map(function (namespace) { return nameSpaceIds[namespace]; }) .some(function (nsNumber) { return nsNumber == thisNamespaceNumber; }); if (!(isSafeNameSpace)) return ""; /* 자동 인증된 사용자가 일 경우 플러그인 종료 */ var userGroups = mw.config.get('wgUserGroups'); var autocheck = 0; if (userGroups) { for (var i = 0; i < userGroups.length; i++) { if (userGroups[i] === 'autoconfirmed') { autocheck++; } } } if (autocheck != 0) return ""; /* 미리 비워놓기 */ var savetemp = document.editform.wpTextbox1; savetemp.value = ""; return; } $(nonautosaveready); /* [[틀:자동저장]]용 문서 미리 비워놓기 끝 */ /** 임베드 플래시 무비 * 문서에 플래시 파일을 넣을 수 있게 합니다. [[틀:플래시]]를 참고하십시오. * 원작성자: [[:en:User:Olipro|Olipro]] */ // 플래시 사용 중지에 따라 이 기능은 비활성화됩니다. /* function useFlash() { var flashOk; var contentTempHolder; $(embedFlashCheck); } function embedFlashMovie(flashOk) { mainbody = document.getElementById('bodyContent'); mainbody.innerHTML = contentTempHolder; spancheck = document.getElementsByTagName('span'); for (i = 0; i < spancheck.length; i++) { if (spancheck[i].getAttribute('id') != 'embedFlashDoc') { continue; } obj = spancheck[i].innerHTML.split('@'); flwidth = obj[0]; flheight = obj[1]; flfile = obj[2].replace('fullurl://', 'https://'); showFlash = ' '; if (flashOk) { showFlash = '<object width="' + flwidth + '" height="' + flheight + '"'; showFlash += 'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"'; showFlash += 'codebase="http://fpdownload.macromedia.com/pub/'; showFlash += 'shockwave/cabs/flash/swflash.cab#version=8,0,0,0">'; showFlash += '<param name="movie" value="' + flfile + '" />'; showFlash += '<embed src="' + flfile + '" width="' + flwidth + '" height='; showFlash += '"' + flheight + '" type="application/x-shockwave-flash" '; showFlash += 'pluginspage="http://www.macromedia.com/go/getflashplayer" />'; showFlash += '</object>'; } else { showFlash = '<a class="plainlinks" href="javascript:embedFlashMovie(true)" onClick="embedFlashMovie(true)">' + flfile + '</a> (신뢰하는 경우 보려면 클릭하십시오.)'; } spancheck[i].innerHTML = showFlash; spancheck[i].style.display = 'inline'; } } function embedFlashCheck() { if (!document.getElementById('embedFlashDoc')) { return; } mainbody = document.getElementById('bodyContent'); contentTempHolder = mainbody.innerHTML; if (typeof displayFlashOverride != 'undefined') { embedFlashMovie(displayFlashOverride); return; } askmessage = '<div align="center" id="askflash">이 게임에는 '; askmessage += '<a href="/wiki/백괴:플래시" class="plainlinks">플래시</a>가 들어있습니다.<br />'; askmessage += '컴퓨터에 해를 끼칠 수 있으므로 신뢰하는 경우에만 여십시오.<br />'; askmessage += '플래시가 포함된 게임을 보시겠습니까?<br><b> '; askmessage += '<a href="javascript:embedFlashMovie(true)" '; askmessage += 'onClick="embedFlashMovie(true)">예</a> | <a '; askmessage += 'href="https://libertygame.miraheze.org/">아니오</a>'; mainbody.innerHTML = askmessage; } $(useFlash); */
이 문서에서 사용한 틀:
리버티게임:연습장/안내문
(
원본 보기
)
미디어위키:Common.js
문서로 돌아갑니다.
둘러보기 메뉴
개인 도구
계정 만들기
로그인
어두운 모드
이름공간
메시지
토론
English
보기
읽기
원본 보기
역사 보기
더 보기
새로 고침
검색
둘러보기
대문
최근 바뀜
게임 목록
임의의 게임으로
커뮤니티
리버티게임 본진
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
특수 문서 목록
문서 정보
축약된 URL 얻기