Benutzer:C-3PO/HotCat.js

Aus Jedipedia

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
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
/*--------------------------------------------------------*\
||                    --- HotCat ---                      ||
|| Vereinfachte Kategorie- und Interwiki-Link-Änderungen, ||
|| ohne die Seite beabeiten zu müssen. Basierend auf      ||
|| https://commons.wikimedia.org/wiki/Help:Gadget-HotCat   ||
||                                                        ||
|| Für eine Liste aller Objekte, siehe                    ||
|| https://www.jedipedia.net/wiki/Hilfe:HotCat/Referenz    ||
\*--------------------------------------------------------*/

//weitere Aufgaben: Hidden-Cats, Jediquote/Bilder-Vorlage, Google-Suche ohne Zahlen (123) ...

var hotcat = {};
hotcat.settings = {};

hotcat.settings.category_blacklist = ["Baustellen", "UNDER CONSTRUCTION", "Bilder mit Qualitätsmängeln", "Bilder ohne Quellen", "Veraltete Bilderversionen", "Blockierte Seiten", "Editwar", "Keine Quellen", "Löschkandidaten", "Schnelllöschkandidaten", "Nacharbeit", "Seitenschutzkandidaten", "Sperrkandidaten", "Spoilerwarnung", "Ungenügende Quellen", "Unvollständige Artikel", "Verschieben", "Versionsbereinigungen", "Begriffsklärungsseiten", "Exzellente Artikel", "Ehemals Exzellente Artikel", "Lesenswerte Artikel", "Ehemals Lesenswerte Artikel", "Nicht-Kanonische Artikel", "Fan-Fiction", "Stubs", "Droiden-Stubs", "Ereignis-Stubs", "Organisationen-Stubs", "Personen-Stubs", "Planeten-Stubs", "Raumschiff-Stubs", "Reale Personen-Stubs", "Spezies-Stubs"];
hotcat.settings.qs_templates = ["SLA","QM","UV","NA","KQ","UQ","AV","Review","Neuer Stub", "keine Vorlage"];//Qualitätssicherungs-Vorlagen
hotcat.settings.defaultsort = "SORTIERUNG";//lokalisierter Name für DEFAULTSORT
hotcat.settings.biggest_wikis=["en", "es", "ru", "pl", "nl", "ja", "pt", "fi", "it", "cs", "hu", "fr"];//größte andere Star-Wars-Wikis, sortiert nach der Artikelanzahl

//Liste der Wikis in anderen Sprachen: Kürzel, Name der Sprache, akzeptierte Interwiki-Links
hotcat.settings.wikis=[
{id:'af', name:'Afrikaans',                      installed_iws:[     'ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ar', name:'العربية / Arabisch',             installed_iws:['af',     'bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'bg', name:'Български / Bulgarisch',         installed_iws:['af','ar',     'ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ca', name:'Català / Katalanisch',           installed_iws:['af','ar','bg',     'chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'chr', name:'Cherokee',                      installed_iws:['eu','fo','gv','kl']},
{id:'cs', name:'Cesky / Tschechisch',            installed_iws:['af','ar','bg','ca','chr',     'cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'cu', name:'Altkirchenslawisch',             installed_iws:[]},
{id:'da', name:'Dansk / Dänisch',                installed_iws:['af','ar','bg','ca','chr','cs','cu',     'de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'de', name:'Deutsch / Deutsch',              installed_iws:['af','ar','bg','ca','chr','cs','cu','da',     'el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gv','gsw','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'el', name:'Ελληνικά / Griechisch',          installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de',     'en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'en', name:'English / Englisch',             installed_iws:[          'bg',           'cs',     'da','de','el',          'es',                    'fr',                                    'hr','hu','id',     'it','ja','ka',     'ko','la',                    'nl',     'no',     'pl','pt','ro','ru',           'sl',           'sr','sv',     'tr','uk'                ]},
{id:'eo', name:'Esperanto',                      installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en',     'es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'es', name:'Español / Spanisch',             installed_iws:[          'bg',           'cs',     'da','de','el','en',                              'fr',                                    'hr','hu','id',     'it','ja','ka',     'ko','la',                    'nl',     'no',     'pl','pt','ro','ru',           'sl',           'sr','sv',     'tr','uk'                ]},
{id:'eu', name:'Euskara / Baskisch',             installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es',     'fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'fa', name:'فارسی / Persisch',               installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu',     'fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'fi', name:'Suomi / Finnisch',               installed_iws:[          'bg','ca',      'cs',     'da','de','el','en',     'es',     'fa',          'fr','fy',                               'hr','hu','id',     'it','ja','ka',     'ko','la',                    'nl','nn','no',     'pl','pt','ro','ru','sco','sk','sl',           'sr','sv',     'tr','uk',           'zh']},
{id:'fo', name:'Färöisch',                       installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi',     'fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'fr', name:'Français / Französisch',         installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo',     'fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'fy', name:'Friesisch',                      installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr',     'ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ga', name:'Gallisch',                       installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy',     'gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'gd', name:'Schottisch-gälisch',             installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga',     'gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'gl', name:'Galego / Galicisch',             installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd',     'gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'gsw', name:'Alemannisch',                   installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl',      'gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'gv', name:'Manx-Gälisch',                   installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw',     'he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'he', name:'עברית / Hebräisch',              installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv',     'hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'hr', name:'Hrvatski / Kroatisch',           installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he',     'hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'hu', name:'Magyar / Ungarisch',             installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr',     'id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'id', name:'Bahasa Indonesia / Indonesisch', installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu',     'is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'is', name:'Isländisch',                     installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id',     'it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'it', name:'Italiano / Italienisch',         installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is',     'ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ja', name:'日本語 / Japanisch',               installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it',     'ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ka', name:'Georgisch',                      installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja',     'kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'kl', name:'Gronländisch',                   installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka',     'ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ko', name:'한국어 / Koreanisch',               installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl',     'la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'la', name:'Latina / Latein',                installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko',     'lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'lb', name:'Luxemburgisch',                  installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la',     'mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'mi', name:'Māori',                          installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb',     'mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'mk', name:'Македонски / Mazedonisch',       installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi',     'mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'mn', name:'Монгол / Mongolisch',            installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk',     'nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'nl', name:'Nederlands / Niederländisch',    installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn',     'nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'nn', name:'Nynorsk',                        installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl',     'no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'no', name:'Norsk (bokmål] / Norwegisch',    installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn',     'oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'oc', name:'Occitan / Okzitanisch',          installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no',     'pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'pl', name:'Polski / Polnisch',              installed_iws:[                          'cs',          'de',     'en',     'es',          'fi',     'fr',                                         'hu',          'it','ja',          'ko',                         'nl',                    'pt',     'ru'                                                                    ]},
{id:'pt', name:'Português / Portugiesisch',      installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl',     'ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ro', name:'Româna / Rumänisch',             installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt',     'ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'ru', name:'Русский / Russisch',             installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro',     'sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'sco', name:'Scots',                         installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru',      'sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'sk', name:'Slovenčina / Slowakisch',        installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco',     'sl','sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'sl', name:'Slovenšcina / Slowenisch',       installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk',     'sli','sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'sli', name:'Schlesisch',                    installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl',      'sq','sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'sq', name:'Shqip / Albanisch',              installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli',     'sr','sv','th','tr','uk','vi','vmf','zh']},
{id:'sr', name:'Српски / Srpski / Serbisch',     installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq',     'sv','th','tr','uk','vi','vmf','zh']},
{id:'sv', name:'Svenska / Schwedisch',           installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr',     'th','tr','uk','vi','vmf','zh']},
{id:'th', name:'Thailändisch',                   installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv',     'tr','uk','vi','vmf','zh']},
{id:'tr', name:'Türkçe / Türkisch',              installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th',     'uk','vi','vmf','zh']},
{id:'uk', name:'Українська / Ukrainisch',        installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr',     'vi','vmf','zh']},
{id:'vi', name:'Tiếng Việt / Vietnamesisch',     installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk',     'vmf','zh']},
{id:'vmf', name:'Fränkisch',                     installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi',      'zh']},
{id:'zh', name:'Chinesisch',                     installed_iws:['af','ar','bg','ca','chr','cs','cu','da','de','el','en','eo','es','eu','fa','fi','fo','fr','fy','ga','gd','gl','gsw','gv','he','hr','hu','id','is','it','ja','ka','kl','ko','la','lb','mi','mk','mn','nl','nn','no','oc','pl','pt','ro','ru','sco','sk','sl','sli','sq','sr','sv','th','tr','uk','vi','vmf'     ]},
];
hotcat.settings.interwiki_codes={};
for (var iloop=0; iloop<hotcat.settings.wikis.length; iloop++) {
	hotcat.settings.interwiki_codes[hotcat.settings.wikis[iloop].id]=iloop;
}
hotcat.settings.interwiki_codes_pl={"cs": 1, "de": 2, "en": 3, "es": 4, "fr": 5, "ko": 6, "it": 7, "hu": 8, "nl": 9, "ja": 10, "pt": 11, "ru": 12, "fi": 13};
hotcat.getWikiById = function(tmpId) {
	return hotcat.settings.wikis[hotcat.settings.interwiki_codes[tmpId]];
}

hotcat.settings.api_url = "/w/api.php";
hotcat.settings.linkcolor = "#0645AD";//Farbe von blauen Links
hotcat.initrequest = null;

//Initialisiere Variablen
hotcat.curpage = mw.config.get("wgPageName");//Seitentitel mit Namensraum und Unterstrichen
hotcat.exzstatus = false;//Ob der deutsche Artikel exzellent ist
hotcat.lwastatus = false;//Ob der deutsche Artikel lesenswert ist
hotcat.defaultsort = "";
hotcat.categories = {};
hotcat.categories.array = [];
hotcat.categories.recently_removed = [];
hotcat.categories.suggestions = {};
hotcat.interwikis = {};
hotcat.interwikis.array = [];
hotcat.interwikis.loadstatus = 0;
hotcat.submit_counter = 0;
hotcat.ui = {}

hotcat.makeempty = function(elementid) {
	var ele = document.getElementById(elementid);
	if (!ele) return;
	while (ele.firstChild) ele.removeChild(ele.firstChild);
}

//Fügt den HotCat-Initialisierungslink in die Kategorieleiste ein, wenn die Seite geladen wird
hotcat.addlink = function () {
	var hctmp = {};
	
	//Wenn MediaWiki nicht gefunden werden kann
	if (!mw || !mw.config) return;
	
	//Prüfen, ob HotCat aktiviert werden soll: Abbruch, wenn
	//nur Administratoren die Seite bearbeiten dürfen und man selber keiner ist
	hctmp.usergrps = mw.config.get("wgUserGroups");
	if (hctmp.usergrps && hctmp.usergrps.length) {
		hotcat.settings.is_sysop=false;
		for (var i=0; i<hctmp.usergrps.length; i++) {
			if (hctmp.usergrps[i]=="sysop") {hotcat.settings.is_sysop=true;break;}
		}
		if (hotcat.settings.is_sysop==false) {
			hctmp.restrictedit = mw.config.get("wgRestrictionEdit");
			if (hctmp.restrictedit && hctmp.restrictedit.length) {
				for (var i=0; i<hctmp.restrictedit.length; i++) {if (hctmp.restrictedit[i]=="sysop") return;}
			}
		}
	}
	//oder wenn man die Seite bearbeitet oder im Vorschau-Modus ist
	hctmp.action = mw.config.get("wgAction");
	if (hctmp.action=="edit" || hctmp.action=="submit" || hctmp.action=="history" || hctmp.action=="delete" || hctmp.action=="protect" || hctmp.action=="unprotect" || hctmp.action=="watch" || hctmp.action=="unwatch" || mw.config.get("wgCanonicalNamespace")=="Special") return;
	//oder wenn man im Versionsvergleich ist
	hctmp.tableobj=document.getElementsByTagName("table");
	for (var i=0; i<hctmp.tableobj.length; i++) {if (hctmp.tableobj[i].className.indexOf("diff")!=-1) return;}
	//Wenn man eine alte Version betrachtet
	if (document.URL.indexOf("oldid=") != -1) return;
	//HotCat ist nur im Artikel-, Jedipedia-, Bild-, Hilfe- und Kategorienamensraum erlaubt (in den anderen Namensräumen werden Kategorien meistens über Vorlagen eingefügt oder sind gar nicht nötig)
	hctmp.namespace = mw.config.get("wgNamespaceNumber");
	if (hctmp.namespace!=0 && hctmp.namespace!=4 && hctmp.namespace!=6 && hctmp.namespace!=12 && hctmp.namespace!=14 ) return;
	//oder wenn die Seite nicht existiert
	if (mw.config.get("wgArticleId")==0) return;
	
	//Wenn die Seite noch keine Kategorien besitzt, muss die Kategorie-Box ergänzt werden
	if (mw.config.get("wgCategories").length==0) {
		if (document.getElementById("catlinks"))
			document.getElementById("catlinks").parentNode.removeChild(document.getElementById("catlinks"));
		
		hctmp.emptycatlinks = {};
		hctmp.emptycatlinks.box = document.createElement("div");
		hctmp.emptycatlinks.box.id = 'catlinks';
		hctmp.emptycatlinks.box.className = 'catlinks';
		
		hctmp.emptycatlinks.normal_box = document.createElement("div");
		hctmp.emptycatlinks.normal_box.id = 'mw-normal-catlinks';
		
		hctmp.emptycatlinks.catlink = document.createElement("a");
		hctmp.emptycatlinks.catlink.href= "/wiki/Spezial:Categories";
		hctmp.emptycatlinks.catlink.title= 'Spezial:Categories';
		hctmp.emptycatlinks.catlink.appendChild(document.createTextNode("Kategorien"));
		
		hctmp.emptycatlinks.text_empty = document.createElement("span");
		hctmp.emptycatlinks.text_empty.style.fontStyle = "italic";	
		hctmp.emptycatlinks.text_empty.appendChild(document.createTextNode("leer"));
		
		hctmp.emptycatlinks.normal_box.appendChild(hctmp.emptycatlinks.catlink);
		hctmp.emptycatlinks.normal_box.appendChild(document.createTextNode(': '));
		hctmp.emptycatlinks.normal_box.appendChild(hctmp.emptycatlinks.text_empty);
		hctmp.emptycatlinks.box.appendChild(hctmp.emptycatlinks.normal_box);
		
		document.getElementById("bodyContent").appendChild(hctmp.emptycatlinks.box);
	}

	hctmp.initlink = document.createElement("div");
	hctmp.initlink.id = "hotcat_initlink";
	hctmp.initlink.addEventListener('click', hotcat.startinit);
	hctmp.initlink.appendChild(document.createTextNode('HotCat'));
	document.getElementById("catlinks").appendChild(hctmp.initlink);
}

//Falls der Init-Link geklickt wurde: Starte eine Anfrage nach den Kategorien und InterWiki-Links
hotcat.startinit = function () {
	hotcat.initrequest = getXmlHttpRequestObject();
	if (hotcat.initrequest.readyState == 4 || hotcat.initrequest.readyState == 0) {
		var hctmp_loader_icon=document.createElement("img");
		hctmp_loader_icon.src='/w/images/d/de/Ajax-loader.gif';
		hctmp_loader_icon.alt='HotCat wird geladen...';
		document.getElementById("hotcat_initlink").appendChild(hctmp_loader_icon);
		
		hotcat.initrequest.open("GET", "/scripts/hotcat.php?mode=inithotcat&title="+encodeURIComponent(hotcat.curpage).replace(/'/g,"%27").replace(/\./g,"%2E")+'&nocache='+mw.config.get("wgCurRevisionId"), true);
		hotcat.initrequest.onreadystatechange = hotcat.init;
		hotcat.initrequest.send(null);
	} else {
		alert("Dein Browser unterstützt keine XMLHttpRequests. Wenn du HotCat benutzen möchtest, aktualisiere deinen Browser bitte auf die neueste Version.");
	}
}

//Antwort von startinit erhalten: Initialisierung von HotCat
hotcat.init = function () {
	if (hotcat.initrequest.readyState != 4) return;//Breche ab, wenn noch keine Antwort
	
	var hctmp = {};
	hctmp.e = {}; //Elemente

	document.getElementById("hotcat_initlink").removeChild(document.getElementById("hotcat_initlink").firstChild);
	hctmp.response_lines = hotcat.initrequest.responseText.replace(/\r/g, "").split("\n");
	
	//---- AJAX-AUSWERTUNG ---- //
	
	for (var i=0; i<hctmp.response_lines.length; i++) {
		//substring() statt split() für den Fall, dass eine Zeile mehr als ein = Zeichen enthält
		hctmp.response1 = hctmp.response_lines[i].substring(0, hctmp.response_lines[i].indexOf("="));
		hctmp.response2 = hctmp.response_lines[i].substring(hctmp.response_lines[i].indexOf("=")+1);
		if (hctmp.response1=="defaultsort") {
			hotcat.defaultsort = hctmp.response2;
		} else if (hctmp.response1=="categories") {
			hotcat.categories.array = hctmp.response2.split("[");
		} else if (hctmp.response1=="isFA") {
			hotcat.exzstatus=true;
		} else if (hctmp.response1=="isGA") {
			hotcat.lwastatus=true;
		} else if (hotcat.settings.interwiki_codes[hctmp.response1]) {//Falls es ein Sprachcode ist
			hotcat.interwikis.array.push({id:hctmp.response1, title:hctmp.response2, isFA:"false", canedit:false, type:"any", newlinks:[]});
		}
	}
	
	
	hctmp.cat_elements = document.getElementById("catlinks").getElementsByTagName("li");
	hctmp.cat_elements2 = [];
	hctmp.categories = [];
	hotcat.categories.existing=[];//Kategorien, die erstellt wurden
	hotcat.categories.missing=[];//Kategorie, die noch nicht erstellt wurden (Redlink)
	hotcat.categories.template_cats=[];//Kategorien, die über eine Vorlage eingebunden wurden und nicht geändert werden können
	
	for (var i=0; i<hctmp.cat_elements.length; i++) {
		if (hctmp.cat_elements[i].getElementsByTagName("a").length > 0) {
			hctmp.cat_elements2.push(hctmp.cat_elements[i].getElementsByTagName("a")[0]);
			hctmp.categories.push(hctmp.cat_elements[i].getElementsByTagName("a")[0].firstChild.data);
		}
	}
	
	for (var i=0; i<hctmp.cat_elements2.length; i++) {
		if (hctmp.cat_elements2[i].classList) {
			if (!hctmp.cat_elements2[i].classList.contains('new')) {
				hotcat.categories.existing.push(hctmp.categories[i]);
			} else {
				hotcat.categories.missing.push(hctmp.categories[i]);
			}
		} else {//ältere Browser
			if (hctmp.cat_elements2[i].className.match(/new/) >= 0) {
				hotcat.categories.existing.push(hctmp.categories[i]);
			} else {
				hotcat.categories.missing.push(hctmp.categories[i]);
			}
		}
		//Versteckte Kategorien herausfinden
		var iworking=-1;
		for (var j=0; j<hotcat.categories.array.length; j++) {
			if (i<0) iworking=0; else iworking=i;
			hctmp.catname = "";
			if (hotcat.categories.array[j].indexOf("|")!=-1) {
				hctmp.catname = hotcat.categories.array[j].substring(0, hotcat.categories.array[j].indexOf("|"));
			} else {
				hctmp.catname = hotcat.categories.array[j];
			}
			if (hctmp.categories[iworking]==hctmp.catname) {
				hctmp.categories.splice(i, 1);
				if (i > -1) i--;
			}
		}
	}
	for (var i=0; i<hctmp.categories.length; i++) {
		hotcat.categories.template_cats.push(hctmp.categories[i]);
	}
		
	//---- INTERFACE ---- //
	hctmp.e.main = document.createElement("div");
	hctmp.e.main.id='hotcat';
	hctmp.e.main.className="hotcat";
	
	hctmp.e.headline = document.createElement("h2");
	hctmp.e.headline.style.paddingTop = '0';
	hctmp.e.onoff = document.createElement("span");
	hctmp.e.onoff.className='mw-editsection';
	hctmp.e.helplink = document.createElement("a");
	hctmp.e.helplink.href = "/wiki/Jedipedia:HotCat";
	hctmp.e.helplink.target = "_blank";
	hctmp.e.helplink.appendChild(document.createTextNode("HotCat-Hilfe"));
	hctmp.e.closelink = document.createElement("a");
	hctmp.e.closelink.addEventListener('click', hotcat.close);
	hctmp.e.closelink.appendChild(document.createTextNode("Schließen"));
	hctmp.e.onoff.appendChild(hctmp.e.helplink);
	hctmp.e.onoff.appendChild(document.createTextNode(' | '));
	hctmp.e.onoff.appendChild(hctmp.e.closelink);
	hctmp.e.headimage = document.createElement('img');
	hctmp.e.headimage.src = '/w/thumb.php?f=HOTCAT+Logo.png&w=80'
	hctmp.e.headimage.alt="Eine rote Katze läuft zwischen den Worten HOT und CAT.";
	hctmp.e.headimage.title="HOT CAT";
	hctmp.e.headline.appendChild(hctmp.e.onoff);
	hctmp.e.headline.appendChild(hctmp.e.headimage);
	
	hctmp.e.categoryblock = document.createElement('div');
	hctmp.e.categoryblock.id = 'hc_categoryblock';
	//Kategorien
	hctmp.e.catheadline = document.createElement('h3');
	hctmp.e.catheadline.appendChild(document.createTextNode('Kategorien'));
	
	hctmp.e.sort_label = document.createElement('label');
	hctmp.e.sort_label.htmlFor = 'defaultsort';
	hctmp.e.sort_label.appendChild(document.createTextNode('{{' + hotcat.settings.defaultsort + ':'));
	hctmp.e.sort_input = document.createElement('input');
	hctmp.e.sort_input.id = 'defaultsort';
	hctmp.e.sort_input.type = 'text';
	hctmp.e.sort_input.value = hotcat.defaultsort;
	hctmp.e.sort_input.placeholder = 'Beispiel: „Anakin Skywalker“ wird als „Skywalker, Anakin“ einsortiert.';
	hctmp.e.sort_input.addEventListener('focus',
		function defaultsort_focus() {
			if (document.getElementById("defaultsort").value=="") { 
				var title = mw.config.get("wgTitle");
				if (title.search(/ (von|um|auf|in|nach|beim) /)!=-1) {
					if (title.substring(0, title.indexOf(" "+RegExp.$1+" ")).search(/ /)!=-1) {
						document.getElementById("defaultsort").value=title.substring(title.indexOf(" "+RegExp.$1+" ")+RegExp.$1.length+2) + ", " + title.substring(0, title.lastIndexOf(" "));
					} else {
						document.getElementById("defaultsort").value=title.substring(title.indexOf(" "+RegExp.$1+" ")+RegExp.$1.length+2) + ", " + title.substring(0, title.indexOf(" "+RegExp.$1+" ")) + " "+RegExp.$1;
					}
				} else if (title.substring(0, 4)=="The ") {
					document.getElementById("defaultsort").value=title.substring(4)+", The";
				} else if (title.search(/ /)!= -1) {
					document.getElementById("defaultsort").value=title.substring(title.lastIndexOf(" ")+1) + ", " + title.substring(0, title.lastIndexOf(" "));
				} else {
					document.getElementById("defaultsort").value=title;
				}
				window.setTimeout('document.getElementById("defaultsort").focus();document.getElementById("defaultsort").select();',50);
			}
		});
	hctmp.e.sort_span = document.createElement('span');
	hctmp.e.sort_span.appendChild(document.createTextNode('}}'));
	
	hctmp.e.cats_label = document.createElement('label');
	hctmp.e.cats_label.htmlFor = 'createcatname';
	hctmp.e.cats_label.appendChild(document.createTextNode('Kategorie ergänzen:'));
	hctmp.e.vorschlagbox = document.createElement('span');
	hctmp.e.vorschlagbox.id = 'vorschlaegecreatecatname';
	hctmp.e.vorschlagbox.style.position = 'absolute';
	hctmp.e.vorschlagbox.style.left = '160px';
	hctmp.e.vorschlagbox.style.width = '300px';
	hctmp.e.vorschlagbox.style.height = '100px';
	hctmp.e.vorschlagbox.style.marginTop = '-112px';
	hctmp.e.vorschlagbox.style.padding = '5px';
	hctmp.e.vorschlagbox.style.overflow = 'auto';
	hctmp.e.vorschlagbox.style.border = '1px solid #aaa';
	hctmp.e.vorschlagbox.style.backgroundColor = '#f9f9f9';
	hctmp.e.vorschlagbox.style.display = 'none';
	hctmp.e.vorschlagbox.appendChild(document.createElement('b').appendChild(document.createTextNode('Vorschläge:')));
	hctmp.e.vorschlagbox.addEventListener('click', function f() { hotcat.categories.suggestions.openbox('vorschlaegecreatecatname'); } );
	hctmp.e.cats_input = document.createElement('input');
	hctmp.e.cats_input.id = 'createcatname';
	hctmp.e.cats_input.type = 'text';
	hctmp.e.cats_input.addEventListener('keyup',function f() { hotcat_keyup('createcatname'); });
	hctmp.e.cats_input.addEventListener('focus',function f() { hotcat.categories.suggestions.openbox('vorschlaegecreatecatname'); });
	hctmp.e.cats_input.addEventListener('blur',function f() { hotcat.categories.suggestions.closebox('vorschlaegecreatecatname'); });
	hctmp.e.cats_button = document.createElement('input');
	hctmp.e.cats_button.addEventListener('click',
		function push_add_category() {
			if (document.getElementById("createcatname").value != "") {
				hotcat.categories.add(document.getElementById("createcatname").value);
				document.getElementById("createcatname").value="";
			}
		} );
	hctmp.e.cats_button.type = 'button';
	hctmp.e.cats_button.value = 'Hinzufügen';
	
	hctmp.e.categorylist = document.createElement("ul");
	hctmp.e.categorylist.className = 'center_column';
	if (hctmp.e.categorylist.classList) {
		hctmp.e.categorylist.classList.add("hc_editlist");
	} else {
		hctmp.e.categorylist.className += " hc_editlist";
	}
	hctmp.e.categorylist.id = 'categorylist';
	
	hctmp.e.recentlyremoved = document.createElement("div");
	hctmp.e.recentlyremoved.className = 'center_column';
	hctmp.e.recentlyremoved.appendChild(document.createTextNode('Vor kurzem gelöschte Kategorien: '));
	hctmp.e.recentlyremovedspan = document.createElement("span");
	hctmp.e.recentlyremovedspan.id = 'hotcat_recentlyremoved';
	hctmp.e.recentlynothingremoved = document.createElement("i");
	hctmp.e.recentlynothingremoved.appendChild(document.createTextNode('nichts'));
	hctmp.e.recentlyremovedspan.appendChild(hctmp.e.recentlynothingremoved);
	hctmp.e.recentlyremoved.appendChild(hctmp.e.recentlyremovedspan);
	
	//Füge alle Elemente zum Kategorie-Block hinzu
	hctmp.e.categoryblock.appendChild(hctmp.e.catheadline);
	
	hctmp.e.cat_p1 = document.createElement('p');
	hctmp.e.cat_p1.appendChild(hctmp.e.sort_label);
	hctmp.e.cat_p1.appendChild(hctmp.e.sort_input);
	hctmp.e.cat_p1.appendChild(hctmp.e.sort_span);
	hctmp.e.categoryblock.appendChild(hctmp.e.cat_p1);
	
	hctmp.e.cat_p2 = document.createElement('p');
	hctmp.e.cat_p2.appendChild(hctmp.e.cats_label);
	hctmp.e.cat_p2.appendChild(hctmp.e.vorschlagbox);
	hctmp.e.cat_p2.appendChild(hctmp.e.cats_input);
	hctmp.e.cat_p2.appendChild(hctmp.e.cats_button);
	hctmp.e.categoryblock.appendChild(hctmp.e.cat_p2);
	
	hctmp.e.categoryblock.appendChild(hctmp.e.categorylist);
	hctmp.e.categoryblock.appendChild(hctmp.e.recentlyremoved);
	
	//Zeige Vorlagen-Kategorien an
	if (hotcat.categories.template_cats.length > 0) {
		hctmp.e.templatecategories1 = document.createElement('div');
		hctmp.e.templatecategories1.id = 'templatecategories1';
		hctmp.e.templatecategories1.className = 'center_column';
		hctmp.e.templatecategories1.appendChild(document.createTextNode('Vorlagen-Kategorien: '));
		for (var i=0; i < hotcat.categories.template_cats.length; i++) {
			if (i != 0) hctmp.e.templatecategories1.appendChild(document.createTextNode(', '));
			hctmp.e.templatecatlink = document.createElement('a');
			hctmp.e.templatecatlink.href = "/wiki/Kategorie:" + hotcat.categories.template_cats[i];
			hctmp.e.templatecatlink.title = "Kategorie:" + hotcat.categories.template_cats[i];
			hctmp.e.templatecatlink.target = "_blank";
			hctmp.e.templatecatlink.appendChild(document.createTextNode(hotcat.categories.template_cats[i]));
			hctmp.e.templatecategories1.appendChild(hctmp.e.templatecatlink);
		}
		hctmp.e.templatecategories2 = document.createElement('div');
		hctmp.e.templatecategories2.id = 'templatecategories2';
		hctmp.e.templatecategories2.className = 'center_column';
		hctmp.e.templatecategories2.style.color = '#555';
		hctmp.e.templatecategories2.style.fontSize = 'x-small';
		hctmp.e.templatecategories2.appendChild(document.createTextNode('Diese Kategorien werden durch Vorlagen eingebunden und können nicht mit HotCat bearbeitet werden.'));
		hctmp.e.categoryblock.appendChild(hctmp.e.templatecategories1);
		hctmp.e.categoryblock.appendChild(hctmp.e.templatecategories2);
	}
		
	
	hctmp.e.templateblock = document.createElement('div');
	hctmp.e.templateblock.id = "hc_templateblock";
	//Qualitätssicherungsvorlagen
	hctmp.e.tempheadline = document.createElement('h3');
	hctmp.e.tempheadline.className = 'hotcat-qs';
	hctmp.e.tempheadline.appendChild(document.createTextNode('Qualitätssicherungsvorlagen'));
	
	hctmp.e.template_label = document.createElement('label');
	hctmp.e.template_label.appendChild(document.createTextNode('Vorlagen:'));
	
	hctmp.e.template_ul = document.createElement("ul");
	
	hctmp.e.li_temp = null;
	hctmp.e.input_temp = null;
	hctmp.e.label_temp = null;
	
	for (var i=0; i<hotcat.settings.qs_templates.length; i++) {	
		hctmp.e.li_temp = document.createElement('li');
		hctmp.e.li_temp.style.display = 'inline-block';
		hctmp.e.li_temp.style.marginLeft = '10px';
		hctmp.e.input_temp = document.createElement('input');
		hctmp.e.input_temp.type = 'radio';
		hctmp.e.input_temp.name = 'vorlagen';
		hctmp.e.input_temp.value = hotcat.settings.qs_templates[i];
		hctmp.e.input_temp.id = 'qs_' + hotcat.settings.qs_templates[i];
		hctmp.e.label_temp = document.createElement('label');
		hctmp.e.label_temp.style.display = 'inline';
		hctmp.e.label_temp.style.cssFloat = 'none';
		hctmp.e.label_temp.style.padding = '0';
		hctmp.e.label_temp.style.textAlign = 'left';
		hctmp.e.label_temp.style.width = 'auto';
		hctmp.e.label_temp.htmlFor = 'qs_' + hotcat.settings.qs_templates[i];
		hctmp.e.label_temp.appendChild(document.createTextNode(hotcat.settings.qs_templates[i]));
		
		if (hotcat.settings.qs_templates[i]=="keine Vorlage") {//wird standardmäßig ausgewählt
			hctmp.e.input_temp.checked = true;
		}
		hctmp.e.li_temp.appendChild(hctmp.e.input_temp);
		hctmp.e.li_temp.appendChild(hctmp.e.label_temp);

		if (hotcat.settings.qs_templates[i]=="QM") {if (mw.config.get("wgNamespaceNumber")==6) {//QM nur im Bild-Namensraum
			hctmp.e.template_ul.appendChild(hctmp.e.li_temp);
		}} else {//andere Vorlagen sind immer verfügbar
			hctmp.e.template_ul.appendChild(hctmp.e.li_temp);
		}
	}
	hctmp.e.template_desc_label = document.createElement("label");
	hctmp.e.template_desc_label.appendChild(document.createTextNode('Begründung (optional):'));
	
	hctmp.e.template_desc_input = document.createElement('input');
	hctmp.e.template_desc_input.id = 'qsvorlage_desc';
	hctmp.e.template_desc_input.type = 'text';
	hctmp.e.template_desc_input.placeholder = 'Beispiel: „Für dieses Bild ist keine ausreichende Quelle vorhanden.“';
	
	hctmp.e.templateblock.appendChild(hctmp.e.tempheadline);
	hctmp.e.templateblock.appendChild(hctmp.e.template_label);
	hctmp.e.templateblock.appendChild(hctmp.e.template_ul);
	hctmp.e.templateblock.appendChild(hctmp.e.template_desc_label);
	hctmp.e.templateblock.appendChild(hctmp.e.template_desc_input);
	
	
	//------------- Interwiki-Links -----------------
	hctmp.e.interblock = document.createElement('div');
	hctmp.e.interblock.id = 'hc_interwikiblock';
	
	//--- Erstelle URL für Google-Suche ---
	var hctmp_interwiki_search_query = 'https://www.google.de/search?q=';
	//if (interwikis.length>0) catlinks_new+='allintitle:+';
	//Häufige Wörter, nach denen nicht bei Google gesucht werden soll, weil sie nur in einer bestimmten Sprache vorkommen
	var hctmp_googlebadwords=[/^auf$/,/^[Dd]as$/,/^[Dd]en$/,/^[Dd]er$/,/^[Dd]es$/,/^[Dd]ie$/,/^[Ee]in/,/^für$/,/^groß/,/^im$/,/^in$/,/^nach$/,/^um$/,/^und$/,/^von$/,/^[Dd]roid/,/^Familie$/,/^Imperial/,/^Klasse$/,/^Scharmützel$/,/^Schlacht$/,/^[Ss]ystem$/,/^VSY$/,/^NSY$/,/^Battle$/,/^[Ss]tar$/,/^Wars?$/,/^Way$/,/^First$/,/^Second$/,/^Third$/,/^a$/,/^and$/,/^of$/,/^from$/,/^by$/,/^[Tt]he/,/^BBY$/,/^ABY$/];
	var hctmp_googlewoerter=mw.config.get("wgTitle").replace(/ (-|–)/g,"").replace(/(\-|\: ?)/g, " ").replace(/^(.+ )?(Mission|Scharmützel|Schlacht)( (von|nach|um))? /,"").replace(/ ?\(.+\)$/, "").split(" ");
	for (var i=0; i<hotcat.interwikis.array.length; i++) {if (hotcat.interwikis.array[i].id=="en" && hotcat.interwikis.array[i].title!=mw.config.get("wgTitle")) {
		hctmp_googlewoerter = hctmp_googlewoerter.concat(hotcat.interwikis.array[i].title.replace(/\-/, " ").replace(/ ?\(.+\)$/, "").split(" "));
		break;
	}}
	var hctmp_google1=[];var hctmp_google2=[];
	for (var i=0; i<hctmp_googlewoerter.length; i++) {//Doppelte Einträge entfernen
		if (typeof(hctmp_google1[hctmp_googlewoerter[i]]) == "undefined") {
			hctmp_google1[hctmp_googlewoerter[i]] = true;
			hctmp_google2[hctmp_google2.length] = hctmp_googlewoerter[i];
		}
	}
	hctmp_googlewoerter = hctmp_google2.slice(0);
	for (var i=0; i<hctmp_googlewoerter.length; i++) {//Badwords entfernen
		for (var j=0; j<hctmp_googlebadwords.length; j++) {
			if (hctmp_googlewoerter[i].match(hctmp_googlebadwords[j])) {
				hctmp_googlewoerter.splice(i,1);
				if (i>0) i--;
				break;
			}
		}
	}
	hctmp_interwiki_search_query += hctmp_googlewoerter.join("+OR+") + "+";
	hctmp_interwiki_search_query += '!!+site:starwars.fandom.com+OR+site:ossus.pl+OR+site:wookiepedia.fr+OR+site:fi.starwars.shoutwiki.com';
	hctmp_interwiki_search_query += '&num=100&filter=0&complete=0';//100 Ergebnisse, ohne SafeSearch-Filter, mit doppelten Ergebnissen
	if (hotcat.interwikis.array.length>0) hctmp_interwiki_search_query+='&as_occt=title';//Bei genügend genauen Suchbegriffen (=mit englischem InterWiki-Link), schränke Ergebnisse ein und suche nur im Titel
	
	
	hctmp.e.interheadline = document.createElement('h3');
	hctmp.e.interheadline.className = 'hotcat-interwikis';
	hctmp.e.interheadline.style.width = '714px';
	
	hctmp.e.intergooglelink = document.createElement("a");
	hctmp.e.intergooglelink.className='mw-editsection';
	hctmp.e.intergooglelink.href = hctmp_interwiki_search_query;
	hctmp.e.intergooglelink.target = '_blank';
	hctmp.e.intergooglelink.appendChild(document.createTextNode('Links suchen'));
	
	hctmp.e.interheadline.appendChild(hctmp.e.intergooglelink);
	hctmp.e.interheadline.appendChild(document.createTextNode('InterWiki-Links'));
	
	
	hctmp.e.inter_label = document.createElement('label');
	hctmp.e.inter_label.appendChild(document.createTextNode('InterWiki ergänzen:'));
	
	hctmp.e.inter_label2 = document.createTextNode('[[');
	
	hctmp.e.interselect = document.createElement('select');
	hctmp.e.interselect.id = 'addinterwikikuerzel';
	
	hctmp.e.interoption = null;
	
	var cnt=0; var hctmp_preseliw="";
	while (cnt<hotcat.settings.biggest_wikis.length) {//Auswahl des Wikis, das in der Auswahl vorgeblendet werden soll
		var nolink=true; for (var i=0; i<hotcat.interwikis.array.length; i++) {if (hotcat.interwikis.array[i].id==hotcat.settings.biggest_wikis[cnt]) {nolink=false; break;}}
		if (nolink==true) {//Wenn es den InterWiki-Link in dieser Sprache noch nicht gibt
			hctmp_preseliw=hotcat.settings.biggest_wikis[cnt];//größtes Wiki speichern
			break;
		} else {//Wenn es den InterWiki-Link gibt
			cnt++;//prüfe nächste Sprache
		}
	}
	for (var i=0; i<hotcat.settings.wikis.length; i++) {//Wiki-Auswahl erstellen
		hctmp.e.interoption = document.createElement("option");
		hctmp.e.interoption.title = hotcat.settings.wikis[i].name;
		if (hotcat.settings.wikis[i].id=="de" || hotcat.getWikiById("de").installed_iws.indexOf(hotcat.settings.wikis[i].id) == -1) hctmp.e.interoption.disabled = true;//nicht akzeptierte InterWiki-Links deaktivieren
		if (hotcat.settings.wikis[i].id==hctmp_preseliw) hctmp.e.interoption.selected = true;//markiere größtes Wiki standardmäßig
		hctmp.e.interoption.appendChild(document.createTextNode(hotcat.settings.wikis[i].id));
		hctmp.e.interselect.appendChild(hctmp.e.interoption);
	}
	
	hctmp.e.interinput = document.createElement("input");
	hctmp.e.interinput.value = mw.config.get("wgTitle");
	hctmp.e.interinput.id= "addinterwiki";
	hctmp.e.interinput.type = "text";
	
	hctmp.e.interspan = document.createElement("span");
	hctmp.e.interspan.appendChild(document.createTextNode(']] '));
	
	
	hctmp.e.interbutton = document.createElement('input');
	hctmp.e.interbutton.type = 'button';
	hctmp.e.interbutton.value = 'Hinzufügen';
	hctmp.e.interbutton.addEventListener('click',
		function add_interwiki() {
			hotcat.interwikis.add(hotcat.settings.wikis[document.getElementById("addinterwikikuerzel").selectedIndex].id, document.getElementById("addinterwiki").value);
			document.getElementById("addinterwiki").value=mw.config.get("wgTitle");
		});
	
	hctmp.e.interhint = document.createElement('div');
	hctmp.e.interhint.className = 'center_column';
	hctmp.e.interhint.style.fontSize = 'x-small';
	hctmp.e.interhint.style.color = '#555';
	hctmp.e.interhint.style.clear = 'both';
	hctmp.e.interhint.appendChild(document.createTextNode('Damit der Artikel in der jeweiligen Sprache verlinkt werden kann, musst du hier seinen Titel eintragen.'));
	
	hctmp.e.inter2label = document.createElement('label');
	hctmp.e.inter2label.appendChild(document.createTextNode('InterWikis ändern:'));
	
	hctmp.e.inter2list = document.createElement('ul');
	if (hctmp.e.inter2list.classList) {
		hctmp.e.inter2list.classList.add("hc_editlist");
	} else {
		hctmp.e.inter2list.className += " hc_editlist";
	}
	hctmp.e.inter2list.id = 'interwikilist'
	
	hctmp.e.intercleanlabel = document.createElement('label');
	hctmp.e.intercleanlabel.appendChild(document.createTextNode('InterWiki-CleanUp:'));
	
	hctmp.e.interwiki_cleanup = document.createElement('div');
	hctmp.e.interwiki_cleanup.id = 'interwiki_cleanup';

	if (hotcat.interwikis.array.length > 0) {
		hctmp.e.interwiki_cleanup_loading = document.createElement('div');
		hctmp.e.interwiki_cleanup_loading.id = 'interwiki_cleanup_loading'

		hctmp.e.interwiki_cleanup_loading_img = document.createElement('img');
		hctmp.e.interwiki_cleanup_loading_img.src="/w/images/d/de/Ajax-loader.gif";
		hctmp.e.interwiki_cleanup_loading_img.alt = 'Wird geladen...'
	
		hctmp.e.interwiki_cleanup_loadingstatus = document.createElement('span');
		hctmp.e.interwiki_cleanup_loadingstatus.id = 'interwiki_cleanup_loadingstatus';
		hctmp.e.interwiki_cleanup_loadingstatus.appendChild(document.createTextNode('0'));
	
		hctmp.e.interwiki_cleanup_loading.appendChild(hctmp.e.interwiki_cleanup_loading_img);
		hctmp.e.interwiki_cleanup_loading.appendChild(document.createTextNode(' Die InterWiki-Links bei anderen Wikis werden geladen. ('));
		hctmp.e.interwiki_cleanup_loading.appendChild(hctmp.e.interwiki_cleanup_loadingstatus);
		hctmp.e.interwiki_cleanup_loading.appendChild(document.createTextNode('/'+hotcat.interwikis.array.length+')'));
		
		hctmp.e.interwiki_cleanup.appendChild(hctmp.e.interwiki_cleanup_loading);
	} else {
		hctmp.e.interwiki_cleanup.appendChild(document.createTextNode('HotCat konnte nichts finden, was geändert werden sollte.'));
	}
	
	hctmp.e.interblock.appendChild(hctmp.e.interheadline);
	
	hctmp.e.interblock_p1 = document.createElement('p');
	hctmp.e.interblock_p1.appendChild(hctmp.e.inter_label);
	hctmp.e.interblock_p1.appendChild(hctmp.e.inter_label2);
	hctmp.e.interblock_p1.appendChild(hctmp.e.interselect);
	hctmp.e.interblock_p1.appendChild(hctmp.e.interinput);
	hctmp.e.interblock_p1.appendChild(hctmp.e.interspan);
	hctmp.e.interblock_p1.appendChild(hctmp.e.interbutton);
	hctmp.e.interblock.appendChild(hctmp.e.interblock_p1);
	
	hctmp.e.interblock.appendChild(hctmp.e.interhint);
	hctmp.e.interblock.appendChild(hctmp.e.inter2label);
	hctmp.e.interblock.appendChild(hctmp.e.inter2list);
	hctmp.e.interblock.appendChild(hctmp.e.intercleanlabel);
	hctmp.e.interblock.appendChild(hctmp.e.interwiki_cleanup);
	
	
	//Kommentar und absenden
	hctmp.e.commentblock = document.createElement('div');
	hctmp.e.commentblock.id = 'hc_submitblock';
	hctmp.e.commentblock.style.clear='both';
	hctmp.e.commentblock.style.backgroundColor='#aaa';
	hctmp.e.commentblock.style.padding='10px';
	
	hctmp.e.commentlabel = document.createElement('label');
	hctmp.e.commentlabel.htmlFor = 'hotcatcomment';
	hctmp.e.commentlabel.appendChild(document.createTextNode('Kommentar:'));
	
	hctmp.e.commentinput = document.createElement('input');
	hctmp.e.commentinput.type = 'text';
	hctmp.e.commentinput.id = 'hotcatcomment';
	hctmp.e.commentinput.placeholder = 'Die Angabe eines Kommentars ist optional.';
	
	hctmp.e.submitbutton = document.createElement('input');
	hctmp.e.submitbutton.type = 'button';
	hctmp.e.submitbutton.value = 'Speichern';
	hctmp.e.submitbutton.addEventListener('click',function f() { hotcat.submit();});
	
	hctmp.e.cancelbutton = document.createElement('input');
	hctmp.e.cancelbutton.type = 'button';
	hctmp.e.cancelbutton.value = 'Abbrechen';
	hctmp.e.cancelbutton.addEventListener('click',hotcat.close);
	
	hctmp.e.endclear = document.createElement('br');
	hctmp.e.endclear.style.clear = 'both';
	
	
	hctmp.e.commentblock.appendChild(hctmp.e.commentlabel);
	hctmp.e.commentblock.appendChild(hctmp.e.commentinput);
	hctmp.e.commentblock.appendChild(document.createTextNode(' '));
	hctmp.e.commentblock.appendChild(hctmp.e.submitbutton);
	hctmp.e.commentblock.appendChild(document.createTextNode(' '));
	hctmp.e.commentblock.appendChild(hctmp.e.cancelbutton);
	hctmp.e.commentblock.appendChild(hctmp.e.endclear);
	
	
	hctmp.e.main.appendChild(hctmp.e.headline);
	hctmp.e.main.appendChild(hctmp.e.categoryblock);
	hctmp.e.main.appendChild(hctmp.e.templateblock);
	hctmp.e.main.appendChild(hctmp.e.interblock);
	hctmp.e.main.appendChild(hctmp.e.commentblock);
	document.getElementById("bodyContent").appendChild(hctmp.e.main);
	
	
	hotcat.categories.redraw();
	hotcat.interwikis.redraw();
	for (var i=0; i<hotcat.interwikis.array.length; i++) {
		hotcat.interwikis.load(hotcat.interwikis.array[i].id, hotcat.interwikis.array[i].title);
	}
}

//Schließt HotCat-Fenster und setzt alle Variablen auf Standard zurück
hotcat.close = function() {
	document.getElementById("bodyContent").removeChild(document.getElementById("hotcat"));
	hotcat.exzstatus = false;
	hotcat.lwastatus = false;
	hotcat.defaultsort = "";
	hotcat.categories.array = [];
	hotcat.categories.suggestions = {};
	hotcat.interwikis.array = [];
	hotcat.interwikis.loadstatus = 0;
	hotcat.ui = {}
	hotcat.addlink();
}

hotcat.categories.add = function(catname) {
	for (var i=0; i<hotcat.settings.category_blacklist.length; i++) {
		if (hotcat.settings.category_blacklist[i] == catname) {
			alert("Die Kategorie "+catname+" darf nicht hinzugefügt werden, weil sie über eine Vorlage eingebunden werden muss.");
			return false;
		}
	}
	hotcat.categories.array.push(catname);
	hotcat.categories.redraw();
	return true;
}

hotcat.categories.remove = function(catname) {
	for (var i=0; i<hotcat.categories.array.length; i++) {
		if (hotcat.categories.array[i] == catname) {
			hotcat.categories.array.splice(i, 1);//Entferne aus Array
			hotcat.categories.recently_removed.push(catname);//Füge zur Liste kürzlich entfernter Kategorien hinzu
			//Aktualisiere UI
			hotcat.categories.redraw();
			hotcat.ui.recentlyremoved();
			return true;
		}
	}
	return false;
}

hotcat.categories.swap = function(id1, id2) {
	var hctmp_cat = hotcat.categories.array[id1];
	hotcat.categories.array[id1] = hotcat.categories.array[id2];
	hotcat.categories.array[id2] = hctmp_cat;
	hotcat.categories.redraw();
}

hotcat.ui.recentlyremoved = function() {
	var hctmp = {};
	hotcat.makeempty("hotcat_recentlyremoved");
	if (hotcat.categories.recently_removed.length == 0) {
		hctmp.recentlynothingremoved = document.createElement("i");
		hctmp.recentlynothingremoved.appendChild(document.createTextNode('nichts'));
		document.getElementById("hotcat_recentlyremoved").appendChild(hctmp.recentlynothingremoved);
	} else {
		for (var i=0; i<hotcat.categories.recently_removed.length; i++) {
			if (i>0) document.getElementById("hotcat_recentlyremoved").appendChild(document.createTextNode(', '));
			
			hctmp.cat_ismissing = false;
			for (var j=0; j<hotcat.categories.missing.length; j++) {
				if (hotcat.categories.recently_removed[i] == hotcat.categories.missing[j]) hctmp.cat_ismissing = true;
			}
			
			hctmp.recentlyremovedspan = document.createElement("span");
			hctmp.recentlyremovedspan.id = 'removed_'+i;
			
			hctmp.tmprestorelink = document.createElement('a');
			hctmp.tmprestorelink.addEventListener('click',
				function rev_recentlyremoved() {
					var tmpid = Number(this.parentNode.id.match(/^removed_(\d+)$/)[1]);
					hotcat.categories.add(hotcat.categories.recently_removed[tmpid]);
					hotcat.categories.recently_removed.splice(tmpid, 1);
					hotcat.categories.redraw();
					hotcat.ui.recentlyremoved();
				});
			hctmp.tmprestorelink.title = 'Kategorie wiederherstellen';
			hctmp.tmprestorelink.style.cursor = 'pointer';
			hctmp.tmprestorelink.appendChild(document.createTextNode('↺'));

			hctmp.tmpcatlink = document.createElement("a");
			hctmp.tmpcatlink.href = '/wiki/Kategorie:'+hotcat.categories.recently_removed[i].replace(/ /g, "_");
			hctmp.tmpcatlink.target = "_blank";
			if (hctmp.cat_ismissing) hctmp.tmpcatlink.className = "new";
			hctmp.tmpcatlink.appendChild(document.createTextNode(hotcat.categories.recently_removed[i]));
			
			hctmp.recentlyremovedspan.appendChild(hctmp.tmprestorelink);
			hctmp.recentlyremovedspan.appendChild(document.createTextNode(" "));
			hctmp.recentlyremovedspan.appendChild(hctmp.tmpcatlink);
			document.getElementById("hotcat_recentlyremoved").appendChild(hctmp.recentlyremovedspan);
		}
	}
}

hotcat.categories.suggestions.timeouts = [];

hotcat.categories.suggestions.openbox = function(id) {//Vorschläge-Kasten öffnen
	if (hotcat.categories.suggestions.timeouts[id]) window.clearTimeout(hotcat.categories.suggestions.timeouts[id]);
	document.getElementById(id).style.display="block";
	if (document.getElementById('createcatname').value == "") {
		var hc_suggestsimcats_headline = document.createElement("b");
		hc_suggestsimcats_headline.appendChild(document.createTextNode('Vorschläge:'));
		
		var hc_suggestsimcats_break = document.createElement('br');
		
		var hc_suggestsimcats_ajaxloadimage = document.createElement('img');
		hc_suggestsimcats_ajaxloadimage.src = '/w/images/d/de/Ajax-loader.gif';
		
		while (document.getElementById("vorschlaegecreatecatname").firstChild) { document.getElementById("vorschlaegecreatecatname").removeChild(document.getElementById("vorschlaegecreatecatname").firstChild); }
		
		document.getElementById("vorschlaegecreatecatname").appendChild(hc_suggestsimcats_headline);
		document.getElementById("vorschlaegecreatecatname").appendChild(hc_suggestsimcats_break);
		document.getElementById("vorschlaegecreatecatname").appendChild(hc_suggestsimcats_ajaxloadimage);
		
		hotcat_getRCsimcats = getXmlHttpRequestObject();
		if (hotcat_getRCsimcats.readyState == 4 || hotcat_getRCsimcats.readyState == 0) {
			hotcat_getRCsimcats.open("POST", '/scripts/sql.php?mode=simcats', true);
			hotcat_getRCsimcats.onreadystatechange = hotcat.categories.suggestions.parsesimcats;
			hotcat_getRCsimcats.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			hotcat_getRCsimcats.send('categories='+encodeURIComponent(hotcat.categories.array.join("|")));
		}
	}
}

hotcat.categories.suggestions.parsesimcats = function() {
	if (hotcat_getRCsimcats.readyState == 4 && hotcat_getRCsimcats.responseText.length>0) {
		var tempsimcats = hotcat_getRCsimcats.responseText.split("|");
		while (document.getElementById("vorschlaegecreatecatname").firstChild) document.getElementById("vorschlaegecreatecatname").removeChild(document.getElementById("vorschlaegecreatecatname").firstChild);
		
		var hc_simsugest_head = document.createElement("b");
		hc_simsugest_head.appendChild(document.createTextNode('Vorschläge:'));
		document.getElementById("vorschlaegecreatecatname").appendChild(hc_simsugest_head);
		
		var hc_simsugest_line = document.createElement('a');
		
		for (var i=0; i<tempsimcats.length; i++) {
			hotcat.categories.existing.push(tempsimcats[i]);
			document.getElementById("vorschlaegecreatecatname").appendChild(document.createElement('br'));
			var hc_simsugest_line = document.createElement('a');
			hc_simsugest_line.title = 'auswählen';
			hc_simsugest_line.appendChild(document.createTextNode('↴ '+tempsimcats[i]));
			hc_simsugest_line.addEventListener('click',function f() {hotcat.categories.suggestions.click('createcatname', this.firstChild.data.substr(2));});
			document.getElementById("vorschlaegecreatecatname").appendChild(hc_simsugest_line);
		}
	}
}

hotcat.categories.suggestions.click = function(id, name) {
	var oldinputvalue = document.getElementById(id).value;
	document.getElementById(id).value = name;
	document.getElementById(id).style.color = hotcat.settings.linkcolor;
	document.getElementById(id).focus();
}

hotcat.categories.suggestions.closebox = function(id) {//Vorschläge-Kasten schließen
	hotcat.categories.suggestions.timeouts[id] = window.setTimeout('document.getElementById("'+id+'").style.display="none";',175);
}

hotcat.interwikis.add = function(newid, newtitle) {
	//Sprachcode, Lemma, FA/GA/CA, Änderungen möglich, virtuelle Interwiki-Links in diesem Wiki
	hotcat.interwikis.array.push({id:newid, title:newtitle, isFA:"false", canedit:false, type:"any", newlinks:[]});
	hotcat.interwikis.redraw();
	hotcat.interwikis.cleanup();
	hotcat.interwikis.load(newid, newtitle);
}

hotcat.interwikis.add2wiki = function(wikiid, newid, newtitle) {//hotcat.interwikis.add2wiki("en", "de", "Jerba");
	var tmp_wiki = hotcat.interwikis.getById(wikiid);
	tmp_wiki.newlinks.push({id:newid, title:newtitle});
	tmp_wiki.newlinks.sort((wikiid === "pl") ? hotcat.sortInterwikisPl : hotcat.sortInterwikis);
	hotcat.interwikis.cleanup();
}

hotcat.interwikis.editwiki = function(wiki2edit, editid) {
	//Ändere Link bei einem anderen Wiki virtuell (und übernehme dabei den InterWiki-Link von Jedipedia)
	for (var i=0; i<hotcat.interwikis.array.length; i++) {//Finde ID des Wikis, wo geändert werden soll
		if (hotcat.interwikis[i].id == wiki2edit) {
			for (var j=0; j<hotcat.interwikis[i].newlinks.length; j++) {// Finde ID des InterWiki-Links, der geändert werden soll
				if (hotcat.interwikis.array[i].newlinks[j].id == editid) {
					if (editid == "de") {//Nehme den aktuellen Artikelnamen
						hotcat.interwikis.array[i].newlinks[j].title = hotcat.curpage.replace(/_/g, " ");
					} else { //Übernehme den korrekten InterWiki-Link bei Jedipedia
						hotcat.interwikis.array[i].newlinks[j].title = hotcat.interwikis.getById(editid).title;
					}
					hotcat.interwikis.cleanup();
					return;
				}
			}
		}
	}
}

//Löscht einen InterWiki-Link aus dem Artikel der angegebenen Sprache, deletetitle wird ignoriert
hotcat.interwikis.delfromwiki = function(wikiid, deleteid, deletetitle) {
	if (wikiid == "de") {
		for (var i=0; i<hotcat.interwikis.array.length; i++) {
			if (hotcat.interwikis.array[i].id == deleteid) {
				hotcat.interwikis.array.splice(i,1);
				hotcat.interwikis.redraw();
				hotcat.interwikis.cleanup();
				return true;
			}
		}
	} else {
		for (var i=0; i<hotcat.interwikis.array.length; i++) {
			if (hotcat.interwikis.array[i].id == wikiid) {
				for (var j=0; j<hotcat.interwikis.array[i].newlinks.length; j++) {
					if (hotcat.interwikis.array[i].newlinks[j].id == deleteid) {
						hotcat.interwikis.array[i].newlinks.splice(j,1);
						hotcat.interwikis.cleanup();
						return true;
					}
				}
			}
		}
	}
	return false;
}

hotcat.interwikis.getById = function(wikiid) {
	if (wikiid == "de") {
		var hctmp_fa="false";
		if (hotcat.lwastatus) hctmp_fa="GA";
		if (hotcat.exzstatus) hctmp_fa="FA";
		return {id:"de", title:hotcat.curpage.replace(/_/g, " "), isFA:hctmp_fa, canedit:false, type:"any", newlinks:hotcat.interwikis.array};
	}
	for (var i=0; i<hotcat.interwikis.array.length; i++) {
		if (hotcat.interwikis.array[i].id == wikiid) return hotcat.interwikis.array[i];
	}
	return null;
}

hotcat.interwikis.load = function(id, title) {
	//z.B. https://www.jedipedia.net/scripts/hotcat.php?mode=getinterwikis&wiki=nl&title=Jerba
	var hc_request = getXmlHttpRequestObject();
	hc_request.id = id;
	hc_request.title = title;
	hc_request.onreadystatechange = function() {
		if (this.readyState != 4) return;
		for (var i=0; i<hotcat.interwikis.array.length; i++) {
			if (hotcat.interwikis.array[i].id == this.id && hotcat.interwikis.array[i].title == this.title) {
				var hctmp_response_lines = this.responseText.replace(/\r/g, "").split("\n");
				for (var j=0; j<hctmp_response_lines.length; j++) {
					//substring() statt split() für den Fall, dass eine Zeile mehr als ein = Zeichen enthält
					var hctmp_response1 = hctmp_response_lines[j].substring(0, hctmp_response_lines[j].indexOf("="));
					var hctmp_response2 = hctmp_response_lines[j].substring(hctmp_response_lines[j].indexOf("=")+1);
					if (hctmp_response1 == "error") {
						if (hctmp_response2 == "missing") {//
							alert("Der InterWiki-Link [["+this.id+":"+this.title+"]] existiert nicht und wird automatisch entfernt.");
							hotcat.interwikis.array.splice(i, 1);
							hotcat.interwikis.redraw();
							hotcat.interwikis.cleanup();
							return;
						} else if (hctmp_response2 == "redirect") {
							//do nothing, read "redirect" field
						} else if (hctmp_response2 == "protected") {//
							alert("Der Artikel [["+this.id+":"+this.title+"]] ist gesperrt und kann nicht mit HotCat bearbeitet werden.");
							hotcat.interwikis.array[i].canedit = false;
							hotcat.interwikis.redraw();
							hotcat.interwikis.loadstatus++;
							hotcat.interwikis.cleanup();
							return;
						} else {
							alert("Beim Laden des InterWiki-Links [["+this.id+":"+this.title+"]] trat ein Fehler auf. Der InterWiki-Link kann nicht bearbeitet werden.\n\nerror="+hctmp_response2);
							hotcat.interwikis.array[i].canedit = false;
							hotcat.interwikis.redraw();
							hotcat.interwikis.loadstatus++;
							hotcat.interwikis.cleanup();
							return;
						}
					} else if (hctmp_response1 == "redirect") {//Ändere Weiterleitung und lade neu
						alert("Der InterWiki-Link [["+this.id+":"+this.title+"]] ist eine Weiterleitung und wird automatisch zu [["+this.id+":"+hctmp_response2+"]] korrigiert.");
						hotcat.interwikis.array[i].title = hctmp_response2;
						hotcat.interwikis.load(this.id, hctmp_response2);
						return;
					} else if (hctmp_response1 == "type") {
						switch (hctmp_response2) {
							case 'kanon': hotcat.interwikis.array[i].type = "kanon"; break;
							case 'legends': hotcat.interwikis.array[i].type = "legends"; break;
							default: hotcat.interwikis.array[i].type = "any";
						}
					} else if (hctmp_response1 == "isFA") {
						hotcat.interwikis.array[i].isFA = "FA";
					} else if (hctmp_response1 == "isGA") {
						hotcat.interwikis.array[i].isFA = "GA";
					} else if (hctmp_response1 == "isCA") {
						hotcat.interwikis.array[i].isFA = "CA";
					} else {//Füge InterWiki-Link hinzu, wenn er akzeptiert wird
						for (var k=0; k<hotcat.getWikiById(this.id).installed_iws.length; k++) {
							if (hctmp_response1 == hotcat.getWikiById(this.id).installed_iws[k]) {
								hotcat.interwikis.array[i].newlinks.push({id:hctmp_response1, title:hctmp_response2});
							}
						}
					}
				}
				hotcat.interwikis.array[i].newlinks.sort((this.id === "pl") ? hotcat.sortInterwikisPl : hotcat.sortInterwikis);
				hotcat.interwikis.array[i].canedit = true;
				hotcat.interwikis.redraw();
				hotcat.interwikis.loadstatus++;
				hotcat.interwikis.cleanup();
				return;
			}
		}
	};
	hc_request.open("GET", "/scripts/hotcat.php?mode=getinterwikis&wiki="+id+"&title="+encodeURIComponent(title).replace(/'/,"%27").replace(/\./,"%2E")+'&nocache='+mw.config.get("wgCurRevisionId"), true);
	hc_request.send(null);
}

//Taste wird gedrückt
function hotcat_keyup(elementvar) {
	hotcat.workingelement = elementvar;
	var catname = document.getElementById(elementvar).value;
	document.getElementById(elementvar).style.color = "black";
	if (catname == "") return;
	for (var i=0; i<hotcat.categories.existing.length; i++) {
		if (catname == hotcat.categories.existing[i]) document.getElementById(elementvar).style.color = hotcat.settings.linkcolor;
	}
	for (var i=0; i<hotcat.categories.missing.length; i++) {
		if (catname == hotcat.categories.missing[i]) document.getElementById(elementvar).style.color = "#ba0000";
	}
//	window.setTimeout('hotcat_getcatlist("'+catname+'");',100);
	hotcat_getcatlist(catname);
}

//Suche nach Kategorie, um Vorschläge zu machen
function hotcat_getcatlist(catname) {
	hotcat_getRCDataR1 = getXmlHttpRequestObject();
	if (hotcat_getRCDataR1.readyState == 4 || hotcat_getRCDataR1.readyState == 0) {
		catname=catname.split("|");
		hotcat_getRCDataR1.open("GET", hotcat.settings.api_url+'?action=opensearch&search=Kategorie:'+catname[0], true);
		hotcat_getRCDataR1.onreadystatechange = hotcat_parsecatlist;
		hotcat_getRCDataR1.send(null);
	}
}

//Wenn Antwort kommt
function hotcat_parsecatlist() {
	if (hotcat_getRCDataR1.readyState == 4) {
		var catlist_ajax = eval(hotcat_getRCDataR1.responseText);
		catlist_ajax=catlist_ajax;
		catlist_ajax[0]=catlist_ajax[0].substring(10, catlist_ajax[0].length);
		
		while (document.getElementById("vorschlaege"+hotcat.workingelement).firstChild) document.getElementById("vorschlaege"+hotcat.workingelement).removeChild(document.getElementById("vorschlaege"+hotcat.workingelement).firstChild);
		
		var hc_newsuggest_header = document.createElement('b');
		hc_newsuggest_header.appendChild(document.createTextNode('Vorschläge:'));
		var hc_newsuggest_breakline = document.createElement('br');
		
		document.getElementById("vorschlaege"+hotcat.workingelement).appendChild(hc_newsuggest_header);
		document.getElementById("vorschlaege"+hotcat.workingelement).appendChild(hc_newsuggest_breakline);
		
		var hc_newsuggest_line = document.createElement('a');
		
		if (catlist_ajax[1] != "") {
			if (catlist_ajax[0] == catlist_ajax[1][0].substring(10, catlist_ajax[1][0].length)) {
				document.getElementById(hotcat.workingelement).style.color = hotcat.settings.linkcolor;
			} else {
				hotcat.categories.missing.push(catlist_ajax[0]);
				document.getElementById(hotcat.workingelement).style.color = "#ba0000";
			}
			for (var i=0; i<catlist_ajax[1].length; i++) {
				catlist_ajax[1][i] = catlist_ajax[1][i].substring(10, catlist_ajax[1][i].length);
				hotcat.categories.existing.push(catlist_ajax[1][i]);
				hc_newsuggest_line = document.createElement('a');
				hc_newsuggest_line.addEventListener('click',function f() { hotcat.categories.suggestions.click(hotcat.workingelement, this.firstChild.data.substr(2)); });
				hc_newsuggest_line.title = 'auswählen';
				hc_newsuggest_line.appendChild(document.createTextNode('↴ '+catlist_ajax[1][i]));
								
				document.getElementById("vorschlaege"+hotcat.workingelement).appendChild(hc_newsuggest_line);
				document.getElementById("vorschlaege"+hotcat.workingelement).appendChild(document.createElement("br"));
				
			}
		} else {
			hotcat.categories.missing.push(catlist_ajax[0]);
			document.getElementById(hotcat.workingelement).style.color = "#ba0000";
			document.getElementById("vorschlaege"+hotcat.workingelement).appendChild(document.createTextNode('Keine passende Kategorie gefunden...'));
		}
		document.getElementById("vorschlaege"+hotcat.workingelement).style.display = "block";
	}
}

//Aktualisiert die Liste mit den Kategorien laut hotcat.categories[]
hotcat.categories.redraw = function() {
	var hctmp = {};
	catlinks_new="";
	hctmp.catprev_box = document.createElement('div');
	hctmp.catprev_box.id = "mw-normal-catlinks";
	hctmp.catprev_headline = document.createElement("a");
	hctmp.catprev_headline.href = "/wiki/Spezial:Categories";
	hctmp.catprev_headline.title="Spezial:Categories";
	if (hotcat.categories.array.length==1) {
		hctmp.catprev_headline.appendChild(document.createTextNode('Kategorie'));
	} else {
		hctmp.catprev_headline.appendChild(document.createTextNode('Kategorien'));
	}
	hctmp.catprev_box.appendChild(hctmp.catprev_headline);
	hctmp.catprev_box.appendChild(document.createTextNode(': '));
	
	while (document.getElementById("categorylist").firstChild)
		document.getElementById("categorylist").removeChild(document.getElementById("categorylist").firstChild);
	
	for (var i=0; i<hotcat.categories.array.length; i++) {
		hctmp.cat_ismissing = false;
		if (hotcat.categories.array[i].search(/\|/)==-1) hctmp.catworking=hotcat.categories.array[i]; else hctmp.catworking=hotcat.categories.array[i].substring(0, hotcat.categories.array[i].indexOf("|"));
		for (var j=0; j<hotcat.categories.missing.length; j++) {
			if (hotcat.categories.array[i] == hotcat.categories.missing[j]) hctmp.cat_ismissing = true;
		}
		
		hctmp.catworking_item = document.createElement('li');
		hctmp.catworking_item.id = 'category_'+i;
		
		hctmp.catworking_button_del = document.createElement('span');
		hctmp.catworking_button_del.title = 'Kategorie entfernen';
		hctmp.catworking_button_del.style.cursor = 'pointer';
		hctmp.catworking_button_del.style.color = hotcat.settings.linkcolor;
		hctmp.catworking_button_del.appendChild(document.createTextNode('–'));
		hctmp.catworking_button_del.addEventListener('click',function f() {hotcat.categories.remove(this.parentNode.lastChild.firstChild.data);});
		
		hctmp.catworking_button_edit = document.createElement('span');
		hctmp.catworking_button_edit.title = 'bearbeiten';
		hctmp.catworking_button_edit.style.cursor = 'pointer';
		hctmp.catworking_button_edit.style.color = hotcat.settings.linkcolor;
		hctmp.catworking_button_edit.appendChild(document.createTextNode('±'));
		hctmp.catworking_button_edit.addEventListener('click',
			function open_cat_for_editing() {
				var hc_catid = this.parentNode.id.match(/category_(\d+)/)[1]
				var cat_li = document.getElementById("category_"+hc_catid);
				var cat_link = cat_li.lastChild;
				while (cat_link.nodeName.toLowerCase() != 'a') { cat_link = cat_link.previousSibling; }
				var newcat_sugestbox = document.createElement("span");
				newcat_sugestbox.id = 'vorschlaegenewcatname'+hc_catid;
				newcat_sugestbox.style.position = 'absolute';
				newcat_sugestbox.style.width = '350px';
				newcat_sugestbox.style.height = '100px';
				newcat_sugestbox.style.marginTop = '-135px';
				newcat_sugestbox.style.overflow = 'auto';
				newcat_sugestbox.style.border = '1px solid #aaa';
				newcat_sugestbox.style.backgroundColor = '#f9f9f9';
				newcat_sugestbox.style.display = 'none';
				newcat_sugestbox.style.padding = '5px';
				newcat_sugestbox.style.left = '215px';
				newcat_sugestbox.addEventListener('click',function f() { hotcat.categories.suggestions.openbox(this.id); });
				
				var ncsb_header = document.createElement("b");
				ncsb_header.appendChild(document.createTextNode("Vorschläge:"));
				
				newcat_sugestbox.appendChild(ncsb_header);
				
				var newcat_input = document.createElement("input");
				newcat_input.value = hotcat.categories.array[hc_catid];
				newcat_input.size = '40';
				newcat_input.style.width = '250px';
				newcat_input.id = 'newcatname'+hc_catid;
				newcat_input.addEventListener('keyup',function f() { hotcat_keyup(this.id); });
				newcat_input.addEventListener('focus',function f() { hotcat.categories.suggestions.openbox(this.previousSibling.id); });
				newcat_input.addEventListener('blur' ,function f() { hotcat.categories.suggestions.closebox(this.previousSibling.id); });
				
				var newcat_confirm = document.createElement("input");
				newcat_confirm.type = 'button';
				newcat_confirm.value = 'Übernehmen';		
				newcat_confirm.addEventListener('click',
					function f() {
						hotcat.categories.array[this.previousSibling.id.match(/\d+/)] = document.getElementById("newcatname"+this.previousSibling.id.match(/\d+/)).value;
						hotcat.categories.redraw();
					});
				
				var newcat_cancel = document.createElement("input");
				newcat_cancel.type = 'button';
				newcat_cancel.value = 'Abbrechen';		
				newcat_cancel.addEventListener('click',function hc_cat_cancel_edit() { hotcat.categories.redraw(); });
				
				cat_li.removeChild(cat_link);
				cat_li.appendChild(newcat_sugestbox);
				cat_li.appendChild(newcat_input);
				cat_li.appendChild(newcat_confirm);
				cat_li.appendChild(newcat_cancel);
				
				hotcat_keyup("newcatname"+hc_catid);
			}); //Ende der Edit-Funktion
		
		
		hctmp.catworking_button_up = document.createElement('span');
		hctmp.catworking_button_up.appendChild(document.createTextNode('↑'));
		if (i > 0) {
			hctmp.catworking_button_up.title = 'nach oben verschieben';
			hctmp.catworking_button_up.style.cursor = 'pointer';
			hctmp.catworking_button_up.style.color = hotcat.settings.linkcolor;
			hctmp.catworking_button_up.addEventListener('click',function f() { hotcat.categories.swap(parseInt(this.parentNode.id.match(/category_(\d+)/)[1])-1, parseInt(this.parentNode.id.match(/category_(\d+)/)[1]));});
		} else {
			hctmp.catworking_button_up.style.color = '#bbb';
		}
		
		
		hctmp.catworking_button_down = document.createElement('span');
		hctmp.catworking_button_down.appendChild(document.createTextNode('↓'));
		if (i < hotcat.categories.array.length-1) {
			hctmp.catworking_button_down.title = 'nach unten verschieben';
			hctmp.catworking_button_down.style.cursor = 'pointer';
			hctmp.catworking_button_down.style.color = hotcat.settings.linkcolor;
			hctmp.catworking_button_down.addEventListener('click',function f() { hotcat.categories.swap(parseInt(this.parentNode.id.match(/category_(\d+)/)[1]), parseInt(this.parentNode.id.match(/category_(\d+)/)[1])+1);});
		} else {
			hctmp.catworking_button_down.style.color = '#bbb';
		}
			
		
		hctmp.catworking_link = document.createElement('a');
		hctmp.catworking_link.href = '/wiki/Kategorie:'+hctmp.catworking.replace(/ /g, "_");
		if (hctmp.cat_ismissing) hctmp.catworking_link.className = 'new';
		hctmp.catworking_link.appendChild(document.createTextNode(hotcat.categories.array[i]));

		hctmp.catworking_item.appendChild(hctmp.catworking_button_del);
		hctmp.catworking_item.appendChild(document.createTextNode(' '));
		hctmp.catworking_item.appendChild(hctmp.catworking_button_edit);
		hctmp.catworking_item.appendChild(document.createTextNode(' '));
		hctmp.catworking_item.appendChild(hctmp.catworking_button_up);
		hctmp.catworking_item.appendChild(document.createTextNode(' '));
		hctmp.catworking_item.appendChild(hctmp.catworking_button_down);
		hctmp.catworking_item.appendChild(document.createTextNode(' '));
		hctmp.catworking_item.appendChild(hctmp.catworking_link);
		document.getElementById("categorylist").appendChild(hctmp.catworking_item);

		// Vorschau im Kategorie-Kasten
		hctmp.catprevworking_span = document.createElement('span');
		hctmp.catprevworking_span.setAttribute('dir','ltr');
		
		hctmp.catprevworking_link = document.createElement('a');
		hctmp.catprevworking_link.href = '/wiki/Kategorie:'+hctmp.catworking.replace(/ /g, "_");
		if (hctmp.cat_ismissing) hctmp.catprevworking_link.className = 'new';
		hctmp.catprevworking_link.appendChild(document.createTextNode(hotcat.categories.array[i]));

		hctmp.catprevworking_span.appendChild(hctmp.catprevworking_link);
		
		if (i > 0) hctmp.catprev_box.appendChild(document.createTextNode(' | '));
		hctmp.catprev_box.appendChild(hctmp.catprevworking_span);
	}
	while (document.getElementById("catlinks").firstChild)
		document.getElementById("catlinks").removeChild(document.getElementById("catlinks").firstChild);
	document.getElementById("catlinks").appendChild(hctmp.catprev_box);
}

//Aktualisiert die Liste mit den Interwiki-Links laut interwikis[]
hotcat.interwikis.redraw = function() {
	var hctmp = {};
	hotcat.interwikis.array.sort(hotcat.sortInterwikis);
	hotcat.makeempty("interwikilist");
	
	for (var i=0; i<hotcat.interwikis.array.length; i++) {
		hctmp.interwiki_line = document.createElement("li");
		hctmp.interwiki_line.id = 'interwiki_'+i;
		
		hctmp.interwiki_buttondel = document.createElement("span");		
		hctmp.interwiki_buttondel.appendChild(document.createTextNode('–'));
		hctmp.interwiki_buttondel.title = 'entfernen';
		if (hotcat.interwikis.array[i].canedit) {
			hctmp.interwiki_buttondel.style.cursor = 'pointer';
			hctmp.interwiki_buttondel.style.color = hotcat.settings.linkcolor;
			hctmp.interwiki_buttondel.addEventListener('click',function hciw_del() {
				hotcat.interwikis.array.splice(Number(this.parentNode.id.match(/^interwiki_(\d+)$/)[1]),1);
				hotcat.interwikis.redraw();
				hotcat.interwikis.cleanup();
			});
		} else {
			hctmp.interwiki_buttondel.style.color = '#bbb';
		}
		
		hctmp.interwiki_buttonedit = document.createElement("span");
		hctmp.interwiki_buttonedit.appendChild(document.createTextNode('±'));
		hctmp.interwiki_buttonedit.title = 'bearbeiten';
		if (hotcat.interwikis.array[i].canedit) {
			hctmp.interwiki_buttonedit.style.cursor = 'pointer';
			hctmp.interwiki_buttonedit.style.color = hotcat.settings.linkcolor;
			hctmp.interwiki_buttonedit.addEventListener('click',function hciw_openedit() {
				var id = Number(this.parentNode.id.match(/interwiki_(\d+)/)[1]);
				var hc_interedit_select = document.createElement('select');
				hc_interedit_select.id = 'editinterwikikuerzel'+id;
				
				var hc_interedit_option = null;
				for (var i=0; i<hotcat.settings.wikis.length; i++) {
					hc_interedit_option = document.createElement('option');
					hc_interedit_option.title = hotcat.settings.wikis[i].name;
					if (hotcat.settings.wikis[i].id=="de" || hotcat.getWikiById("de").installed_iws.indexOf(hotcat.settings.wikis[i].id) == -1) hc_interedit_option.disabled = true;
					if (hotcat.settings.wikis[i].id==hotcat.interwikis.array[id].id) hc_interedit_option.selected = true;
					hc_interedit_option.appendChild(document.createTextNode(hotcat.settings.wikis[i].id));
					hc_interedit_select.appendChild(hc_interedit_option);
				}
				var hc_interedit_input = document.createElement('input');
				hc_interedit_input.value = hotcat.interwikis.array[id].title;
				hc_interedit_input.style.width = '250px';
				hc_interedit_input.id = 'interwikiedit'+id;
				
				var hc_interedit_savebutton = document.createElement('input');
				hc_interedit_savebutton.title = id;//Zwischenspeicher der ID
				hc_interedit_savebutton.addEventListener('click',function hciw_editsubmit() {
					var id = this.title;
					var newid = hotcat.settings.wikis[document.getElementById("editinterwikikuerzel"+id).selectedIndex].id;
					var newtitle = document.getElementById("interwikiedit"+id).value;
					if (hotcat.interwikis.array[id].id!=newid || hotcat.interwikis.array[id].title!=newtitle) {
						hotcat.interwikis.array[id].id = newid;
						hotcat.interwikis.array[id].title = newtitle;
						hotcat.interwikis.array[id].canedit = false;
						hotcat.interwikis.array[id].newlinks = [];
						hotcat.interwikis.load(newid, newtitle);
					}
					hotcat.interwikis.redraw();
					hotcat.interwikis.cleanup();
				});
				hc_interedit_savebutton.type = 'button';
				hc_interedit_savebutton.value = 'Übernehmen';
				
				var hc_interedit_cancelbutton = document.createElement('input');
				hc_interedit_cancelbutton.addEventListener('click',hotcat.interwikis.redraw);
				hc_interedit_cancelbutton.type = 'button';
				hc_interedit_cancelbutton.value = 'Abbrechen';
				
				document.getElementById("interwiki_"+id).removeChild(document.getElementById("interwiki_"+id).getElementsByTagName("a")[document.getElementById("interwiki_"+id).getElementsByTagName("a").length-1]);
				
				document.getElementById("interwiki_"+id).appendChild(document.createTextNode('[['));
				document.getElementById("interwiki_"+id).appendChild(hc_interedit_select);
				document.getElementById("interwiki_"+id).appendChild(document.createTextNode(':'));
				document.getElementById("interwiki_"+id).appendChild(hc_interedit_input);
				document.getElementById("interwiki_"+id).appendChild(document.createTextNode(']] '));
				document.getElementById("interwiki_"+id).appendChild(hc_interedit_savebutton);
				document.getElementById("interwiki_"+id).appendChild(document.createTextNode(' '));
				document.getElementById("interwiki_"+id).appendChild(hc_interedit_cancelbutton);
			});
		} else {
			hctmp.interwiki_buttonedit.style.color = '#bbb';
		}
		
		hctmp.interwiki_icon = document.createElement("img");
		if (hotcat.interwikis.array[i].isFA == "false") {
			hctmp.interwiki_icon.src='/w/skins/MonoBook/bullet.gif';
			hctmp.interwiki_icon.style.display='none';
		} else if (hotcat.interwikis.array[i].isFA == "CA") {
			hctmp.interwiki_icon.src='/w/images/8/82/CA-Icon.png';
		} else if (hotcat.interwikis.array[i].isFA == "GA") {
			hctmp.interwiki_icon.src='/w/images/thumb/3/32/Haken.svg/10px-Haken.svg.png';
		} else if (hotcat.interwikis.array[i].isFA == "FA") {
			hctmp.interwiki_icon.src='/w/images/thumb/b/be/FA-Sternchen.svg/10px-FA-Sternchen.svg.png';
		}
		
		hctmp.interwiki_link = document.createElement("a");
		hctmp.interwiki_link.href='/wiki/'+hotcat.interwikis.array[i].id+':'+encodeURIComponent(hotcat.interwikis.array[i].title.replace(/ /g, "_"));
		hctmp.interwiki_link.setAttribute('target','_blank');
		hctmp.interwiki_link.appendChild(document.createTextNode(hotcat.interwikis.array[i].id+':'+hotcat.interwikis.array[i].title));
		
		hctmp.interwiki_line.appendChild(hctmp.interwiki_buttondel);
		hctmp.interwiki_line.appendChild(document.createTextNode(' '));
		hctmp.interwiki_line.appendChild(hctmp.interwiki_buttonedit);
		hctmp.interwiki_line.appendChild(document.createTextNode(' '));
		hctmp.interwiki_line.appendChild(hctmp.interwiki_icon);
		hctmp.interwiki_line.appendChild(document.createTextNode(' '));
		hctmp.interwiki_line.appendChild(hctmp.interwiki_link);
		switch (hotcat.interwikis.array[i].type) {
			case 'kanon':
				hctmp.interwiki_line.appendChild(document.createTextNode(' (KANON)'));
				break;
			case 'legends':
				hctmp.interwiki_line.appendChild(document.createTextNode(' (LEGENDS)'));
				break;
		}
		
		document.getElementById("interwikilist").appendChild(hctmp.interwiki_line);
	}
	
	var cnt=0; hctmp.preseliw="";
	while (cnt < hotcat.settings.biggest_wikis.length) {//Auswahl des Wikis, das in der Auswahl vorgeblendet werden soll
		var nolink=true;
		for (var i=0; i<hotcat.interwikis.array.length; i++) {
			if (hotcat.interwikis.array[i].id==hotcat.settings.biggest_wikis[cnt]) {nolink=false; break;}
		}
		if (nolink==true) {//Wenn es den InterWiki-Link in dieser Sprache noch nicht gibt
			hctmp.preseliw=hotcat.settings.biggest_wikis[cnt];//größtes Wiki speichern
			break;
		} else {//Wenn es den InterWiki-Link gibt
			cnt++;//prüfe nächste Sprache
		}
	}
	document.getElementById("addinterwikikuerzel").selectedIndex = hotcat.settings.interwiki_codes[hctmp.preseliw];
}

//Aktualisiert die Liste mit den fehlenden/falschen/zu ergänzenden Interwiki-Links
hotcat.interwikis.cleanup = function() {
	if (hotcat.interwikis.loadstatus < hotcat.interwikis.array.length && document.getElementById("interwiki_cleanup_loadingstatus")) {
		document.getElementById("interwiki_cleanup_loadingstatus").innerHTML = hotcat.interwikis.loadstatus;
		return;
	}
	var hctmp = {};
	
	hotcat.makeempty("interwiki_cleanup");

	//----------------- ANALYSE -------------------
	var hotinter_newlinks=[];//Links, die in Jedipedia fehlen -> [2,3] hat einen Link [0,1], der bei Jedipedia fehlt
	var hotinter_nolinks=[];//Links, die woanders fehlen -> Bei [2,3] fehlt der Link [0,1]
	var hotinter_difflinks=[];//Links, die woanders anders sind -> [2,3] hat einen anderen Link als Jedipedia für [0,1]
	for (var i=0; i<hotcat.interwikis.array.length; i++) {
		if (hotcat.interwikis.array[i].canedit) {
			var hctmp_jpcopy = hotcat.interwikis.array.slice(0);//Erzeuge Kopien, die verändert werden dürfen
			hctmp_jpcopy.push({id:"de", title:hotcat.curpage.replace(/_/g, " ")});
			var hctmp_wikiacopy = hotcat.interwikis.array[i].newlinks.slice(0);
			hctmp_wikiacopy.unshift({id:hotcat.interwikis.array[i].id, title:hotcat.interwikis.array[i].title});

			OuterLoop: for (var j=0; j<hctmp_jpcopy.length; j++) {
				var hctmp_iwcodeinarray = false;
				InnerLoop: for (var k=0; k<hctmp_wikiacopy.length; k++) {
					if (hctmp_wikiacopy[k] == null) continue InnerLoop;
					if (hctmp_jpcopy[j].id == hctmp_wikiacopy[k].id) {//Wenn das Kürzel in beiden Arrays enthalten ist
						hctmp_iwcodeinarray = true;
						if (hctmp_jpcopy[j].title == hctmp_wikiacopy[k].title) {//Wenn die Lemmas identisch sind
							hctmp_jpcopy[j] = null;
						} else {//Wenn die Lemmas unterschiedlich sind
							hotinter_difflinks.push([hctmp_wikiacopy[k].id,hctmp_wikiacopy[k].title,hotcat.interwikis.array[i].id,hotcat.interwikis.array[i].title]);
						}
						hctmp_wikiacopy[k] = null;
						break InnerLoop;
					}
				}
				if (hctmp_iwcodeinarray == false) {//Wenn das Kürzel nur bei Jedipedia ist
					if (hctmp_jpcopy[j].id != hotcat.interwikis.array[i].id) {//Ergänze nur, wenn der Link zu einem anderen Wiki zeigt
						innerLoop: for (var k=0; k<hotcat.getWikiById(hotcat.interwikis.array[i].id).installed_iws.length; k++) {
							if (hotcat.getWikiById(hotcat.interwikis.array[i].id).installed_iws[k] == hctmp_jpcopy[j].id) {//Und wenn das Wiki den Link akzeptiert
								hotinter_nolinks.push([hctmp_jpcopy[j].id,hctmp_jpcopy[j].title,hotcat.interwikis.array[i].id,hotcat.interwikis.array[i].title]);
							}
						}
					}
				}
			}
			for (var j=0; j<hctmp_wikiacopy.length; j++) {//Wenn ein Link bei Jedipedia fehlt
				if (hctmp_wikiacopy[j]!=null) {
					hotinter_newlinks.push([hctmp_wikiacopy[j].id,hctmp_wikiacopy[j].title,hotcat.interwikis.array[i].id,hotcat.interwikis.array[i].title]);
				}
			}
		}
	}

	//------------- Neue Interwiki-Links -------------
	//Links, die in Jedipedia fehlen -> [2,3] hat einen Link [0,1], der bei Jedipedia fehlt
	hctmp.cleannew_list = document.createElement("ul");
	if(hctmp.cleannew_list.classList) {
		hctmp.cleannew_list.classList.add("hc_editlist");
	} else {
		hctmp.cleannew_list.className += " hc_editlist";
	} 
	hctmp.cleannew_list.id = 'hotcat_newiwlinks';
	for (var j=0; j<hotinter_newlinks.length; j++) {
		if (hotinter_newlinks[j][0] != hotinter_newlinks[j][2] && hotinter_newlinks[j][0] != "de") {
			hctmp.clean_line = document.createElement("li");
		  
			hctmp.cleanbuttoncustom = document.createElement("span");//Neuen Link bei Jedipedia ergänzen
			if (hotinter_newlinks[j][0]!="de") {
				hctmp.cleanbuttoncustom.title = "akzeptieren: Diesen Link bei Jedipedia ergänzen";
				hctmp.cleanbuttoncustom.id = "hccbb_"+j;
				hctmp.cleanbuttoncustom.style.cursor = 'pointer';
				hctmp.cleanbuttoncustom.style.color = hotcat.settings.linkcolor;
				hctmp.cleanbuttoncustom.addEventListener('click', function hciw_add_new_link_to_jp() {
					var id = Number(this.id.match(/^hccbb_(\d+)$/)[1]);
					hotcat.interwikis.add(hotinter_newlinks[id][0], hotinter_newlinks[id][1]);
				});
			} else {
				hctmp.cleanbuttoncustom.style.color = '#bbb'; 
			}
			hctmp.cleanbuttoncustom.appendChild(document.createTextNode('√'));
			
			// hctmp.cleanbuttondel = document.createElement("span");//Falschen Link aus Ursprungswiki entfernen
			// hctmp.cleanbuttondel.title = "ablehnen: Diesen Link aus "+hotinter_newlinks[j][2]+" entfernen";
			// hctmp.cleanbuttondel.id = "hccbc_"+j;
			// hctmp.cleanbuttondel.style.cursor = 'pointer';
			// hctmp.cleanbuttondel.style.color = hotcat.settings.linkcolor;
			// hctmp.cleanbuttondel.addEventListener('click', function hciw_delete_wrong_link_from_wiki() {
			// 	var id = Number(this.id.match(/^hccbc_(\d+)$/)[1]);
			// 	var tmplinks = hotcat.interwikis.getById(hotinter_newlinks[id][2]).newlinks;
			// 	for (var j=0; j<tmplinks.length; j++) {
			// 		if (tmplinks[j].id == hotinter_newlinks[id][0]) tmplinks.splice(j,1);
			// 	}
			// 	hotcat.interwikis.cleanup();
			// });
			// hctmp.cleanbuttondel.appendChild(document.createTextNode('X'));
			
			hctmp.cleanlinkfrom = document.createElement("a");
			hctmp.cleanlinkfrom.href = '/wiki/'+hotinter_newlinks[j][2]+':'+encodeURIComponent(hotinter_newlinks[j][3]);
			hctmp.cleanlinkfrom.setAttribute('target','_blank');
			hctmp.cleanlinkfrom.appendChild(document.createTextNode(hotinter_newlinks[j][2]+':'+hotinter_newlinks[j][3]));

			hctmp.cleanlinkto = document.createElement("a");
			hctmp.cleanlinkto.href = '/wiki/'+hotinter_newlinks[j][0]+':'+encodeURIComponent(hotinter_newlinks[j][1]);
			hctmp.cleanlinkto.setAttribute('target','_blank');
			hctmp.cleanlinkto.appendChild(document.createTextNode(hotinter_newlinks[j][0]+':'+hotinter_newlinks[j][1]));
					
			hctmp.clean_line.appendChild(hctmp.cleanbuttoncustom);
			hctmp.clean_line.appendChild(document.createTextNode(' '));
			// hctmp.clean_line.appendChild(hctmp.cleanbuttondel);
			// hctmp.clean_line.appendChild(document.createTextNode(' '));
			hctmp.clean_line.appendChild(hctmp.cleanlinkfrom);
			hctmp.clean_line.appendChild(document.createTextNode(' hat noch den Link '));
			hctmp.clean_line.appendChild(hctmp.cleanlinkto);
			hctmp.cleannew_list.appendChild(hctmp.clean_line);
		}
	}
	if (hctmp.cleannew_list.childNodes.length > 0) {
		hctmp.cleannew_head1 = document.createElement('h4');
		hctmp.cleannew_head1.appendChild(document.createTextNode('Andere Wikis haben weitere Links, die noch nicht in Jedipedia stehen:'));
		hctmp.cleannew_head2 = document.createElement('p');
		hctmp.cleannew_head2.style.color = '#555';
		hctmp.cleannew_head2.style.fontSize = 'x-small';
		hctmp.cleannew_head2.appendChild(document.createTextNode('Auf den Haken klicken, um den Link bei Jedipedia zu ergänzen.'));
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleannew_head1);
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleannew_head2);
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleannew_list);
	}
	
	//------------- Fehlende Interwiki-Links -------------
	//Links aus Jedipedia, die woanders fehlen -> Bei [2,3] fehlt der Link [0,1]
	hctmp.cleanmiss_list = document.createElement("ul");
	if (hctmp.cleanmiss_list.classList) {
		hctmp.cleanmiss_list.classList.add("hc_editlist");
	} else {
		hctmp.cleanmiss_list.className += " hc_editlist";
	}
	hctmp.cleanmiss_list.id = 'hotcat_noiwlinks';
	for (var j=0; j<hotinter_nolinks.length; j++) {
		hctmp.clean_line = document.createElement("li");
		
		// hctmp.cleanbuttoncustom = document.createElement("span");//Link laut Jedipedia in diesem Wiki neu einfügen
		// hctmp.cleanbuttoncustom.title = "akzeptieren";
		// hctmp.cleanbuttoncustom.id = "hccbd_"+j;
		// hctmp.cleanbuttoncustom.style.cursor = 'pointer';
		// hctmp.cleanbuttoncustom.style.color = hotcat.settings.linkcolor;
		// hctmp.cleanbuttoncustom.addEventListener('click', function hciw_add_new_to_other_wiki() {
		// 	var id = Number(this.id.match(/^hccbd_(\d+)$/)[1]);
		// 	hotcat.interwikis.add2wiki(hotinter_nolinks[id][2], hotinter_nolinks[id][0], hotinter_nolinks[id][1]);
		// });
		// hctmp.cleanbuttoncustom.appendChild(document.createTextNode('√'));
		
		// hctmp.cleanbuttondel = document.createElement("span");//Falschen Link aus Jedipedia entfernen
		// hctmp.cleanbuttondel.title = "ablehnen";
		// hctmp.cleanbuttondel.id = "hccbe_"+hotinter_nolinks[j][0];
		// hctmp.cleanbuttondel.style.cursor = 'pointer';
		// hctmp.cleanbuttondel.style.color = hotcat.settings.linkcolor;
		// hctmp.cleanbuttondel.addEventListener('click', function hciw_delete_wrong_from_jp() {
		// 	var id = Number(this.id.match(/^hccbe_(\d+)$/)[1]);
		// 	hotcat.interwikis.delfromwiki("de", id, "");
		// });
		// hctmp.cleanbuttondel.appendChild(document.createTextNode('X'));
		
		hctmp.cleanlinkfrom = document.createElement("a");
		hctmp.cleanlinkfrom.href = '/wiki/'+hotinter_nolinks[j][2]+':'+encodeURIComponent(hotinter_nolinks[j][3]);
		hctmp.cleanlinkfrom.setAttribute('target','_blank');		
		hctmp.cleanlinkfrom.appendChild(document.createTextNode(hotinter_nolinks[j][2]+':'+hotinter_nolinks[j][3]));
		
		hctmp.cleanlinkto = document.createElement("a");
		if (hotinter_nolinks[j][0]!="de") {
			hctmp.cleanlinkto.href = '/wiki/'+hotinter_nolinks[j][0]+':'+encodeURIComponent(hotinter_nolinks[j][1]);
		} else {
			hctmp.cleanlinkto.href = '/wiki/'+encodeURIComponent(hotinter_nolinks[j][1]);
		}
		hctmp.cleanlinkto.setAttribute('target','_blank');
		hctmp.cleanlinkto.appendChild(document.createTextNode(hotinter_nolinks[j][0]+':'+hotinter_nolinks[j][1]));
		
		// hctmp.clean_line.appendChild(hctmp.cleanbuttoncustom);
		// hctmp.clean_line.appendChild(document.createTextNode(' '));
		// hctmp.clean_line.appendChild(hctmp.cleanbuttondel);
		// hctmp.clean_line.appendChild(document.createTextNode(' '));
		hctmp.clean_line.appendChild(hctmp.cleanlinkfrom);
		hctmp.clean_line.appendChild(document.createTextNode(' hat nicht den Link '));
		hctmp.clean_line.appendChild(hctmp.cleanlinkto);
		hctmp.cleanmiss_list.appendChild(hctmp.clean_line);
	}
	if (hctmp.cleanmiss_list.childNodes.length > 0) {
		hctmp.cleanmiss_head1 = document.createElement('h4');
		hctmp.cleanmiss_head1.appendChild(document.createTextNode('Bei manchen Wikis fehlen Interwiki-Links:'));
		hctmp.cleanmiss_head2 = document.createElement('p');
		hctmp.cleanmiss_head2.style.color = '#555';
		hctmp.cleanmiss_head2.style.fontSize = 'x-small';
		hctmp.cleanmiss_head2.appendChild(document.createTextNode('Falls korrekt, kannst du diese Links manuell im jeweiligen Wiki einfügen.'));
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleanmiss_head1);
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleanmiss_head2);
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleanmiss_list);
	}
	
	//------------- Andere Interwiki-Links -------------
	//Links, die woanders anders sind -> [2,3] hat einen anderen Link als Jedipedia für [0,1]
	hctmp.cleandiff_list = document.createElement("ul");
	if (hctmp.cleandiff_list.classList) {
		hctmp.cleandiff_list.classList.add("hc_editlist");
	} else {
		hctmp.cleandiff_list.className += " hc_editlist";
	}
	hctmp.cleandiff_list.id = 'hotcat_newiwlinks';
	for (var i=0; i<hotinter_difflinks.length; i++) {
		diff_array_int=-1;
		for (var j=0; j<hotcat.interwikis.array.length; j++) {
			if (hotinter_difflinks[i][0] == hotcat.interwikis.array[j].id) diff_array_int=j;
		}
		
		hctmp.clean_line = document.createElement("li");
		
		// hctmp.cleanbuttoncustom = document.createElement("span");//Korrigiert den Link, sodass er identisch mit dem Jedipedia-Link ist
		// hctmp.cleanbuttoncustom.title = "korrigieren";
		// hctmp.cleanbuttoncustom.id = "hccbf_"+hotinter_difflinks[i][2]+'_'+hotinter_difflinks[i][0];
		// hctmp.cleanbuttoncustom.style.cursor = 'pointer';
		// hctmp.cleanbuttoncustom.style.color = hotcat.settings.linkcolor;
		// hctmp.cleanbuttoncustom.addEventListener('click', function hciw_update_link_to_jedipedia_link() {
		// 	var tmpmatch = this.id.match(/^hccbf_(.+)_(.+)$/);
		// 	var wiki2edit = tmpmatch[1];
		// 	var link2edit = tmpmatch[2];
		// 	var tmpwiki = hotcat.interwikis.getById(wiki2edit);
		// 	for (j=0; j<tmpwiki.newlinks.length; j++) {
		// 		if (tmpwiki.newlinks[j].id == link2edit) {
		// 			if (link2edit=="de") tmpwiki.newlinks[j].title=hotcat.curpage.replace(/_/g, " "); else tmpwiki.newlinks[j].title=hotcat.interwikis.getById(link2edit).title;
		// 		}
		// 	}
		// 	hotcat.interwikis.cleanup();
		// });
		// hctmp.cleanbuttoncustom.appendChild(document.createTextNode('√'));

		// hctmp.cleanbuttondel = document.createElement("span");//Übernimmt den Link von der jeweiligen Seite für Jedipedia
		// if (hotinter_difflinks[i][0]!="de") {
		// 	hctmp.cleanbuttondel.title = "übernehmen";
		// 	hctmp.cleanbuttondel.id = "hccbg_"+i;
		// 	hctmp.cleanbuttondel.style.cursor = 'pointer';
		// 	hctmp.cleanbuttondel.style.color = hotcat.settings.linkcolor;
		// 	hctmp.cleanbuttondel.addEventListener('click', function hciw_copy_link_to_jedipedia() {
		// 		var id = Number(this.id.match(/^hccbg_(\d+)$/)[1]);
		// 		var tmpwiki = hotcat.interwikis.getById(hotinter_difflinks[id][0]);
		// 		tmpwiki.title = hotinter_difflinks[id][1];
		// 		tmpwiki.canedit = false;
		// 		hotcat.interwikis.load(tmpwiki.id, tmpwiki.title);
		// 		hotcat.interwikis.redraw();
		// 		hotcat.interwikis.cleanup();
		// 	});
		// } else {
		// 	hctmp.cleanbuttondel.style.color = "#bbb";
		// }
		// hctmp.cleanbuttondel.appendChild(document.createTextNode('X'));
		
		hctmp.cleanlinkfrom = document.createElement("a");
		hctmp.cleanlinkfrom.href = '/wiki/'+hotinter_difflinks[i][2]+':'+encodeURIComponent(hotinter_difflinks[i][3]);
		hctmp.cleanlinkfrom.setAttribute('target','_blank');
		hctmp.cleanlinkfrom.appendChild(document.createTextNode(hotinter_difflinks[i][2]+':'+hotinter_difflinks[i][3]));
		
		hctmp.cleanlinkto = document.createElement("a");
		if (hotinter_difflinks[i][0]!="de") {
			hctmp.cleanlinkto.href = '/wiki/'+hotinter_difflinks[i][0]+':'+encodeURIComponent(hotinter_difflinks[i][1]);
		} else {
			hctmp.cleanlinkto.href = '/wiki/'+encodeURIComponent(hotinter_difflinks[i][1]);
		}
		hctmp.cleanlinkto.setAttribute('target','_blank');
		hctmp.cleanlinkto.appendChild(document.createTextNode(hotinter_difflinks[i][0]+':'+hotinter_difflinks[i][1]));
		
		hctmp.cleanlink3 = document.createElement("a");
		hctmp.cleanlink3.setAttribute('target','_blank');
		
		if (hotinter_difflinks[i][0]=="de") {
			hctmp.cleanlink3.href = '/wiki/'+hotcat.curpage;
			hctmp.cleanlink3.appendChild(document.createTextNode('de:'+hotcat.curpage.replace(/_/g, " ")));
		} else {
			hctmp.cleanlink3.href = '/wiki/'+hotcat.interwikis.array[diff_array_int].id+':'+encodeURIComponent(hotcat.interwikis.array[diff_array_int].title);
			hctmp.cleanlink3.appendChild(document.createTextNode(hotcat.interwikis.array[diff_array_int].id+':'+hotcat.interwikis.array[diff_array_int].title));
		}
		
		// hctmp.clean_line.appendChild(hctmp.cleanbuttoncustom);
		// hctmp.clean_line.appendChild(document.createTextNode(' '));
		// hctmp.clean_line.appendChild(hctmp.cleanbuttondel);
		// hctmp.clean_line.appendChild(document.createTextNode(' '));
		hctmp.clean_line.appendChild(hctmp.cleanlinkfrom);
		hctmp.clean_line.appendChild(document.createTextNode(' hat den Interwiki-Link '));
		hctmp.clean_line.appendChild(hctmp.cleanlinkto);
		hctmp.clean_line.appendChild(document.createTextNode(' (Jedipedia hat '));
		hctmp.clean_line.appendChild(hctmp.cleanlink3);
		hctmp.clean_line.appendChild(document.createTextNode(')'));
		hctmp.cleandiff_list.appendChild(hctmp.clean_line);
	}
	if (hctmp.cleandiff_list.childNodes.length > 0) {
		hctmp.cleandiff_head1 = document.createElement('h4');
		hctmp.cleandiff_head1.appendChild(document.createTextNode('Manche Wikis haben andere Interwiki-Links:'));
		hctmp.cleandiff_head2 = document.createElement('p');
		hctmp.cleandiff_head2.style.color = '#555';
		hctmp.cleandiff_head2.style.fontSize = 'x-small';
		hctmp.cleandiff_head2.appendChild(document.createTextNode('Falls korrekt, kannst du diese Links manuell im jeweiligen Wiki korrigieren.'));
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleandiff_head1);
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleandiff_head2);
		document.getElementById("interwiki_cleanup").appendChild(hctmp.cleandiff_list);
	}
	
	//Wenn nichts gefunden wurde
	if (document.getElementById("interwiki_cleanup").childNodes.length == 0) {
		document.getElementById("interwiki_cleanup").appendChild(document.createTextNode('HotCat konnte nichts finden, was geändert werden sollte.'));
	}
}

//Sortiert das InterWiki-Links-Array nach Kürzeln
hotcat.sortInterwikis = function(a, b) {
	var a2=hotcat.settings.interwiki_codes[a.id];
	var b2=hotcat.settings.interwiki_codes[b.id];
	if (a2 > b2) return 1;
	if (a2 < b2) return -1;
	if (a.type != b.type) return (a.type > b.type) ? 1 : -1;
	return (a.title==b.title) ? 0 : (a.title>b.title)?1:-1;
}
hotcat.sortInterwikisPl = function(a, b) {
	var a2=hotcat.settings.interwiki_codes_pl[a.id];
	var b2=hotcat.settings.interwiki_codes_pl[b.id];
	if (a2 > b2) return 1;
	if (a2 < b2) return -1;
	if (a.type != b.type) return (a.type > b.type) ? 1 : -1;
	return (a.title==b.title) ? 0 : (a.title>b.title)?1:-1;
}

//Änderungen speichern
hotcat.submit = function() {
	var hctmp = {};
	//VARIABLEN
	hctmp.defaultsort=document.getElementById("defaultsort").value;
	if (hctmp.defaultsort==hotcat.curpage.replace(/_/g, " ")) hctmp.defaultsort="";
	hctmp.comment=document.getElementById("hotcatcomment").value;
	hctmp.qstype="";
	if (mw.config.get("wgNamespaceNumber")!=6) for (var i=0; i<hotcat.settings.qs_templates.length; i++) {if (hotcat.settings.qs_templates[i]=="QM")hotcat.settings.qs_templates.splice(i,1);}
	for (var i=0; i<document.getElementsByName("vorlagen").length; i++) {
		if (document.getElementsByName("vorlagen")[i].checked) hctmp.qstype = hotcat.settings.qs_templates[i];
	}
	if (hctmp.qstype=="keine Vorlage") hctmp.qstype="";
	hctmp.qsdesc=document.getElementById("qsvorlage_desc").value;

	hctmp.interwikis = [];
	for (var i=0; i<hotcat.interwikis.array.length; i++) {
		var tmpiwtext = hotcat.interwikis.array[i].id + ":" + hotcat.interwikis.array[i].title;
		// switch (hotcat.interwikis.array[i].type) {
		//	case 'kanon': tmpiwtext += '|kanon'; break;
		//	case 'legends': tmpiwtext += '|legends'; break;
		// }
		switch (hotcat.interwikis.array[i].isFA) {
			case "FA": tmpiwtext += '|fa'; break;
			case "GA": tmpiwtext += '|ga'; break;
			case "CA": tmpiwtext += '|ca'; break;
		}
		hctmp.interwikis.push(tmpiwtext);
	}

	//GUI
	hctmp.e = {};
	hctmp.e.submitstatusheadline = document.createElement("h3");
		
	hctmp.e.submitstatuslogo = document.createElement("img");
	hctmp.e.submitstatuslogo.src = '/w/thumb.php?f=HOTCAT+Logo.png&w=150';
	hctmp.e.submitstatuslogo.alt = 'HotCat';
		
	hctmp.e.submitstatusheadline.appendChild(hctmp.e.submitstatuslogo);
	hctmp.e.submitstatusheadlinetext = document.createElement('span');
	hctmp.e.submitstatusheadlinetext.id = "hc_submit_heading";
	hctmp.e.submitstatusheadlinetext.appendChild(document.createTextNode(' arbeitet…'));
	hctmp.e.submitstatusheadline.appendChild(hctmp.e.submitstatusheadlinetext);
		
	hctmp.e.submitstatuswarning = document.createElement('h4');
	hctmp.e.submitstatuswarning.id = "hc_submit_warning";
	hctmp.e.submitstatuswarning.appendChild(document.createTextNode('Bitte schließe das Fenster erst, wenn die Änderungen abgeschlossen sind und die Bestätigung erscheint!'));
		
	hctmp.e.submitstatuslist = document.createElement('ul');
	hctmp.e.submitstatuslist.id = 'submitstatus_table';
		
	hctmp.e.lineinsert_working = document.createElement('li');
	hctmp.e.lineinsert_working_img = document.createElement('img');
	hctmp.e.lineinsert_working_img.id = 'submitstatus_img_de';
	hctmp.e.lineinsert_working_img.src= '/w/images/d/de/Ajax-loader.gif';
	hctmp.e.lineinsert_working_status = document.createElement('span');
	hctmp.e.lineinsert_working_status.id = 'submitstatus_status_de';
	hctmp.e.lineinsert_working_status.appendChild(document.createTextNode(' de: Seite wird geändert...'));
	hctmp.e.lineinsert_working.appendChild(hctmp.e.lineinsert_working_img);
	hctmp.e.lineinsert_working.appendChild(hctmp.e.lineinsert_working_status);
	hctmp.e.submitstatuslist.appendChild(hctmp.e.lineinsert_working);

	while (document.getElementById("hotcat").firstChild) {document.getElementById("hotcat").removeChild(document.getElementById("hotcat").firstChild);}
	document.getElementById("hotcat").appendChild(hctmp.e.submitstatusheadline);
	document.getElementById("hotcat").appendChild(hctmp.e.submitstatuswarning);
	document.getElementById("hotcat").appendChild(hctmp.e.submitstatuslist);
		
	hotcat.submit_counter = 1;

	//--- HTTP-Request für Jedipedia ---
	var hctmp_updatede = getXmlHttpRequestObject();
	if (hctmp_updatede.readyState == 4 || hctmp_updatede.readyState == 0) {
		hctmp_updatede.open("POST", '/scripts/hotcat.php?mode=submit&title='+encodeURIComponent(hotcat.curpage), true);
		hctmp_updatede.onreadystatechange = function() {
			if (this.readyState != 4) return;
			document.getElementById("submitstatus_img_de").src = '/w/images/thumb/3/32/Haken.svg/10px-Haken.svg.png';
			document.getElementById("submitstatus_status_de").firstChild.data += " Fertig! ";

			if (this.responseText.substring(0,11)==="OK=nochange") {
				var tmpstatus = document.createElement("span");
				tmpstatus.style.fontStyle = "italic";	
				tmpstatus.appendChild(document.createTextNode("keine Änderung"));
				document.getElementById("submitstatus_status_de").appendChild(tmpstatus);
			} else if (this.responseText.substring(0,8)==="OK=diff=") {
				var tmpstatus = document.createElement("a");
				tmpstatus.href = this.responseText.substring(8);
				tmpstatus.appendChild(document.createTextNode("Versionsunterschied"));
				document.getElementById("submitstatus_status_de").appendChild(tmpstatus);
			} else if (this.responseText.substring(0,8)==="MWERROR=") {
				var tmperror = this.responseText.substring(8);
				var tmpstatus = document.createElement("span");
				tmpstatus.style.fontWeight = "bold";
				switch (tmperror) {
				case "protectedpage": tmpstatus.appendChild(document.createTextNode("Fehler: Diese Seite ist für das Bearbeiten gesperrt.")); break;
				default: tmpstatus.appendChild(document.createTextNode("Fehler: " + tmperror));
				}
				document.getElementById("submitstatus_status_de").appendChild(tmpstatus);
			} else if (this.responseText.substring(0,6)==="ERROR=") {
				var tmpstatus = document.createElement("span");
				tmpstatus.style.fontWeight = "bold";
				tmpstatus.appendChild(document.createTextNode("Fehler (bitte melden): " + this.responseText.substring(6).replace(/</g,"&lt;")));
				document.getElementById("submitstatus_status_de").appendChild(tmpstatus);
			} else {
				var tmpstatus = document.createElement("span");
				tmpstatus.style.fontWeight = "bold";
				tmpstatus.appendChild(document.createTextNode("Fehler (bitte melden): "));
				document.getElementById("submitstatus_status_de").appendChild(tmpstatus);
				document.getElementById("submitstatus_status_de").appendChild(document.createTextNode(this.responseText.replace(/</g,"&lt;")));
			}
			hotcat.checkifdone();
		};
		hctmp_updatede.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		hctmp_updatede.send('dosubmit=true&defaultsort='+encodeURIComponent(hctmp.defaultsort)+'&newcats='+encodeURIComponent(hotcat.categories.array.join("["))+'&interwiki='+encodeURIComponent(hctmp.interwikis.join("["))+'&summarycomment='+encodeURIComponent(hctmp.comment)+'&qstype='+encodeURIComponent(hctmp.qstype)+'&qsdesc='+encodeURIComponent(hctmp.qsdesc));
	}
}

hotcat.checkifdone = function() {
	hotcat.submit_counter--;
	if (hotcat.submit_counter < 0) {
		document.getElementById("hc_submit_heading").firstChild.data=" ist fertig!";
		document.getElementById("hc_submit_warning").firstChild.data="Das Fenster kann nun geschlossen werden. Bitte aktualisiere die Seite, wenn du weitere Änderungen durchführen willst.";
	}
}

//Starte HotCat, wenn die Seite geladen wurde
$(document).ready(hotcat.addlink);