Медијавики:Gadget-CommentWatch.js

Извор: Викиновости

Напомена: Пошто објавите измене, можда ћете морати да обришете кеш прегледача како бисте их видели.

  • Firefox / Safari: Држите Shift и кликните на Reload или притисните Ctrl-F5 или Ctrl-R (⌘-R на Mac-у).
  • Google Chrome: Притисните Ctrl-Shift-R (⌘-Shift-R на Mac-у).
  • Internet Explorer / Edge: Држите Ctrl и кликните на Refresh или притисните Ctrl-F5.
  • Opera: Притисните Ctrl-F5.
//This is a very quick script that is not very good. Will make nicer later. YMMV with this.
/*extern wgNamespaceNumber, wgPageName, sajax_init_object addOnloadHook */
if (mw.config.get('wgNamespaceNumber') === 0 || mw.config.get('wgNamespaceNumber') === 1 || mw.config.get('wgNamespaceNumber') === 102) {
 var cWatch = {}; //init obj

 cWatch.init = function () {
 var Page = "Comments:" + mw.config.get('wgPageName'); // default
 if (mw.config.get('wgNamespaceNumber') === 1) {
  Page = "Comments:" + mw.config.get('wgPageName').split(":", 2)[1];
 }
 else if (mw.config.get('wgNamespaceNumber') === 102) {
  Page = mw.config.get('wgPageName').split(":", 2)[1];
 }

 cWatch.watchComments = function () {
   var x;
   x = sajax_init_object();
 
   // do nothing if we can't check
   if (!x) {
     return;
   }
 
   x.open("GET", "//sr.wikinews.org/w/index.php?action=watch&title=" + Page, true);
   x.setRequestHeader("Pragma", "cache=yes");
   x.setRequestHeader("Cache-Control", "no-transform");
   x.onreadystatechange = function () {
    if (x.readyState === 4) {
    /* Start success*/
    if (x.status === 200) {
     document.getElementById("siteNotice").innerHTML += ('Comment Page now watched' );
    }
    else {
     document.getElementById("siteNotice").innerHTML += ('Auto comment page watch <b>failed</b>. <a href="//en.wikinews.org/w/index.php?action=watch&title=' + Page + '">Watch manually?</a>.' );
    }
    if (document.getElementById("ca-watch").addEventListener) {
     document.getElementById("ca-watch").firstChild.removeEventListener("click", cWatch.watchComments, true);
    }
    else if (document.getElementById("ca-watch").firstChild.attachEvent) {
     document.getElementById("ca-watch").firstChild.detachEvent("onclick", cWatch.watchComments);
    }
    x = undefined;
   }
  }
  x.send(null);
 }


 if (document.getElementById("ca-watch")) { //In case we're already watching
  var watchTab = document.getElementById("ca-watch").firstChild;
  if (watchTab.addEventListener) {
   watchTab.addEventListener("click", cWatch.watchComments, true);
  }
  else if (watchTab.attachEvent) {
   watchTab.attachEvent("onclick", cWatch.watchComments);
  }
  else {
   document.getElementById("siteNotice").innerHTML += ('Auto comment page watch <b>failed</b>. <a href="//en.wikinews.org/w/index.php?action=watch&title=' + Page + '">Watch manually?</a>.' );
  }
 }



 } //End cWatch.init


 if (document.getElementById("globalWrapper")) { //We're a load event
  cWatch.init();
 }
  else {
  $(cWatch.init);
 }
}