백괴게임>Bd3076 |
백괴게임>Bd3076 |
1번째 줄: |
1번째 줄: |
| /** JSON 편집을 편리하게 해 주는 기능.
| |
| * [[틀:JSON수정]]을 위한 플러그인입니다.
| |
| * 작성자: [[사:Bd3076|Bd3076]]
| |
| */
| |
|
| |
|
| function uncy_jsonEdit(){
| |
| var mp = new Map();
| |
| var api = MediaWikiAPI();
| |
|
| |
| $('.uncy-jsonedit').each(function() {
| |
| var jsonDoc = $(this).attr("data-title");
| |
| var jsonData;
| |
| if(mp.get(jsonDoc) === undefined){
| |
| jsonData = JSON.parse(api.getDocument(jsonDoc));
| |
| }
| |
| else{
| |
| jsonData = JSON.parse(mp.get(jsonDoc));
| |
| }
| |
| var variable = $(this).attr("data-var");
| |
| var value = $(this).attr("data-val");
| |
|
| |
| jsonData[variable] = value;
| |
|
| |
| mp.set(jsonDoc, JSON.stringify(jsonData));
| |
| });
| |
|
| |
| mp.forEach(function(value, key) {
| |
| if(key === undefined){
| |
| console.log("error: document name is undefined");
| |
| return;
| |
| }
| |
| if(value === undefined){
| |
| console.log("error: variable or value is wrong");
| |
| return;
| |
| }
| |
| api.changeDocument(key, "JSON 데이터 수정", value, 1);
| |
| });
| |
|
| |
| }
| |
| $(uncy_jsonEdit());
| |