// Todo list
// 한국어 위키백과에 맞도록 페이지 제목을 교정해야 함
// url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=1' 이런 부분 일괄 치환 필요

( function  {

//automatic api:edit function to send yourself messages
function sendMessage {
	var api = new mw.Api;
	api.get( {
		'action' : 'query',
		'titles' : msgPage,
		'prop' : 'revisions|info',
		'intoken' : 'edit',
		'rvprop' : 'content',
		'indexpageids' : 1
		result = result.query;
		var page = result.pages[result.pageids[0]];
		var text = page.revisions[0]['*'];
		api.post( {
			'action' : 'edit',
			'title' : targetPage,
			'appendtext' : "\n" + text,
			'summary' : 'New Message (simulated automatically as part of The Wikipedia Adventure)',
			'token' : page.edittoken
			window.location.href = linkTo;

// Fail gracefully post-save but not postedit
var postEditButtons = [];
if ( mw.config.get( 'wgAction' ) === 'view' && !gt.isPostEdit ) {
 postEditButtons.push( {
 name: 'Click here to go back and make an edit',
 onclick: function {
 window.location.href = new mw.Uri.extend( { action: 'edit' } ).toString;

// Fail gracefully post-save but not postedit for visual editor
var postEditButtonsVisual = [];
if ( mw.config.get( 'wgAction' ) === 'view' && !gt.isPostEdit ) {
 postEditButtonsVisual.push( {
 name: 'Go Back',
 onclick: function {
 window.location.href = window.location.href +
"&veaction=edit";

gt.defineTour( {
 name: 'twa1',
		shouldLog: true,
 steps: [ {
 //1
 title: '위키백과에 어서 오세요!',
 description: '',
 onShow: gt.parseDescription,
 overlay: true,
 closeOnClickOutside: false,
	 buttons: [ {
 name: '준비 완료',
 action: 'next',
 allowAutomaticOkay: false	

				
 //2
 title: '미리 알려드립니다',
 description: '',
 onShow: gt.parseDescription,
 overlay: true,
 closeOnClickOutside: false,
		 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=1' 
 name: '따라오세요...',
 action: 'next',
 allowAutomaticOkay: false		

 //3
 title: '왜 위키백과인가요?',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=2' 
 name: '지금 일어나고 있는 것',
 action: 'next',
 allowAutomaticOkay: false				

 //4
 title: '지금 일어나고 있는 것',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=3' 
 name: '누가 위키백과를 만드나요?',
 action: 'next',
	 allowAutomaticOkay: false
 //5
 title: '누가 위키백과를 만드나요?',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=4' 
 name: '왜 사람들은 편집할까요?',
 action: 'next',
		 allowAutomaticOkay: false

 //6
 title: '특별한 역할을 찾아보세요',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=5' 
 name: '준비되셨나요?',
 action: 'next',
 allowAutomaticOkay: false,
 //7
 title: '로그인 또는 계정 만들기',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=6' 
 	name: '로그인된 상태',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=8'
 
 	name: '로그인을 해야 함',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:UserLogin' ) + '?tour=twa1&step=7'
 
 	name: '계정 만들기!',
 action: 'externalLink',
 url: mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/index.php?title=Special:UserLogin&returnto=위키백과:위키백과_대모험&returntoquery=tour%3Dtwa1%26step%3D8%26showGettingStarted%3Dfalse&type=signup'
 
 allowAutomaticOkay: false,
 shouldSkip: function {
 return mw.config.get( 'wgUserId' ) !== null;
				
 //8
 title: '위키백과에게 안부 묻기',
 description: '',
 overlay: true,
 onShow: gt.parseDescription,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=6' 
 name: '안부 전하기*',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=9'
 // onclick: function { if(!mw.config.get('wgUserName')){ alert( "로그인을 해 주세요." ); return; } sendMessage( '사용자토론:' + mw.config.get( 'wgUserName' ), '위키백과:위키백과 대모험' , mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=9'); } 
 allowAutomaticOkay: false
				
 //9
 title: '사용자 문서',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '위키백과:위키백과 대모험' ) + '?tour=twa1&step=8' 
 name: '좋은 사용자 문서는 어떤 것인가요?',
 action: 'externalLink',
 url: mw.util.getUrl( 'Wikipedia:TWA/1/Bio' ) + '?tour=twa1&step=10'
		allowAutomaticOkay: false
		
 //10
 //원래는 사용자가 고르도록 되어 있으나 임시적으로 코드 수정
 title: '스스로 해야 할 때...',
 description: '좋은 사용자 문서는 사생활을 드러내지 않고, 자기 자랑을 하지 않는 것이 좋습니다. 편집과 관련 있는 링크를 모아두거나, 자주 가는 링크를 보관하는 용도로 쓰지요. 무례한 말도 써서는 안 되고요.',
 attachTo:'#contentSub',
 position: 'bottom',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 allowAutomaticOkay: false, 
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( '특수:내사용자문서' ) + '?tour=twa1&step=9' 
 name: '이해했어요',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=11'} ],
 
 //11
 title: '해 보세요!',
 description: '',
 attachTo: '#ca-edit',
 position: 'bottom',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 allowAutomaticOkay: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=9' 
 shouldSkip: function {
 return gt.hasQuery( { action: 'edit' } );

 //12
 title: '편집 인터페이스',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 attachTo: '#wpTextbox1', 
 position: 'bottomRight',
 closeOnClickOutside: false,
	 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=11' 
 name: '입력했어요',
 action: 'next'
 
 //13
 title: '편집 요약과 게시',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 attachTo: '#wpSave', 
 position: 'bottomRight',
 closeOnClickOutside: false,
 allowAutomaticOkay: false,
 shouldSkip: function {
 return gt.isPostEdit;
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=12&action=edit' 
 buttons: postEditButtons

 //14
 title: 'Congrats!',
 description: '새로운 도구 얻음: ',
 overlay: false,
 onShow: gt.parseDescription,
 closeOnClickOutside: false,
 allowAutomaticOkay: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=13&action=edit' 
 name: '더 좋게 만들어보기*',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=15&action=edit' 
 //onclick: function { if(!mw.config.get('wgUserName')){ alert( "Please login." ); return; } sendMessage( 'User:' + mw.config.get( 'wgUserName' ), 'Wikipedia:TWA/Badge/1template2' , mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=15'); } 

 //15
 title: '더 잘하기',
 description: '',
 overlay: false,
 attachTo: '#ca-edit',
 position: 'bottom',
 onShow: gt.parseDescription,
 closeOnClickOutside: false,
 allowAutomaticOkay: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=14' 
 shouldSkip: function {
 return gt.hasQuery( { action: 'edit' } );

 //16
 title: '글자 굵게 하기',
 description: '편집 툴바는 글에 효과를 쉽게 넣어 주기 때문에 유용한 도구입니다.',
 attachTo: '#wpTextbox1', 
 position: 'bottomRight',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=15' 
 	 name: '굵게 만들었습니다',
 action: 'next'

 //17
 title: '기울임체 추가',
 description: '',
 attachTo: '#wpTextbox1', 
 position: 'bottomRight',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 allowAutomaticOkay: false	,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=16&action=edit' 
 	 name: '기울임체를 적용했습니다',
 action: 'next'

 //18
 title: '위키링크 추가',
 description: '',
 attachTo: '#wpTextbox1', 
 position: 'bottomRight',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=17&action=edit' 
 	 name: '위키링크를 걸었습니다',
 action: 'next'

 //19
 title: '편집 요약',
 description: '',
 attachTo: '#wpSave',
 position: 'bottomRight',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 allowAutomaticOkay: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=18&action=edit' 
 shouldSkip: function {
 return gt.isPostEdit;
 buttons: postEditButtons

 //20
 title: 'You did it :)',
 description: '새로운 도구 증정: ',
 overlay: true,
 onShow: gt.parseDescription,
 closeOnClickOutside: false,
 buttons: [ {
 name: '',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=19&action=edit' 
 name: '다음 단계는 무엇인가요??*',
 action: 'externalLink',
 url: mw.util.getUrl( 'Special:MyPage' ) + '?tour=twa1&step=21&action=edit' 
 // onclick: function { if(!mw.config.get('wgUserName')){ alert( "Please login." ); return; } sendMessage( 'User:' + mw.config.get( 'wgUserName' ), 'Wikipedia:TWA/Badge/2template2' , mw.util.getUrl( 'Wikipedia:TWA/1/End' ) + '?tour=twa1&step=21'); } 
 allowAutomaticOkay: false

 //21
 title: '미션 1 성공!',
 description: '',
 onShow: gt.parseDescription,
 overlay: false,
 closeOnClickOutside: false,
 buttons: [ {
 	 name: '축하합니다!',
 action: 'end'