Zum Inhalt springen

Benutzer:Fomafix/addLogsLink.js

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 30. Dezember 2011 um 11:42 Uhr durch Fomafix (Diskussion | Beiträge) (uservisited als lokale Variable deklariert. Korrekturen nach mw:Manual:Coding conventions/JavaScript). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
 /*
  * addLogsLink
  *
  * adds a 'logs for this page' link to the navigation bar
  * if the page is a user's page, talk page or subpage, the link will go to logs for the user instead
  *
  * übernommen 1.6.2006 von [http://en.wikipedia.org/w/index.php?title=User:Thebainer/monobook.js&oldid=50539457]
  * siehe auch [[:en:Wikipedia:WikiProject User scripts/Scripts/Logs link]]
  *
  * [[:en:User:Thebainer]]      : Originalversion
  * [[Benutzer:PDD]] 01.06.2006 : Adaptierung für de.wikipedia, Zusatzlog für User:
  * [[Benutzer:PDD]] 02.06.2006 : optional Benutzerbeiträge für User:
  * [[Benutzer:PDD]] 10.07.2006 : für User: zusätzlich noch Stats und Stimmrechtcheck
  * [[Benutzer:PDD]] 23.08.2006 : Browse-Button
  * [[Benutzer:PDD]] 25.08.2006 : angepasst für commons
  * [[Benutzer:PDD]] 28.09.2006 : wg-Variablen statt RegExps
  * [[Benutzer:PDD]] 18.10.2006 : optional: Browsen im Userspace via Prefixindex
  * [[Benutzer:PDD]] 15.01.2007 : umgestellt auf addPortletLink aus wikibits.js
  * [[Benutzer:PDD]] 05.03.2007 : plus Link auf Toolserver-Tool für erstellte Artikel
  * [[Benutzer:PDD]] 16.04.2007 : plus Link auf Toolserver-Tool für gelöschte Edits
  * [[Benutzer:PDD]] 08.05.2007 : Stimmrecht/Schiedsgericht
  * [[Benutzer:PDD]] 18.07.2007 : interner Parameter für verschiedene Editcounter
  * [[Benutzer:PDD]] 08.08.2007 : User:Gallery eingefügt
  * [[Benutzer:PDD]] 06.12.2007 : DaB.-Usercounter statt Interiot-Usercounter (besser wäre: beide)
  * [[Benutzer:PDD]] 04.01.2008 : Yet another edit counter (Interiot wieder Default)
  * [[Benutzer:PDD]] 03.09.2009 : Yet another edit counter (Soxred, now Default)
  * [[Benutzer:PDD]] 02.01.2010 : BrowseDel-Button
  */

// <nowiki>

jQuery( document ).ready( function () {
   // alert (for old monobooks)
   if ( minimalVersion(60) < 60 ) return;

   // Variables that should be defined in your monobook
   if ( typeof pagelogtext === 'undefined' )
       pagelogtext = "Page:Log";
   if ( typeof userlogtext1 === 'undefined' )
       userlogtext1 = "User:Log:1";
   if ( typeof userlogtext2 === 'undefined' )
       userlogtext2 = "User:Log:2";

   if ( typeof addusercontriblink === 'undefined' )
       addusercontriblink = true;
   if ( typeof usercontribtext === 'undefined' )
       usercontribtext = "User:Contribs";
   if ( typeof userdeledittext === 'undefined' )
       userdeledittext = "User:DelEdits";
   if ( typeof userstatstext === 'undefined' )
       userstatstext = "User:Stats";
   if ( typeof usergallerytext === 'undefined' )
       usergallerytext = "User:Gallery";
   if ( typeof userstimmrechttext === 'undefined' )
       userstimmrechttext = "User:Stimmrecht";

   if ( typeof adduserarticlelink === 'undefined' )
       adduserarticlelink = true;
   if ( typeof userarticletext === 'undefined' )
       userarticletext = "User:Articles";

   if ( typeof addbrowselink === 'undefined' )
       addbrowselink = true;
   if ( typeof browseuserprefix === 'undefined' )
       browseuserprefix = true;
   if ( typeof browsetext === 'undefined' )
       browsetext = "Browse";

   if ( typeof addbrowsedellink === 'undefined' )
       addbrowsedellink = false;
   if ( typeof browsedeltext === 'undefined' )
       browsedeltext = "BrowseDel";

   if ( typeof addiusagelink === 'undefined' )
       addiusagelink = false;
   if ( typeof imgusagetext === 'undefined' )
       imgusagetext = "IMG:C-Usage";

   if ( typeof adminflag === 'undefined' )
       adminflag = false;

   if ( typeof userstatstype === 'undefined' )
       userstatstype = "soxred";
   if ( typeof userarticletype === 'undefined' )
       userarticletype = "soxred";


   // -----------------------------------------------------------------------------
   // Language support
   // -----------------------------------------------------------------------------
   var urlstub = "//en.wikipedia.org/w/index.php?title=Special%3A";
   var contribstub = "//en.wikipedia.org/wiki/Special:Contributions/";
   var nsprefixuser = "User";

   var wikiLanguageType = document.getElementsByTagName( 'html' )[0].lang;
   if ( mw.config.get( 'wgServer' ) === "//commons.wikimedia.org" )
       wikiLanguageType = 'commons';

   switch ( wikiLanguageType ) {
     case 'de':
        urlstub = "//de.wikipedia.org/w/index.php?title=Spezial%3A";
        contribstub = "//de.wikipedia.org/wiki/Spezial:Beitr%C3%A4ge/";
        nsprefixuser = "Benutzer";
        break;
     case 'bar':
        urlstub = "//bar.wikipedia.org/w/index.php?title=Spezial%3A";
        contribstub = "//bar.wikipedia.org/wiki/Spezial:Beitr%C3%A4ge/";
        nsprefixuser = "Benutzer";
        break;
     case 'fr':
        urlstub = "//fr.wikipedia.org/w/index.php?title=Special%3A";
        contribstub = "//fr.wikipedia.org/wiki/Special:Contributions/";
        nsprefixuser = "Utilisateur";
        break;
     case 'es':
        urlstub = "//es.wikipedia.org/w/index.php?title=Especial%3A";
        contribstub = "//es.wikipedia.org/wiki/Especial:Contributions/";
        nsprefixuser = "Usuario";
        break;
     case 'it':
        urlstub = "//it.wikipedia.org/w/index.php?title=Speciale%3A";
        contribstub = "//it.wikipedia.org/wiki/Speciale:Contributions/";
        nsprefixuser = "Utente";
        break;
     case 'pt':
        urlstub = "//pt.wikipedia.org/w/index.php?title=Especial%3A";
        contribstub = "//pt.wikipedia.org/wiki/Especial:Contributions/";
        nsprefixuser = "Usu%C3%A1rio";
        break;
     case 'commons':
        urlstub = "//commons.wikimedia.org/w/index.php?title=Special%3A";
        contribstub = "//commons.wikimedia.org/wiki/Special:Contributions/";
        nsprefixuser = "User";
        break;
  }

  var logstub = urlstub + "Log";
  var allpstub = urlstub + "Allpages";
  var prefistub = urlstub + "Prefixindex";
  var undelstub = urlstub + "Undelete";
  var url, uservisited;

  var stimmrechtversion = "stimmberechtigung.php";
  // var stimmrechtversion = "sbnew.php";
  // var stimmrechtversion = "sb3.php";

  // get page title
  var ptitle = mw.util.wikiUrlencode( mw.config.get( 'wgPageName' ) );
  var sptitle = mw.util.wikiUrlencode( mw.config.get( 'wgTitle' ) );

  // if this is userspace: get the user
  if ( mw.config.get( 'wgNamespaceNumber' ) === 2 || mw.config.get( 'wgNamespaceNumber' ) === 3 ) {
     // thankfully, usernames may not contain '/'
     uservisited = sptitle.split( '/' )[0];
  }

  // get tabs portlet
  var tabs = "p-tb";

  // if this is a user, show the logs for the user (in addition to the page log)
  if ( mw.config.get( 'wgNamespaceNumber' ) === 2 || mw.config.get( 'wgNamespaceNumber' ) === 3 ) {
     url = logstub + "&user=" + uservisited;
     mw.util.addPortletLink( tabs, url, userlogtext1, "pt-u1logs" );
     url = logstub + "&page=" + nsprefixuser + ":" + uservisited;
     mw.util.addPortletLink( tabs, url, userlogtext2, "pt-u2logs" );
     if ( addusercontriblink ) {

         // Link auf Contribs
         if ( document.getElementById( "t-contributions" ) )
             document.getElementById( "t-contributions" ).getElementsByTagName( "a" )[0].innerHTML = usercontribtext;
         else {
             url = contribstub + uservisited;
             mw.util.addPortletLink( tabs, url, usercontribtext, "t-contributions" );
         }

    if ( adminflag === true ) {
         // Link auf Deleted Edits
         if ( adminflag === false)
             url = "//toolserver.org/~interiot/cgi-bin/queries/tmp/del?user=" + uservisited
                   + "&dbname=" + wikiLanguageType + "wiki";
         else
             url = urlstub + "DeletedContributions&limit=500&target="
                   + uservisited;
         mw.util.addPortletLink( tabs, url, userdeledittext, "t-userdeledits" );
    }

         // defaulting removed userstats to soxred
         if ( userstatstype === "wannabe_kate" || userstatstype === "dab" || userstatstype === "soxredp" ) {
                userstatstype === "soxred";
         }

         // Link auf Userstatistik
         if ( userstatstype === "kate" ) {
         url = "//toolserver.org/~river/cgi-bin/count_edits?user=" + uservisited
               + "&dbname=" + wikiLanguageType + "wiki_p";
         }
         else if ( userstatstype === "interiot" ) {
         url = "//toolserver.org/~interiot/cgi-bin/count_edits?user=" + uservisited
               + "&dbname=" + wikiLanguageType + "wiki_p";
         }
         else if ( userstatstype === "yaec" ) {
         url = "//toolserver.org/~vvv/yaec.php?user=" + uservisited
               + "&wiki=" + wikiLanguageType + "wiki_p";
         }
         else if ( userstatstype === "misza" ) {
         url = "//toolserver.org/~misza13/cgi-bin/count.py?user=" + uservisited
               + "&project=" + wikiLanguageType + "wiki_p&edits=on&logs=on";
         }
         else if ( userstatstype === "soxred" ) {
         url = "//toolserver.org/~soxred93/pcount/index.php?name=" + uservisited
               + "&lang=" + wikiLanguageType + "&wiki=" + ( wikiLanguageType === 'commons' ? "wikimedia" : "wikipedia" );
         }
         else if ( userstatstype === "soxredquick" ) {
         url = "//toolserver.org/~soxred93/simplecount/index.php?name=" + uservisited
               + "&lang=" + wikiLanguageType + "&wiki=" + ( wikiLanguageType === 'commons' ? "wikimedia" : "wikipedia" );
         }
         mw.util.addPortletLink( tabs, url, userstatstext, "t-userstats" );

         // Link auf Bildergalerie
         url = "//toolserver.org/~daniel/WikiSense/Gallery.php?wikilang=" + wikiLanguageType + "&wikifam=.wikipedia.org"
         + "&format=html&img_user_text=" + uservisited + "&order=-img_timestamp";
         mw.util.addPortletLink( tabs, url, usergallerytext, "t-usergallery" );

         // no idea whether the "stimmberechtigung" tool works for databases other than dewiki_p
         if ( wikiLanguageType === 'de' ) {
             url = "//toolserver.org/~guandalug/tools/" + stimmrechtversion + "?user=" + uservisited +
                   "&day=" + Tag + "&mon=" + Monat + "&year=" + Jahr +
                   "&hour=" + jetzt.getHours() + "&min=" + jetzt.getMinutes();
             mw.util.addPortletLink( tabs, url, userstimmrechttext, "t-stimmrecht" );
/*
             url = "//toolserver.org/~guandalug/tools/" + stimmrechtversion + "?user=" + uservisited +
                   "&day=8&mon=11&year=2009&hour=0&min=0";
             mw.util.addPortletLink( tabs, url, "User:SG-Stimmrecht", "t-stimmrecht-sg" );
*/
         }
     }

     // Link auf User-Neuanlagen
     if ( adduserarticlelink ) {
         if ( userarticletype === "escaladix" ) {
         url = "//toolserver.org/~escaladix/cgi-bin/farticles.tcl?pseudo=" + uservisited
               + "&lang=" + wikiLanguageType;
         }
         else if ( userarticletype === "soxred" ) {
         url = "//toolserver.org/~soxred93/pages/index.php?name=" + uservisited
               + "&lang=" + wikiLanguageType + "&wiki=wikipedia&namespace=0&redirects=noredirects&getall=1";
         }
         mw.util.addPortletLink( tabs, url, userarticletext, "t-userarticles" );
     }

  }

  // show the page log (always)
  if ( mw.config.get( 'wgCanonicalNamespace' ) !== "Special" ) {
     url = logstub + "&page=" + ptitle;
     mw.util.addPortletLink( tabs, url, pagelogtext, "pt-logs" );
  }

  // if this is a media file, show usage stats
  if ( addiusagelink && mw.config.get( 'wgCanonicalNamespace' ) === "File" ) {
     url = "//toolserver.org/~daniel/WikiSense/CheckUsage.php?i=" + sptitle + "&w=_100000#end";
     mw.util.addPortletLink( tabs, url, imgusagetext, "pt-imgusage" );
  }

  // show the browse button (conditional)
  if ( addbrowselink && mw.config.get( 'wgCanonicalNamespace' ) !== "Special" ) {
      if ( browseuserprefix && ( mw.config.get( 'wgNamespaceNumber' ) === 2 || mw.config.get( 'wgNamespaceNumber' ) === 3 ) )
         url = prefistub + "&prefix=" + uservisited + "/&namespace=" + mw.config.get( 'wgNamespaceNumber' );
      else
         url = allpstub + "&from=" + sptitle + "&namespace=" + mw.config.get( 'wgNamespaceNumber' );
      mw.util.addPortletLink( tabs, url, browsetext, "pt-browse" );
  }

  // show the browse-del button (conditional)
  if ( addbrowsedellink && adminflag && mw.config.get( 'wgCanonicalNamespace' ) !== "Special" ) {
     url = undelstub + "&prefix=" + ptitle;
     mw.util.addPortletLink( tabs, url, browsedeltext, "pt-browsedel" );
  }

});
// </nowiki>