Usuário(a):OTAVIO1981/toolbox.js

Origem: Wikipédia, a enciclopédia livre.

Nota: Depois de publicar, poderá ter de contornar a cache do seu navegador para ver as alterações.

  • Firefox / Safari: Pressione Shift enquanto clica Recarregar, ou pressione Ctrl-F5 ou Ctrl-R (⌘-R no Mac)
  • Google Chrome: Pressione Ctrl-Shift-R (⌘-Shift-R no Mac)
  • Internet Explorer / Edge: Pressione Ctrl enquanto clica Recarregar, ou pressione Ctrl-F5
  • Opera: Pressione Ctrl-F5.
// Wenn man mein ganzes Javascript per "document.write[...]" einbinden will, kann man einige
// Variablen nicht mehr selbst belegen, darum die If-Abfrage vorher.

if (typeof benutzername == 'undefined') var benutzername = "Rei-artur"; // ist aber nur an Stellen "von allgemeinem Interesse" eingebaut

if (typeof IamAdmin == 'undefined') var IamAdmin = true;

// Variable um eine je nach Modus differenzierte Ausgabe zu ermöglichen
var docURL = document.URL;
var pagemode;
if      (docURL.indexOf('action=edit') > 0 || docURL.indexOf('action=submit') > 0) pagemode = 'edit';
else if (docURL.indexOf('action=delete') > 0)    pagemode = 'delete';
else if (docURL.indexOf('Spezial:Undelete') > 0) pagemode = 'undelete';
else if (docURL.indexOf('action=history') > 0)   pagemode = 'history';
else if (docURL.indexOf('&diff=') > 0)           pagemode = 'diff';
else if (docURL.indexOf('printable=yes') > 0)    pagemode = 'print';
else                                             pagemode = 'view';

// pagemode = 'undelete';

if ( pagemode == 'edit' ) var sidebarhoehe = 70;
   else var sidebarhoehe = 170;

function importPage(seite)
{ document.write('<SCRIPT SRC="http://de.wikipedia.org/w/index.php?title='+ seite +'&action=raw&ctype=text/javascript"><\/SCRIPT>');
}

/* ============================================================================================== */
/* ================== Hier beginnt erstmal das Sammeln in der Variable: ========================= */
/* ============================================================================================== */
var XXX = '';

// ======== import cmbMeineSeiten ===========
// importiert eine Combobox mit Seiten, die speziell für mich von Interesse sind
// importPage('Benutzer:BLueFiSH.as/JS/cmbMeineSeiten');
// addcmbMeineSeiten();

XXX+='<form onMouseup="openpage(selbox.value);">';
XXX+='<select name="selbox" size="1" style="width:150px;font-size:9px;">';
XXX+='<option value"">Rei-artur</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/User:'+benutzername+'">_Principal</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/User:'+benutzername+'/testes">__testes</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/User:'+benutzername+'/testes2">__testes2</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/User:'+benutzername+'/testes3">__testes3</option>';
XXX+='<option value="http://pt.wikipedia.org/w/index.php?title=User:'+benutzername+'/msg/%2B15&action=edit">_+15</option>';
XXX+='<option value="http://pt.wikipedia.org/w/index.php?title=User:'+benutzername+'/monobook.js&action=edit">_monobook.JS</option>';
XXX+='<option value="http://pt.wikipedia.org/w/index.php?title=User:'+benutzername+'/monobook.css&action=edit">_monobook.CSS</option>';
XXX+='<option value="http://pt.wikipedia.org/w/index.php?title=User%3AAllpages&from='+benutzername+'&namespace=2">_AllMyPages</option>';
XXX+='<option value="http://commons.wikimedia.org/wiki/Special:Watchlist">_Commons-Vigiados</option>';
XXX+='<option value="http://en.wikipedia.org/wiki/Special:Watchlist">_EN:WP-Vigiados</option>';
XXX+='</select></form>';

XXX+='<form onMouseup="openpage(selbox.value);">';
XXX+='<select name="selbox" size="1" style="width:150px;font-size:9px;">';
XXX+='<option value"">Wikipedia/Especiais</option>';
XXX+='<option value"http://pt.wikipedia.org/wiki/Wikipedia:Esplanada">_Esplanada</option>';
XXX+='<option value"http://pt.wikipedia.org/wiki/Categoria:Itens_candidatos_%C3%A0_elimina%C3%A7%C3%A3o">_Verificar e apagar</option>';
XXX+='<option value"http://pt.wikipedia.org/wiki/Categoria:P%C3%A1ginas_para_elimina%C3%A7%C3%A3o_r%C3%A1pida">_eliminação rápida</option>';

XXX+='<option value"" disabled="disabled">---------</option>';

XXX+='<option value"http://pt.wikipedia.org/wiki/Especial:Specialpages">Especiais</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Newimages">_Newimages</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Blockip">_Blockip</option>';
XXX+='<option value="http://pt.wikipedia.org/w/index.php?title=Especial:Ipblocklist&action=unblock">_Ipblocklist</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Ipblocklist">_Ipblocklist</option>';
XXX+='<option value"" disabled="disabled"></option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Log">_Log</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Log/block">__Log/block</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Log/delete">__Log/delete</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Log/protect">__Log/protect</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Log/upload">__Log/upload</option>';
XXX+='<option value"" disabled="disabled">---------</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Allpages">_Allpages</option>';
XXX+='<option value="http://pt.wikipedia.org/wiki/Especial:Newpages">_Newpages</option>';
XXX+='</select></form>';

if ( pagemode == 'edit' )
{
XXX+='<a href="#" onclick="insertTags(\'\{\{\subst:Usuário:Rei-artur/ass}}\ \~\~\~\~\~\',\'\',\'\');">ASS</a> ';
XXX+='<a href="#" onclick="document.editform.wpSummary.value=\'\+CAT\';insertTags(\'\[\[\Categoria:\',\']]\',\'\',\'\');">CAT</a> ';
XXX+='<a href="#" onclick="document.editform.wpSummary.value=\'\#REDIRECT\';insertTags(\'\#\REDIRECT[[\',\']]\',\'\',\'\');">RED</a> ';

XXX+='<form >';
XXX+='<select name="selbox" size="1" style="width:150px;font-size:9px;">';
XXX+='<option value"">Marcas/Predef</option>';
XXX+='<option href="#" onclick="insertTags(\'\<\!-- \',\' --\>\',\'\');">_comentário</option>';
XXX+='<option href="#" onclick="insertTags(\'\<\noinclude>\',\'</noinclude\>\',\'\');">_noinclude</option>';
XXX+='<option href="#" onclick="insertTags(\'\<\includeonly>\',\'</includeonly\>\',\'\');">_includeonly</option>';
XXX+='<option value"" disabled="disabled">---------</option>';

XXX+='</select></form>';

}

if ( pagemode == 'delete' )
{
XXX+='<a href="#" onclick="deleteNowCommons();">deleteNowCommons</a><br />';
}

if ( IamAdmin && pagemode == 'undelete' )
{
XXX+='<a href="#" onclick="checkAllDeletedVersions();">checkVersions</a><br />';
}

/* ====================================================================================================== */
/* =========== An dieser Stelle wird der Variableninhalt in die Seite mit eingebaut: ==================== */
  if (pagemode != 'print')
  {
    if ( pagemode == 'edit' )
     { document.write('<div id="myquickbar" style="font-size:10px; padding:1px; position:fixed; top:0px; left:0px; z-index:10; background-color:#FFFFFF; width:150px; height:'+sidebarhoehe+'px">' + XXX + '</div>')
     }
    else
    { document.write('<div id="myquickbar" style="font-size:10px; padding:1px; position:fixed; top:0px; left:0px; z-index:10; background-color:#FFFFFF; width:150px; height:'+sidebarhoehe+'px">' + XXX + '</div>')
    }
  }
/* ====================================================================================================== */


/* ====================================================================================================== */
/* ==== jetzt folgen einige Funktionen, die oben aufgerufen werden ====================================== */
/* ====================================================================================================== */
function openpage(seite)
{ if (seite!="") window.open(seite);
}

function brboth()
{ insertTags('<br style="clear:both" />','','');
}

function markascitation()
{ insertTags('„\'\'','\'\'“','');
}

// Kopf der "Formatvorlage Stadt" einfügen
function insertFVShead()
{ insertTags('{| cellpadding=\"2\" style=\"float: right; width: 307px; background: #e3e3e3; margin-left: 1em; border-spacing: 1px;\"','','');
  document.editform.wpSummary.value += '[[Wikipedia:Formatvorlage Stadt|aktueller Tabellenkopf]], ';
}

function IMDBVorlage()
{ var lemma = document.getElementsByTagName('h1')[0].firstChild.data;
  lemma = lemma.substr(15, lemma.length - 15);
  document.editform.wpSummary.value += '+[[Vorlage:IMDb Titel]], ';
  insertTags('* \{\{IMDb Titel|','|'+lemma+'\}\}','');
}

function editcount()
{ var bname = prompt('Benutzername auf de', benutzername);
  bname = bname.replace(" ", "+");
  window.open("http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?dbname=dewiki_p&user="+bname);
  // http://tools.wikimedia.de/~kate/cgi-bin/count_edits?dbname=dewiki_p&user=
}

// einfache Suchen&Ersetzen-Funktion
function SingleReplace()
{ var suchennach = new RegExp( prompt('Suchen nach (Sonderzeichen evtl. escapen, da per RegExp)', ''), 'g' );
  var ersetzendurch = prompt('Ersetzen durch', '');
  var tbvalue = document.editform.wpTextbox1.value;
  tbvalue = tbvalue.replace(suchennach, ersetzendurch);
  document.editform.wpTextbox1.value = tbvalue;
}

// Ersetzungen für WP:GEO
function ReplaceGEO()
{ var tbvalue = document.editform.wpTextbox1.value;

  //tbvalue = tbvalue.replace(/Koordinate Artikel\|/gi, "Koordinate Text Artikel|");
  document.editform.wpTextbox1.value = tbvalue;
  document.editform.wpMinoredit.checked = true;
  document.editform.wpSummary.value += 'koord angepasst, ';
  document.editform.wpSummary.focus();
}

function ReplaceQuoteSigns()
{ var txtbox = document.editform.wpTextbox1;
  if (typeof txtbox.selectionStart != 'undefined' && txtbox.selectionEnd > txtbox.selectionStart)
  { var tbselvalue = txtbox.value.substring(txtbox.selectionStart, txtbox.selectionEnd);
    var tbchangevalue = tbselvalue.replace(/ /g, " ");
 
    tbchangevalue = tbchangevalue.replace(/ \'\'\"/g, " „''");
    tbchangevalue = tbchangevalue.replace(/ \"\'\'/g, " „''");
    tbchangevalue = tbchangevalue.replace(/ \"/g, " „");
    tbchangevalue = tbchangevalue.replace(/\(\"/g, "(„");

    tbchangevalue = tbchangevalue.replace(/\"\'\'/g, "''“");
    tbchangevalue = tbchangevalue.replace(/\'\'\"/g, "''“");
    tbchangevalue = tbchangevalue.replace(/\"/g, "“");
    //tbchangevalue = tbchangevalue.replace(/(\w.)\"/g, "$1“");
    tbchangevalue = tbchangevalue.replace(/ „ /g, " „");
    tbchangevalue = tbchangevalue.replace(/ “ /g, "“ ");

    document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(tbselvalue, tbchangevalue);
  }
}

function deleteNowCommons()
{ var wo = prompt('Bildnamen mit Image: eingeben!','');
  document.getElementById("wpReason").value = 'NowCommons: [[' + wo + ']]';
}

function checkAllDeletedVersions()
{ window.scrollTo(0,50000);
  for (var i=3; i<=10000; i++) document.getElementsByTagName("input")[i].checked=true;
}

function isNumber(inputStr)
{ for (var i = 0; i < inputStr.length; i++)
  { var oneChar = inputStr.substring(i, i + 1)
    if (oneChar < '0' || oneChar > '9') return false;
  }
  return true;
}

/* ============================================================================================== */
/* ============================================================================================== */


/* ============================================================================================== */
/* "LAeintragen" größtenteils von mir, um mit möglichst wenig Aufwand Löschanträge stellen zu können */
/* Mein Dank geht an Littl, durch sie wird der LA gleich bei den Löschkandidatn eingetragen */

var subjp = 'subj=';
var textp = 'txt=';

function LAeintragen()
{ // Artikelnamen ermitteln
  var lemma = document.getElementsByTagName('h1')[0].firstChild.data;
  lemma = lemma.substr(15, lemma.length - 15)
 
  var grund = prompt('LA-Grund:','');
  grund = grund + ' --\~\~\~\~';
 
  // Vorlage in Artikel eintragen
  document.editform.wpTextbox1.value='\{\{subst:Löschantrag\}\}\n\n'+grund+' \n\n\-\-\-\-\n\n\n' + document.editform.wpTextbox1.value;
  document.editform.wpSummary.value='Löschantrag';
  document.editform.wpWatchthis.checked=true;

  // Datums-String zusammensatzen
  var jetzt = new Date();
  var Tag = jetzt.getDate();
  var Jahresmonat = jetzt.getMonth();
  var Monat = new Array("Januar", "Februar", "M&auml;rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
  var Jahr = jetzt.getYear();
  if (Jahr < 999)  Jahr += 1900;
  var wpdatum = Tag + '._' + Monat[Jahresmonat] + '_' + Jahr;

  // Öffnen der LA-Seite, gleich zum Eintragen des LA, Texte werden als Paraneter übergeben
  var uri = 'http://de.wikipedia.org/w/index.php?title=Wikipedia:Löschkandidaten/' + wpdatum + '&action=edit&section=new'
  uri = uri + "&" + subjp + "[[" + lemma + "]]&" + textp + grund;
 
  window.open(encodeURI(uri));

  // Rest des Skripts folgt anschließend
}

// "funktion loeschkandidat" (von Littl) - Entnimmt aus der URI die Parameter und fügt sie in die Textfelder ein.
// Wird automatisch aufgerufen wenn man eine Löschkandidatenseite aufruft
function loeschkandidat() {
  if ( docURL.indexOf (subjp) > 0)  // sind wir auf der richtigen Seite?
  { docURL = decodeURI(docURL);
    var params = docURL.split ('&');
    for (var i=1; i<params.length; i++) // Parameter suchen
    { if (params[i].substring(0,subjp.length) == subjp)
      { var subj = params[i].substring(subjp.length, 9999);
        document.editform.wpSummary.value = subj; // Lemma eintragen
      }
      if (params[i].substring(0, textp.length) == textp)
      { var text = params[i].substring(textp.length, 9999);
        document.editform.wpTextbox1.value = text; // LA-Grund eintragen
        document.editform.wpWatchthis.checked=true;
      }
    }
  }  
}


// verändert einige Beschriftungen an der MediaWiki-Oberfläche.
function changeBeschriftungen()
{
  // Abmelden heißt jetzt X bei mir, damit man nicht so leicht aus Versehen drauf drücken kann.
  document.getElementById("pt-logout").getElementsByTagName("a")[0].innerHTML = "<b>X</b>";

  // Beschriftungen bei den Artikellinks verändern
  if (document.getElementById("ca-edit"))
     document.getElementById("ca-edit").getElementsByTagName("a")[0].innerHTML = "Bearbeiten";
  if (document.getElementById("ca-history"))
     document.getElementById("ca-history").getElementsByTagName("a")[0].innerHTML = "Versionen";

  // Beschriftungen in der Sidebar verändern
  if (document.getElementById("t-whatlinkshere"))
     document.getElementById("t-whatlinkshere").getElementsByTagName("a")[0].innerHTML="Links a.d. Seite";
  if (document.getElementById("t-recentchangeslinked"))
     document.getElementById("t-recentchangeslinked").getElementsByTagName("a")[0].innerHTML="Verlinkte Seiten";
  if (document.getElementById("t-blockip"))
     document.getElementById("t-blockip").getElementsByTagName("a")[0].innerHTML="<b>User_blocken</b>";
  if (document.getElementById("t-emailuser"))
     document.getElementById("t-emailuser").getElementsByTagName("a")[0].innerHTML="E-Mail_senden";
  if (document.getElementById("p-lang"))
     document.getElementById("p-lang").getElementsByTagName("h5")[0].innerHTML="Interwiki";

  /* macht den Freigeben-Button mit rotem Rahmen. (im CSS geht das aus unbekannten gründen nicht) */
/*  if (document.getElementById("ca-unprotect"))
  {  document.getElementById("ca-unprotect").style.borderColor = "#FF0000";
     document.getElementById("ca-unprotect").style.borderWidth = "4px";
  }
*/
}


/* ============================================================================================== */
/* ============== importieren von ausgelagerten Funktionen ====================================== */
/* ============================================================================================== */

// ======== import function addActionLinks() ===========
// fügt jedem Link einen ActionLink hinzu, ganz praktisch z.B. für zum Abarbeiten von Listen
importPage('Benutzer:BLueFiSH.as/JS/addActionLinks');

// ======== import TabsHinzufügen-Funktionen ===========
// fügen ein paar hilfreiche Tabs in die Tableiste über einer Seite hinzu
importPage('Benutzer:BLueFiSH.as/JS/addtabs');

// ======== import APPERs Rechtschreibprüfung ===========
// Minimale Rechtschreibprüfung von APPER - siehe auch in [[Benutzer:APPER/RP]]
if (typeof DontAutorunRP == 'undefined') var DontAutorunRP = true;
importPage('Benutzer:APPER/RP/js');

// ======== import function AddEditLinkToOldVersionLinks ===========
// fügt neben Links zu älteren Versionen einen Bearbeiten-Link hinzu (komplett von Berlin-Jurist)
if ( pagemode != 'edit' ) { importPage('Benutzer:BLueFiSH.as/JS/AddEditLinkToOldVersionLinks'); }

// ======== import function TypoCorrection() ===========
// macht Rechtschreibkorrekturen -  FUNKTION !!! NICHT !!! OHNE NACHKONTROLLE ÜBER "Änderungen zeigen" AUSFÜHREN !!!
if ( pagemode == 'edit' ) { importPage('Benutzer:BLueFiSH.as/JS/typokorr'); }

// ======== import function ReplaceKoordinatenAusgabe() ===========
// Macht den Ausgabetext der Koordinaten entsprechend der gängigen Form schick
if ( pagemode == 'edit' ) { importPage('Benutzer:BLueFiSH.as/JS/ReplaceKoordAusgabe'); }

// ======== import function ReplaceMarkup() ===========
// macht allgemeine Ersetzungen  -  FUNKTION !!! NICHT !!! OHNE NACHKONTROLLE ÜBER "Änderungen zeigen" AUSFÜHREN !!!
if ( pagemode == 'edit' ) { importPage('Benutzer:BLueFiSH.as/JS/markup'); }

/* nachfolgend eine Testarea für Markup-Funktionen: einfach ignorieren */
/*
function ReplaceMarkup()
{ var tbvalue = document.editform.wpTextbox1.value;

  document.editform.wpTextbox1.value = tbvalue;
}
*/

// ======== Navigation popups ===========
// http://en.wikipedia.org/wiki/Wikipedia:Tools/Navigation_popups
/* entfernt weil es mit FF 0.8 einfach nervt, wenn beim Extreme-Tabbed-Browsing der Browser ständig hängt =) */

/* ============================================================================================== */
/* ============== function Init - die Schaltzentrale ============================================ */
/* ============================================================================================== */
function Init()
{ addTabs();

  if ( pagemode == 'edit' && (docURL.indexOf('schkandidaten') > 0)) loeschkandidat();
  if ( pagemode == 'delete' && (docURL.indexOf('title=Bild:') > 0) && (document.getElementById("wpReason").value == '') )
     { document.getElementById("wpReason").value = 'NowCommons - gleicher Name'; document.getElementById("wpReason").focus(); }
  if ( pagemode == 'delete' && (docURL.indexOf('title=Benutzer_Diskussion:') > 0) )
     { document.getElementById("wpReason").value = 'veraltete IP-Diskussionsseite'; document.getElementById("wpReason").focus(); }
  if ( docURL.indexOf('Spezial:Blockip') > 0)
     { document.getElementById("wpBlockReason").value = 'Vandalismus'; document.getElementById("wpBlockReason").focus(); }

  // originale Sidebar auf passende Höhe runterschieben
  document.getElementById("column-one").style.paddingTop = 10 + sidebarhoehe + "px";
 
  changeBeschriftungen();

}
/* ============================================================================================== */

if (pagemode != 'print') aOnloadFunctions[aOnloadFunctions.length] = Init;

//-->