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

(+저작자)
잔글편집 요약 없음
1번째 줄: 1번째 줄:
/* Source code written by [[User:LiteHell2]] */
// Source code written by [[User:LiteHell2]]


var conf = mw.config.get(["wgArticleId", "wgServer", "wgScriptPath", "wgCurRevisionId"]);
var conf = mw.config.get(["wgArticleId", "wgServer", "wgScriptPath", "wgCurRevisionId"]);

2015년 11월 1일 (일) 21:50 판

// 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();