미디어위키:Common.js

식물 vs 좀비 위키
Brokey (토론 | 기여)님의 2026년 7월 24일 (금) 23:13 판 (새 문서: 이 자바스크립트 설정은 모든 문서, 모든 사용자에게 적용됩니다.: mw.loader.using( [ 'mediawiki.util' ] ).then( function () { if ( mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'CreatePage' ) { return; } var content = document.querySelector( '.mw-body-content' ); if ( !content || content.querySelector( '.pvz-createpage-shell' ) ) { return; } var originalChildren = Array.from( content.children ); if ( !originalChildren.length ) { re...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

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

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

mw.loader.using( [ 'mediawiki.util' ] ).then( function () {
	if ( mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'CreatePage' ) {
		return;
	}

	var content = document.querySelector( '.mw-body-content' );
	if ( !content || content.querySelector( '.pvz-createpage-shell' ) ) {
		return;
	}

	var originalChildren = Array.from( content.children );
	if ( !originalChildren.length ) {
		return;
	}

	var shell = document.createElement( 'div' );
	shell.className = 'pvz-createpage-shell';

	var steps = document.createElement( 'div' );
	steps.className = 'pvz-createpage-steps';
	steps.innerHTML =
		'<span class="pvz-createpage-step is-current">① 이름 입력</span>' +
		'<span class="pvz-createpage-step">② 문서 확인</span>' +
		'<span class="pvz-createpage-step">③ 편집 시작</span>';

	var hero = document.createElement( 'div' );
	hero.className = 'pvz-createpage-hero';
	hero.innerHTML =
		'<div class="pvz-createpage-sprout-wrap">' +
			'<img class="pvz-createpage-sprout" src="' + mw.util.getUrl( 'Special:Redirect/file/Sprout_PvZ2.png' ) + '" alt="Sprout">' +
		'</div>' +
		'<div class="pvz-createpage-bubble">' +
			'새 문서를 만들고 싶다면 아래 칸에 제목을 입력해 줘!<br>' +
			'이미 있는 문서인지도 같이 확인해 줄게.' +
		'</div>';

	var panel = document.createElement( 'div' );
	panel.className = 'pvz-createpage-panel';

	originalChildren.forEach( function ( node ) {
		panel.appendChild( node );
	} );

	var note = document.createElement( 'div' );
	note.className = 'pvz-createpage-note';
	note.innerHTML =
		'<strong>안내</strong><br>' +
		'문서 제목은 가능한 한 공식 명칭을 기준으로 입력해 줘. ' +
		'이미 같은 이름의 문서가 있을 수도 있으니 먼저 확인하는 것을 권장해.';

	shell.appendChild( steps );
	shell.appendChild( hero );
	shell.appendChild( panel );
	shell.appendChild( note );
	content.appendChild( shell );

	var titleInput = content.querySelector( 'input[type="text"], input[type="search"]' );
	if ( titleInput ) {
		titleInput.placeholder = '새 문서의 이름을 입력하세요…';
	}

	var submitButton = content.querySelector( 'input[type="submit"], button[type="submit"], button' );
	if ( submitButton ) {
		if ( submitButton.tagName.toLowerCase() === 'input' ) {
			submitButton.value = '문서 만들기';
		} else {
			submitButton.textContent = '문서 만들기';
		}
	}
} );