미디어위키:Gadget-NewrevNotification.js: 두 판 사이의 차이

(새 문서: var conf = mw.config.get(["wgArticleId", "wgServer", "wgScriptPath", "wgCurRevisionId"]); var apiPoint = conf.wgServer + conf.wgScriptPath + "/api.php"; var apiParams = "?format=json&...)
 
잔글편집 요약 없음
 
(같은 사용자의 중간 판 2개는 보이지 않습니다)
1번째 줄: 1번째 줄:
// Source code written by [[User:LiteHell2]]
var conf = mw.config.get(["wgArticleId", "wgServer", "wgScriptPath", "wgCurRevisionId"]);
var conf = mw.config.get(["wgArticleId", "wgServer", "wgScriptPath", "wgCurRevisionId"]);
var apiPoint = conf.wgServer + conf.wgScriptPath + "/api.php";
var apiPoint = conf.wgServer + conf.wgScriptPath + "/api.php";
23번째 줄: 25번째 줄:
         if (rid != revNow) {
         if (rid != revNow) {
             rid = revNow;
             rid = revNow;
             htmlAlert("갱신됨.<br>리버전 ID : "+revNow+"<br>편집자 : "+editor);
             htmlAlert("갱신됨.<br>리비전 ID : "+revNow+"<br>편집자 : "+editor);
         }
         }
       }
       }

2015년 11월 1일 (일) 21:53 기준 최신판

// Source code written by [[User:LiteHell2]]

var conf = mw.config.get(["wgArticleId", "wgServer", "wgScriptPath", "wgCurRevisionId"]);
var apiPoint = conf.wgServer + conf.wgScriptPath + "/api.php";
var apiParams = "?format=json&action=query&pageids="+conf.wgArticleId+"&prop=revisions";
var apiUrl = apiPoint.concat(apiParams);
 
var rid = conf.wgCurRevisionId;
function htmlAlert(content) {
   var e = document.createElement("div");
   var r = function(){if(e.parentNode != null) e.parentNode.removeChild(e);};
   e.setAttribute("style", "position: fixed; top: 60px; left: 50%; transform: translateY(-50%); border-radius: 5px; padding: 10px; background: rgba(153, 255, 102, 0.5); cursor: pointer; z-index: 90001");
   e.innerHTML = content;
   e.addEventListener("click", r);
   document.body.appendChild(e);
   setTimeout(r, 1000 * 20);
}
function checkRev(){
   $.ajax({
      url: apiUrl,
      success: function(result){
         console.log(result);
         var pObj = result.query.pages[Object.keys(result.query.pages)[0]].revisions[0];
         var revNow = pObj.revid, editor = pObj.user;
         if (rid != revNow) {
            rid = revNow;
            htmlAlert("갱신됨.<br>리비전 ID : "+revNow+"<br>편집자 : "+editor);
         }
      }
   });
}
setInterval(checkRev, 1000 * 5);
checkRev();