ମିଡ଼ିଆଉଇକି:Gadget-markAdmins.js

ଉଇକିପିଡ଼ିଆ‌ରୁ

ସୂଚନା: ବଦଳଗୁଡ଼ିକ ଦେଖିବା ପାଇଁ ଆପଣଙ୍କୁ ହୁଏତ ନିଜ ବ୍ରାଉଜର କ୍ୟାସ ବାଇପାସ କରିବାକୁ ପଡ଼ିପାରେ ।

  • Firefox / Safari: Reload ଉପରେ କ୍ଲିକ କରିବା ବେଳେ Shift ଧରି କିମ୍ବା Ctrl-F5 ବା Ctrl-R ଦବାନ୍ତୁ (Macରେ ⌘-R)
  • Google Chrome: Ctrl-Shift-R ଦବାନ୍ତୁ (Macରେ ⌘-Shift-R)
  • Internet Explorer / Edge: Refresh ଉପରେ କ୍ଲିକ କଲା ବେଳେ Ctrl ଧରି ବା Ctrl-F5 ଦବାଇ
  • Opera: Ctrl-F5 ଦବାନ୍ତୁ ।
 //***********************************************************************
 // Skript ursprünglich von [[Benutzer:Euku]], 28. Dez. 2005
 // Adaptierung/zusätzliche Markierungen/Fixes: [[Benutzer:PDD]]
 // Aufgeräumt & beschleunigt: [[Benutzer:Littl]]
 // Etwas umgeräumt und potentielle Skinabhängigkeit entfernt: [[Benutzer:Guandalug]]
 // Anpassung an WikiData: [[User:NordNordWest]]
 //***********************************************************************
 
 // <nowiki>
 
 // get URL parameters (used for page type variables)
 var UrlParameters = [];
 readparams();
 
 function readparams() {
  var asReadInUrlParameters;
  var asReadInUrlParameter;
 
  // Get URL parameters
  asReadInUrlParameters = location.search.substring(1, location.search.length).split("&");
  for (i = 0; i < asReadInUrlParameters.length; i++) {
    asReadInUrlParameter = asReadInUrlParameters[i].split("=");
    UrlParameters[decodeURIComponent(asReadInUrlParameter[0])] = decodeURIComponent(asReadInUrlParameter[1]);
  }
 }
 
 function markAdmins() {
 
   // Variables that should be defined in your monobook
   if (typeof markadmins  == 'undefined')
       markadmins = true;
 
   if (!markadmins) 
       return; //nichts zu tun, schnell weg hier
 
   var langUser = "User:";
 
   if (typeof marksubpages  == 'undefined')
       marksubpages = false;
   if (typeof dontmarkmyself == 'undefined')
       dontmarkmyself = false;
   if (typeof isSpecial == 'undefined')
       isSpecial = (wgCanonicalNamespace == "Special");
   if (typeof isHistory == 'undefined')
       isHistory = (wgAction == 'history'); 
   if (typeof isUserpage == 'undefined')
       isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") );
   if (typeof isTalk == 'undefined')
       isTalk = (wgNamespaceNumber %2 == 1); 
   if (typeof isProject == 'undefined')
       isProject = (wgCanonicalNamespace == "Project");
   if (typeof isHelp == 'undefined')
       isHelp = (wgCanonicalNamespace == "Help");
   if (typeof isDiff == 'undefined')
       isDiff = UrlParameters["diff"];
 
   if (markadmins) {
// static list
 var admins=["Ansumang", "Odisha1", "Psubhashish"];
       var admins_str = '|'+admins.join('|')+'|';
 
//       var bureaucrats=["Xxx", "Yyy"];
//       var bureaucrats_str = '|'+bureaucrats.join('|')+'|';
 
//       var checkusers=["Xxx", "Yyy"];
//       var checkusers_str = '|'+checkusers.join('|')+'|';
 
//       var oversights=["Xxx", "Yyy"];
//       var oversights_str = '|'+oversights.join('|')+'|';

 
// Stewards
 var stewards=["Amqui", "Avraham", "Barras", "Bencmq", "Bennylin", "Billinghurst", "BRUTE", "Bsadowski1", "DerHexer", "Elfix", "J.delanoy", "Jon_Harald_S%C3%B8by", "Jusjih", "Jyothis", "Laaknor", "Leinad", "M7", "MarcoAurelio", "Mardetanha", "Matanya", "Mathonius", "MBisanz", "Melos", "Mentifisto", "MF-Warburg", "Millosh", "Pathoschild", "PeterSymonds", "Pundit", "Quentinv57", "QuiteUnusual", "Ruslik0", "Shizhao", "Snowolf", "Tegel", "Teles", "Thogo", "Trijnstel", "Vituzzu", "Wikitanvir", "Wpedzich"];
       var stewards_str = '|'+stewards.join('|')+'|';
 

// Global sysops: only mark users who are neither local sysops nor stewards
var globalsysops=["%C3%89rico_J%C3%BAnior_Wouters", "Fr33kman", "Frigotoni", "Herbythyme", "Hercule", "Igna", "Liliana-60", "MoiraMoira", "PiRSquared17", "Pmlineditor", "Ruy_Pugliesi", "Savh", "Shanmugamp7", "SPQRobin", "Tiptoety", "Toto_Az%C3%A9ro", "Zscout370"];
       var globalsysops_str = '|'+globalsysops.join('|')+'|';
 
       if (typeof markatxt == 'undefined')
           markatxt = "A";
       if (typeof markbureautxt == 'undefined')
           markbureautxt = "B";
       // if (typeof markcheckusertxt == 'undefined')
       //    markcheckusertxt = "CU";
       // if (typeof markoversighttxt == 'undefined')
       //    markoversighttxt = "OS";
       // if (typeof markstafftxt == 'undefined')
       //    markstafftxt = "Staff";
       if (typeof markstewtxt == 'undefined')
           markstewtxt = "S";
       // if (typeof markombtxt == 'undefined')
       //    markombtxt = "Omb";
       if (typeof markgstxt == 'undefined')
           markgstxt = "GS";
   }
 
   if (isSpecial || isHistory || isUserpage || isTalk || isProject || isHelp || isDiff) {
      var i;
      var aNode;
      var allanchors = document.getElementsByTagName("A");
      var searchExp = /.wiki.User.(.+)/;
      var trenn="/wiki/" + langUser;
      var marker;
      var mainpageanchor;
 
      mw.util.addCSS('span.adminMark { font-weight: bold; }');
      for (i=0; i < allanchors.length; i++) {
         aNode = allanchors[i];
         mainpageanchor = true;
         // if it's a link to a user
         if ((href = aNode.getAttribute("href")) && (href.indexOf(trenn) != -1)) {
             currUser = searchExp.exec(href)[1];
             /* if (isUserpage) */ currUserClean = currUser.replace(/\/.*/,'');
             if (currUserClean != currUser) mainpageanchor = false;
             currUser= "|" + currUserClean + "|";
             marker = [];
 
             if (markadmins) {
                // is this user an admin?
                if (admins_str.indexOf(currUser) != -1) marker.push(markatxt);          
                // is this user a bureaucrat?
                // if (bureaucrats_str.indexOf(currUser) != -1) marker.push(markbureautxt);
                // is this user a checkuser?
                // if (checkusers_str.indexOf(currUser) != -1) marker.push(markcheckusertxt);
                // is this user an oversighter?
                // if (oversights_str.indexOf(currUser) != -1) marker.push(markoversighttxt);
                // is this user a staff member?
                // if (staff_str.indexOf(currUser) != -1) marker.push(markstafftxt);
                // is this user a steward?
                if (stewards_str.indexOf(currUser) != -1) marker.push(markstewtxt);
                // is this user an ombudsman?
                // if (ombudsmen_str.indexOf(currUser) != -1) marker.push(markombtxt);
                // is this user a global sysop?
                if (globalsysops_str.indexOf(currUser) != -1) marker.push(markgstxt);
             }
 
             // don't mark certain pages, except link to user main page
             if (mainpageanchor ||
                 (marksubpages && (mw.config.get('wgCanonicalSpecialPageName') != "Prefixindex")
                               && (mw.config.get('wgCanonicalSpecialPageName') != "Allpages")) )
             // check finished, now append node
             if ((marker.length > 0) && !(dontmarkmyself && (currUserClean == mw.config.get('wgUserName')))) {
                // Variante 1 (traditionell)
                // var aMark = document.createElement("b");
                // Variante 2 (vom Erzbschof)
                var aMark = document.createElement("span");
                aMark.className = "adminMark";
 
                var aMarkText = document.createTextNode(" (" + marker.join("/") + ")");
                aMark.appendChild(aMarkText);
                aNode.appendChild(aMark);
             }
         }
      }
   }
 }
 
 $(markAdmins);
 
 // </nowiki>