리버티게임:관리자 요청/2019년 2월: 두 판 사이의 차이

리버티게임, 모두가 만들어가는 자유로운 게임
백괴게임>Bd3076
백괴게임>Manymaster
142번째 줄: 142번째 줄:
<pre>mw.notify('JSON 데이터가 수정되었습니다.');</pre>
<pre>mw.notify('JSON 데이터가 수정되었습니다.');</pre>
로 바꿔주세요. (1506줄에는 아무것도 없습니다.) -- {{:사용자:Bd3076/서명}} 2019년 2월 15일 (금) 17:44 (KST)
로 바꿔주세요. (1506줄에는 아무것도 없습니다.) -- {{:사용자:Bd3076/서명}} 2019년 2월 15일 (금) 17:44 (KST)
:{{완료}} by [[사용자:Manymaster|manymaster]] ([[사용자토론:Manymaster|토론]]|[[특수기능:기여/Manymaster|기여]]) 2019년 2월 15일 (금) 19:43 (KST)

2019년 2월 15일 (금) 19:43 판

No Elephants Allowed.jpg
관리자 요청
 2019년 2월 
새 글 쓰기
새로 고침

비밀5 수정

민수 문서가 너무 커서 수정을 못하고 있습니다. 가장 처음으로 나오는(분리 위에 있는) |22= 부분을 제거해 주세요. -- Bd3076 (토론) (둘러보기)기여 횟수:
만든 게임: Bd3076의 게임
2019년 2월 1일 (금) 10:52 (KST)

Yes check.svg완료 문서 바이트 수가 20만 바이트인 거를 보고 놀랐습니다. -- 이의섭(사토|기여|노 백괴게임, 노 잼) 2019년 2월 1일 (금) 16:07 (KST)

백괴게임:발전소/그냥낚시 관련

총의로 일단 유지, 규제 생성으로 결론났습니다만, 기간이 지나도 한참 지났는데 처리가 안되고 있습니다. 처리 부탁드립니다. --Regurus (/) 2019년 2월 3일 (일) 07:46 (KST)

Yes check.svg완료 by manymaster (토론|기여) 2019년 2월 11일 (월) 01:45 (KST)

입력 상자 플러그인 커먼자스화

혹시 가능한지 여쭙고 싶습니다. 구조상 불가능하다면 어쩔 수 없지만요. -- Bd3076 (토론) (둘러보기)기여 횟수:
만든 게임: Bd3076의 게임
2019년 2월 4일 (월) 11:35 (KST)

전 자바스크립트에 대해 아는 것이 거의 없지만, 아마 가능할 것으로 보입니다. 자동저장은 반달로 악용될 수 있으나 입력 상자는 반달 위협이 없고 틀:키패드보다도 실용적이니 문제는 없어 보입니다만, 다른 관리자 또는 사용자들의 의견도 들어 보는 게 좋을 것 같습니다. -- 이의섭(사토|기여|노 백괴게임, 노 잼) 2019년 2월 4일 (월) 12:09 (KST)
테스트하니 가능합니다. 각 사용자 커먼자스를 지우는 등의 절차가 있어 완료하는데 시간이 좀 걸릴 것 같습니다. by manymaster (토론|기여) 2019년 2월 5일 (화) 08:56 (KST)
감사합니다. -- Bd3076 (토론) (둘러보기)기여 횟수:
만든 게임: Bd3076의 게임
2019년 2월 5일 (화) 11:26 (KST)
Yes check.svg완료 by manymaster (토론|기여) 2019년 2월 5일 (화) 11:27 (KST)

Common.js

제 사용자 커먼자스미디어위키:Common.js에 넣어 주세요. --사용자:Gustmd7410/서명 2019년 2월 5일 (화) 11:56 (KST)

Yes check.svg완료 by manymaster (토론|기여) 2019년 2월 5일 (화) 12:05 (KST)

틀:백괴게임 이름 바꾸기

틀의 상태가 맛이 갔습니다. 낚시 게임들에게 특히 피해가 크게 갈 것 같은데 수정해야 하지 않을까요?--My ! () 2019년 2월 8일 (금) 00:48 (KST)

Yes check.svg완료 대충 복구 완료. by manymaster (토론|기여) 2019년 2월 8일 (금) 04:55 (KST)

Common.js

JSON 데이터를 편리하게 수정할 수 있는 플러그인을 만들었습니다...만, 보안상 문제로 가능할진 모르겠네요. 가능하다면 혹시 제 commonjs 문서를 커먼자스에 추가해 주실 수 있나요? 맨 아래에 추가해 주시면 됩니다. -- Bd3076 (토론) (둘러보기)기여 횟수:
만든 게임: Bd3076의 게임
2019년 2월 13일 (수) 16:11 (KST)

잠시만요. 업데이트 하나만 할게요. -- Bd3076 (토론) (둘러보기)기여 횟수:
만든 게임: Bd3076의 게임
2019년 2월 13일 (수) 19:56 (KST)
업데이트 완료했습니다. 먼저 BANIP님이 만드신 MediaWikiAPI() 객체를 아래처럼 바꿔주시고,
/*
/** mediawiki api를 통해 간단하게 문서들을 수집, 변경하는 함수.
 * 플러그인 코어에서 사용하기 위해 만들었습니다.
 * 작성자: [[사용자:BANIP|BANIP]]
 * 사용방법 
 *: var api = MediaWikiAPI(); .changeDocument()
 *: api.changeDocument(변경할 문서의 타이틀, 편집 요약, 변경할 문서의 내용) => 문서의 내용을 변경합니다.
 *: api.addDocument(변경할 문서의 타이틀, 편집 요약, 추가할 문서의 내용) => 문서에 새로운 내용을 추가합니다.
 *: api.getDocument(가져올 문서의 타이틀) => 문서의 모든 텍스트를 읽어옵니다.
 *: api.readDocument(가져올 문서의 타이틀) => 문서의 모든 텍스트를 jquery 객체로 읽어옵니다.
 * 영 좋지 않은 목적으로 사용 하면 안드로메다 경찰관이 잡아간다!
 */

function MediaWikiAPI() {
    var token;
    var getToken = function() {
        if (token !== undefined) return token;
        $.ajax({
            url: "/w/api.php?action=query&meta=tokens",
            success: function(v, i) {
                var datas = JSON.parse($(v).find("pre").text());
                token = datas["query"]["tokens"]["csrftoken"];
            },
            async: false
        });
        return token;
    };

    function changeDocument(title, summary, content, isUnReload) {
    	mw.loader.using( ['mediawiki.util','mediawiki.Title'] ).then( function () {
		    $.ajax({
	            url: mw.util.wikiScript("api"),
	            data: {
	                format: 'json',
	                action: 'edit',
	                title: title,
	                summary: summary,
	                text: content,
	                token: getToken(),
	            },
	            dataType: 'json',
	            type: 'POST',
	            success: function(data) {
	                if (data && data.edit && data.edit.result == 'Success') {
	                    if (!isUnReload) window.location.reload(); // reload page if edit was successful
	                } else if (data && data.error) {
	                    alert('Error: API returned error code "' + data.error.code + '": ' + data.error.info);
	                } else {
	                    alert('Error: Unknown result from API.');
	                }
	            },
	            error: function(xhr) {
	                alert('Error: Request failed.');
	            }
	        });
		} );
    }

    function addDocument(title, summary, content, isUnReload) {
        originContent = getDocument(title);
        changeDocument(title, summary, originContent + content, isUnReload);
    }

    function getDocument(title) {
        function entityDecode(doc) {
            return $('<p></p>').html(doc).text();
        }

        var originContent;
        $.ajax({
            url: "/w/index.php?title=" + title + "&action=edit",
            success: function ajaxSucess(data) {
                originContent = $(data).find("textarea").html();
            },
            async: false
        });
        return entityDecode(originContent);
    }

    function readDocument(title) {
        var doc;
        $.ajax({
            url: "/wiki/" + title,
            success: function ajaxSucess(data) {
                doc = $(data).find("#mw-content-text");
            },
            async: false
        });
        return doc;
    }


    return {
        getToken: getToken,
        changeDocument: changeDocument,
        addDocument: addDocument,
        getDocument: getDocument,
        readDocument: readDocument,
    };
}
커먼자스 맨 아래에 사:Bd3076/common.js의 내용을 추가해 주시기 바랍니다. -- Bd3076 (토론) (둘러보기)기여 횟수:
만든 게임: Bd3076의 게임
2019년 2월 14일 (목) 15:45 (KST)
Yes check.svg완료Js091213 (토론) 2019년 2월 14일 (목) 15:52 (KST)

보안 문제로 인해 한 번 더 수정 부탁드립니다. 미디어위키:Common.js의 1506번째 줄을

mw.notify('JSON 데이터가 수정되었습니다.');

로 바꿔주세요. (1506줄에는 아무것도 없습니다.) -- Bd3076 (토론) (둘러보기)기여 횟수:
만든 게임: Bd3076의 게임
2019년 2월 15일 (금) 17:44 (KST)

Yes check.svg완료 by manymaster (토론|기여) 2019년 2월 15일 (금) 19:43 (KST)