MediaWiki:Gadget-CatGenForm.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
WHiTY (Diskussion | Beiträge) |
WHiTY (Diskussion | Beiträge) |
||
| Zeile 31: | Zeile 31: | ||
'manufacturer_en': 'Hersteller (en):', | 'manufacturer_en': 'Hersteller (en):', | ||
'manufacturer_es': 'Hersteller (es):', | 'manufacturer_es': 'Hersteller (es):', | ||
| + | 'manufacturer_it': 'Hersteller (it):', | ||
'manufacturer_nl': 'Hersteller (nl):', | 'manufacturer_nl': 'Hersteller (nl):', | ||
| − | |||
'manufacturer_ru': 'Hersteller (ru):', | 'manufacturer_ru': 'Hersteller (ru):', | ||
'getPageTitle': 'Holt den aktuellen Seitentitel', | 'getPageTitle': 'Holt den aktuellen Seitentitel', | ||
'letters_de': 'Buchstaben (de):', | 'letters_de': 'Buchstaben (de):', | ||
| + | 'letters_en': 'Buchstaben (en):', | ||
| + | 'letters_es': 'Buchstaben (es):', | ||
| + | 'letters_it': 'Buchstaben (it):', | ||
| + | 'letters_nl': 'Buchstaben (nl):', | ||
| + | 'letters_ru': 'Buchstaben (ru):', | ||
'options': 'Optionen:', | 'options': 'Optionen:', | ||
'overwriteExisting': 'Überschreiben von bestehenden Vorlagen/Kategorien', | 'overwriteExisting': 'Überschreiben von bestehenden Vorlagen/Kategorien', | ||
| Zeile 90: | Zeile 95: | ||
'getPageTitle': 'Get current page title', | 'getPageTitle': 'Get current page title', | ||
'letters_de': 'Letters (de):', | 'letters_de': 'Letters (de):', | ||
| + | 'letters_en': 'Letters (en):', | ||
| + | 'letters_es': 'Letters (es):', | ||
| + | 'letters_it': 'Letters (it):', | ||
| + | 'letters_nl': 'Letters (nl):', | ||
| + | 'letters_ru': 'Letters (ru):', | ||
'options': 'Options:', | 'options': 'Options:', | ||
'overwriteExisting': 'Overwrite existing templates/categories', | 'overwriteExisting': 'Overwrite existing templates/categories', | ||
| Zeile 934: | Zeile 944: | ||
'<td style="vertical-align:top"><label for="Hersteller_en">' + getUIText('manufacturer_en') + '</label></td>' + | '<td style="vertical-align:top"><label for="Hersteller_en">' + getUIText('manufacturer_en') + '</label></td>' + | ||
'<td><input id="Hersteller_en" type="text" size="50" value=""></td>' + | '<td><input id="Hersteller_en" type="text" size="50" value=""></td>' + | ||
| − | '<td style="vertical-align:top"><label for="Buchstabe_en"> | + | '<td style="vertical-align:top"><label for="Buchstabe_en">' + getUIText('letters_en') + '</label></td>' + |
'<td><input id="Buchstabe1_en" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | '<td><input id="Buchstabe1_en" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | ||
'<input id="Buchstabe2_en" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | '<input id="Buchstabe2_en" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | ||
| Zeile 940: | Zeile 950: | ||
'<td style="vertical-align:top"><label for="Hersteller_es">' + getUIText('manufacturer_es') + '</label></td>' + | '<td style="vertical-align:top"><label for="Hersteller_es">' + getUIText('manufacturer_es') + '</label></td>' + | ||
'<td><input id="Hersteller_es" type="text" size="50" value=""></td>' + | '<td><input id="Hersteller_es" type="text" size="50" value=""></td>' + | ||
| − | '<td style="vertical-align:top"><label for="Buchstabe_es"> | + | '<td style="vertical-align:top"><label for="Buchstabe_es">' + getUIText('letters_es') + '</label></td>' + |
'<td><input id="Buchstabe1_es" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | '<td><input id="Buchstabe1_es" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | ||
'<input id="Buchstabe2_es" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | '<input id="Buchstabe2_es" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | ||
| Zeile 946: | Zeile 956: | ||
'<td style="vertical-align:top"><label for="Hersteller_it">' + getUIText('manufacturer_it') + '</label></td>' + | '<td style="vertical-align:top"><label for="Hersteller_it">' + getUIText('manufacturer_it') + '</label></td>' + | ||
'<td><input id="Hersteller_it" type="text" size="50" value=""></td>' + | '<td><input id="Hersteller_it" type="text" size="50" value=""></td>' + | ||
| − | '<td style="vertical-align:top"><label for="Buchstabe_it"> | + | '<td style="vertical-align:top"><label for="Buchstabe_it">' + getUIText('letters_it') + '</label></td>' + |
'<td><input id="Buchstabe1_it" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | '<td><input id="Buchstabe1_it" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | ||
'<input id="Buchstabe2_it" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | '<input id="Buchstabe2_it" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | ||
| Zeile 952: | Zeile 962: | ||
'<td style="vertical-align:top"><label for="Hersteller_nl">' + getUIText('manufacturer_nl') + '</label></td>' + | '<td style="vertical-align:top"><label for="Hersteller_nl">' + getUIText('manufacturer_nl') + '</label></td>' + | ||
'<td><input id="Hersteller_nl" type="text" size="50" value=""></td>' + | '<td><input id="Hersteller_nl" type="text" size="50" value=""></td>' + | ||
| − | '<td style="vertical-align:top"><label for="Buchstabe_nl"> | + | '<td style="vertical-align:top"><label for="Buchstabe_nl">' + getUIText('letters_nl') + '</label></td>' + |
'<td><input id="Buchstabe1_nl" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | '<td><input id="Buchstabe1_nl" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | ||
'<input id="Buchstabe2_nl" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | '<input id="Buchstabe2_nl" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | ||
| Zeile 958: | Zeile 968: | ||
'<td style="vertical-align:top"><label for="Hersteller_ru">' + getUIText('manufacturer_ru') + '</label></td>' + | '<td style="vertical-align:top"><label for="Hersteller_ru">' + getUIText('manufacturer_ru') + '</label></td>' + | ||
'<td><input id="Hersteller_ru" type="text" size="50" value=""></td>' + | '<td><input id="Hersteller_ru" type="text" size="50" value=""></td>' + | ||
| − | '<td style="vertical-align:top"><label for="Buchstabe_ru"> | + | '<td style="vertical-align:top"><label for="Buchstabe_ru">' + getUIText('letters_ru') + '</label></td>' + |
'<td><input id="Buchstabe1_ru" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | '<td><input id="Buchstabe1_ru" type="text" size="1" value="" style="text-transform:uppercase;"> ' + | ||
'<input id="Buchstabe2_ru" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | '<input id="Buchstabe2_ru" type="text" size="1" value="" style="text-transform:uppercase;"></td>' + | ||
Version vom 22. März 2025, 20:12 Uhr
/* Global Vars */
/* Last Edit MS for MW 1.35 22.03.25 */
var catGenFormConf = mw.config.get(['wgUserGroups', 'wgServer', 'wgScriptPath', 'wgAction', 'wgGenUseTextSummary', 'wgGenOverwrite', 'wgPageName', 'wgUserLanguage']);
/* ------------------------------------------------ */
/* Script zum Erstellen von Vorlagen und Kategorien */
/* ------------------------------------------------ */
// UI Text translations
var uiTexts = {
'de': {
'waitingForToken': 'Token wird angefordert ...',
'userStopped': 'Auf Benutzerwunsch abgebrochen - eine neue Vorschau wird erstellt ...',
'finished': 'BEENDET - neue Vorschau wird erstellt ...',
'unknownError': 'Unbekannter Fehler',
'error': 'Fehler',
'previewCreated': 'Vorschau wird erstellt für:',
'checkTemplates': 'Vor dem Erstellen der Vorlagen und Kategorien bitte die Namen und Inhalte überprüfen ...',
'upToDate': 'Inhalt ist bereits aktuell',
'currentContent': 'Aktueller Inhalt:',
'noTypeSelected': 'Es ist kein Typ gewählt!',
'mustDeleteSpecificType': 'Es können nur Vorlagen und Kategorien eines bestimmten ## gelöscht werden!',
'manufacturer': 'Herstellers',
'type': 'Typs',
'viewModeOnly': 'Der Vorlagen und Kategorien-Generator kann nur im Anzeigemodus verwendet werden',
'templateCategoryGenerator': 'Vorlagen und Kategorien-Generator',
'categoriesTemplatesGenerator': 'Vorlagen- und Kategoriegenerator',
'parameters': 'Parameter',
'manufacturer_de': 'Hersteller (de):',
'manufacturer_en': 'Hersteller (en):',
'manufacturer_es': 'Hersteller (es):',
'manufacturer_it': 'Hersteller (it):',
'manufacturer_nl': 'Hersteller (nl):',
'manufacturer_ru': 'Hersteller (ru):',
'getPageTitle': 'Holt den aktuellen Seitentitel',
'letters_de': 'Buchstaben (de):',
'letters_en': 'Buchstaben (en):',
'letters_es': 'Buchstaben (es):',
'letters_it': 'Buchstaben (it):',
'letters_nl': 'Buchstaben (nl):',
'letters_ru': 'Buchstaben (ru):',
'options': 'Optionen:',
'overwriteExisting': 'Überschreiben von bestehenden Vorlagen/Kategorien',
'useSummary': 'Neuen Inhalt als Zusammenfassung / Kommentar benutzen',
'preview': 'Vorschau',
'generatePreview': 'Erzeugt eine Vorschau der Vorlagen und Kategorien mit Inhalten',
'new': 'Neu',
'resetParams': 'Setzt die Parameter zurück und löscht alle Eingaben',
'close': 'Schließen',
'closeGenerator': 'Beendet den Vorlagen und Kategorien-Generator',
'debugInfo': 'Debuginfo',
'previewTemplates': 'Vorschau Kategorievorlagen',
'previewCategories': 'Vorschau Kategorien',
'usedTemplates': 'Verwendete Vorlagen (werden nicht automatisch erstellt)',
'summary': 'Zusammenfassung / Kommentar:',
'status': 'Status:',
'create': 'Erstellen',
'createTemplatesCategories': 'Erstellt die Vorlagen und Kategorien gemäß der Vorschau mit den angezeigten Inhalten',
'cancel': 'Abbrechen',
'interruptProcessing': 'Die Abarbeitung der Erstellung und des Löschens von Vorlagen und Kategorien wird unterbrochen',
'delete': 'Löschen',
'deleteTemplatesCategories': 'Löscht die Vorlagen und Kategorien gemäß der Vorschau',
'automaticallyCreated': 'Mit neuer Vorlage automatisch erstellt',
'automaticallyDeleted': 'automatisch gelöscht',
'beingWritten': 'wird mit',
'written': 'geschrieben',
'beingDeleted': 'wird gelöscht',
'showingResult': 'Zeige Ergebnis:'
},
'en': {
'waitingForToken': 'Token is being requested ...',
'userStopped': 'Stopped by user request - new preview is being created ...',
'finished': 'FINISHED - new preview is being created ...',
'unknownError': 'Unknown error',
'error': 'Error',
'previewCreated': 'Preview is being created for:',
'checkTemplates': 'Before creating templates and categories, please check the names and contents ...',
'upToDate': 'Content is up to date',
'currentContent': 'Current content:',
'noTypeSelected': 'No type is selected!',
'mustDeleteSpecificType': 'Only templates and categories of a specific ## can be deleted!',
'manufacturer': 'manufacturer',
'type': 'type',
'viewModeOnly': 'The Template and Category Generator can only be used in view mode',
'templateCategoryGenerator': 'Template and Category Generator',
'categoriesTemplatesGenerator': 'Template and Category Generator',
'parameters': 'Parameters',
'manufacturer_de': 'Manufacturer (de):',
'manufacturer_en': 'Manufacturer (en):',
'manufacturer_es': 'Manufacturer (es):',
'manufacturer_it': 'Manufacturer (it):',
'manufacturer_nl': 'Manufacturer (nl):',
'manufacturer_ru': 'Manufacturer (ru):',
'getPageTitle': 'Get current page title',
'letters_de': 'Letters (de):',
'letters_en': 'Letters (en):',
'letters_es': 'Letters (es):',
'letters_it': 'Letters (it):',
'letters_nl': 'Letters (nl):',
'letters_ru': 'Letters (ru):',
'options': 'Options:',
'overwriteExisting': 'Overwrite existing templates/categories',
'useSummary': 'Use new content as summary/comment',
'preview': 'Preview',
'generatePreview': 'Generates a preview of templates and categories with content',
'new': 'New',
'resetParams': 'Resets parameters and clears all inputs',
'close': 'Close',
'closeGenerator': 'Closes the Template and Category Generator',
'debugInfo': 'Debug info',
'previewTemplates': 'Preview Category Templates',
'previewCategories': 'Preview Categories',
'usedTemplates': 'Used templates (not automatically created)',
'summary': 'Summary / Comment:',
'status': 'Status:',
'create': 'Create',
'createTemplatesCategories': 'Creates templates and categories according to the preview with the displayed contents',
'cancel': 'Cancel',
'interruptProcessing': 'The processing of creation and deletion of templates and categories will be interrupted',
'delete': 'Delete',
'deleteTemplatesCategories': 'Deletes templates and categories according to the preview',
'automaticallyCreated': 'Automatically created with new template',
'automaticallyDeleted': 'automatically deleted',
'beingWritten': 'is being written with',
'written': 'written',
'beingDeleted': 'is being deleted',
'showingResult': 'showing result:'
}
};
// Function to get text in user language
function getUIText(key) {
var userLang = catGenFormConf.wgUserLanguage || 'de';
if (!uiTexts[userLang]) {
userLang = 'en'; // Default to English if language not supported
}
return uiTexts[userLang][key] || uiTexts['de'][key] || key;
}
function CatGenFormLoad() {
if (catGenFormConf.wgUserGroups) {
for (var i = 0; i < catGenFormConf.wgUserGroups.length; i++) {
if (catGenFormConf.wgUserGroups[i] == 'sysop' || catGenFormConf.wgUserGroups[i] == 'bot') {
InsertNode("javascript:CatGenForm.LoadCatGenForm()", "Vorlagen und Kategorien-Generator", TW_WERKZEUGE, "ul");
break;
}
}
}
}
var CatGenForm = {
t_Sprachen : new Array('de','en','es','nl','ru','it'),
t_Typen : new Array('Uhrenmodelle','Uhrwerke','Archiv','Porträt','Gebäude','Marken und Warenzeichen','Werkzeuge'),
InitLanguageVars : function () {
CatGenForm.t_VorlagenTexte['de'] = 'Kategorie Bildgalerie ';
CatGenForm.t_VorlagenTexte['en'] = 'Category Picture gallery ';
CatGenForm.t_VorlagenTexte['es'] = 'Categoría galería de imagenes ';
CatGenForm.t_VorlagenTexte['it'] = 'Categoria galleria fotografica ';
CatGenForm.t_VorlagenTexte['nl'] = 'Categorie Afbeeldingen galerij ';
CatGenForm.t_VorlagenTexte['ru'] = 'Категория Фотогалерея ';
CatGenForm.t_KategorienTexte['de'] = 'Bildgalerie ';
CatGenForm.t_KategorienTexte['en'] = 'Picture gallery ';
CatGenForm.t_KategorienTexte['es'] = 'Galería de imagenes ';
CatGenForm.t_KategorienTexte['it'] = 'Galleria fotografica ';
CatGenForm.t_KategorienTexte['nl'] = 'Afbeeldingen galerij ';
CatGenForm.t_KategorienTexte['ru'] = 'Фотогалерея ';
CatGenForm.t_TypTexte['Uhrenmodelle_de'] = 'Uhrenmodelle ';
CatGenForm.t_TypTexte['Uhrenmodelle_en'] = 'watch models ';
CatGenForm.t_TypTexte['Uhrenmodelle_es'] = 'de modelos de relojes ';
CatGenForm.t_TypTexte['Uhrenmodelle_it'] = 'di modelli orologi ';
CatGenForm.t_TypTexte['Uhrenmodelle_nl'] = 'uurwerkmodellen ';
CatGenForm.t_TypTexte['Uhrenmodelle_ru'] = 'Модели часов ';
CatGenForm.t_TypTexte['Uhrwerke_de'] = 'Uhrwerke ';
CatGenForm.t_TypTexte['Uhrwerke_en'] = 'movements ';
CatGenForm.t_TypTexte['Uhrwerke_es'] = 'de mecanismos de relojes ';
CatGenForm.t_TypTexte['Uhrwerke_it'] = 'di movimento degli orologi ';
CatGenForm.t_TypTexte['Uhrwerke_nl'] = 'uurwerken ';
CatGenForm.t_TypTexte['Uhrwerke_ru'] = 'Часовые механизмы ';
CatGenForm.t_TypTexte['Archiv_de'] = 'Archiv ';
CatGenForm.t_TypTexte['Archiv_en'] = 'archive ';
CatGenForm.t_TypTexte['Archiv_es'] = 'archivo ';
CatGenForm.t_TypTexte['Archiv_it'] = 'di Archivio ';
CatGenForm.t_TypTexte['Archiv_nl'] = 'archief ';
CatGenForm.t_TypTexte['Archiv_ru'] = 'Архив ';
CatGenForm.t_TypTexte['Personen_de'] = 'Personen ';
CatGenForm.t_TypTexte['Personen_en'] = 'persons ';
CatGenForm.t_TypTexte['Personen_es'] = 'persona ';
CatGenForm.t_TypTexte['Personen_it'] = 'di Persone ';
CatGenForm.t_TypTexte['Personen_nl'] = 'personen ';
CatGenForm.t_TypTexte['Personen_ru'] = 'лица ';
CatGenForm.t_TypTexte['Porträt_de'] = 'Porträt ';
CatGenForm.t_TypTexte['Porträt_en'] = 'portrait ';
CatGenForm.t_TypTexte['Porträt_es'] = 'retrato ';
CatGenForm.t_TypTexte['Porträt_it'] = 'di Ritratti ';
CatGenForm.t_TypTexte['Porträt_nl'] = 'portretten ';
CatGenForm.t_TypTexte['Porträt_ru'] = 'Портрет ';
CatGenForm.t_TypTexte['Gebäude_de'] = 'Gebäude ';
CatGenForm.t_TypTexte['Gebäude_en'] = 'buildings ';
CatGenForm.t_TypTexte['Gebäude_es'] = 'edificios ';
CatGenForm.t_TypTexte['Gebäude_it'] = 'Edifici ';
CatGenForm.t_TypTexte['Gebäude_nl'] = 'gebouwen ';
CatGenForm.t_TypTexte['Gebäude_ru'] = 'здания ';
CatGenForm.t_TypTexte['Marken und Warenzeichen_de'] = 'Marken und Warenzeichen ';
CatGenForm.t_TypTexte['Marken und Warenzeichen_en'] = 'marks and brands ';
CatGenForm.t_TypTexte['Marken und Warenzeichen_es'] = 'marcas y marcas comercial ';
CatGenForm.t_TypTexte['Marken und Warenzeichen_it'] = 'di Marche e Marchi ';
CatGenForm.t_TypTexte['Marken und Warenzeichen_nl'] = 'merken en handelsmerken ';
CatGenForm.t_TypTexte['Marken und Warenzeichen_ru'] = 'Марки и торговые знаки ';
CatGenForm.t_TypTexte['Werkzeuge und Werkzeugmaschinen_de'] = 'Werkzeuge und Werkzeugmaschinen ';
CatGenForm.t_TypTexte['Werkzeuge und Werkzeugmaschinen_en'] = 'tools and machine tools ';
CatGenForm.t_TypTexte['Werkzeuge und Werkzeugmaschinen_es'] = 'enseres y máquinas herramienta ';
CatGenForm.t_TypTexte['Werkzeuge und Werkzeugmaschinen_it'] = 'Strumenti ';
CatGenForm.t_TypTexte['Werkzeuge und Werkzeugmaschinen_nl'] = 'gereedschappen en machinale gereedschappen ';
CatGenForm.t_TypTexte['Werkzeuge und Werkzeugmaschinen_ru'] = 'инструменты и станки ';
CatGenForm.t_TypTexte['Werkzeuge_de'] = 'Werkzeuge ';
CatGenForm.t_TypTexte['Werkzeuge_en'] = 'tools ';
CatGenForm.t_TypTexte['Werkzeuge_es'] = 'enseres ';
CatGenForm.t_TypTexte['Werkzeuge_it'] = 'Strumenti ';
CatGenForm.t_TypTexte['Werkzeuge_nl'] = 'gereedschappen ';
CatGenForm.t_TypTexte['Werkzeuge_ru'] = 'инструменты ';
CatGenForm.t_VorlagenKategorie['de'] = 'Vorlagen';
CatGenForm.t_VorlagenKategorie['en'] = 'Template/en';
CatGenForm.t_VorlagenKategorie['es'] = 'Plantillas';
CatGenForm.t_VorlagenKategorie['it'] = 'Template';
CatGenForm.t_VorlagenKategorie['nl'] = 'Sjablonen';
CatGenForm.t_VorlagenKategorie['ru'] = 'Шаблон';
},
StartCreatingVKFiles : function () {
setcursor( 'wait' );
CatGenForm.t_Files.splice( 0, CatGenForm.t_Files.length );
CatGenForm.t_processnext = 0;
CatGenForm.t_stopp = false;
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_FileV = document.getElementById( 'FileV' + CatGenForm.t_Sprachen[t_Sprache] );
t_InhaltV = document.getElementById( 'InhaltV' + CatGenForm.t_Sprachen[t_Sprache] );
if ( t_FileV && t_InhaltV ) {
var t_File = new Array( t_FileV.getElementsByTagName("A")[0].innerHTML, t_InhaltV.innerHTML, t_FileV.getElementsByTagName("A")[0].className );
if ( t_FileV.getElementsByTagName("A")[0].className == 'new' || document.getElementById('Overwrite').checked ) {
CatGenForm.t_Files.push( t_File );
}
}
}
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_FileK = document.getElementById( 'FileK' + CatGenForm.t_Sprachen[t_Sprache] );
t_InhaltK = document.getElementById( 'InhaltK' + CatGenForm.t_Sprachen[t_Sprache] );
if ( t_FileK && t_InhaltK ) {
var t_File = new Array( t_FileK.getElementsByTagName("A")[0].innerHTML, t_InhaltK.innerHTML, t_FileK.getElementsByTagName("A")[0].className );
if ( t_FileK.getElementsByTagName("A")[0].className == 'new' || document.getElementById('Overwrite').checked ) {
CatGenForm.t_Files.push( t_File );
}
}
}
CatGenForm.ProcessingVKFile( 'edit' );
},
StopProcessingVKFiles : function () {
CatGenForm.t_stopp = true;
},
ProcessingVKFile : function ( t_action ) {
if ( CatGenForm.t_processnext < CatGenForm.t_Files.length ) {
var t_parameters = '?action=query&format=json&prop=info|revisions&intoken=' + t_action + '&titles=' +
encodeURIComponent( CatGenForm.t_Files[CatGenForm.t_processnext][0] ) + '';
var t_http_req = null;
if (window.XMLHttpRequest) {t_http_req = new XMLHttpRequest();}
else if (window.ActiveXObject) {t_http_req = new ActiveXObject("Microsoft.XMLHTTP");}
t_http_req.open("GET", CatGenForm.t_wikiurl + t_parameters, true);
t_http_req.onreadystatechange = function() {
if(t_http_req.readyState != 4) {
document.getElementById( 'Status' ).innerHTML = getUIText('waitingForToken') + '<br><small>' +
CatGenForm.t_Files[CatGenForm.t_processnext][0] + '</small>';
}
if(t_http_req.readyState == 4 && t_http_req.status == 200) {
if ( CatGenForm.t_vkdebug ) {
document.getElementById( 'StatusPrev' ).innerHTML += '<hr>ProcessingVKFile<br>' + t_http_req.responseText;
}
CatGenForm.GotToken( eval("(" + t_http_req.responseText + ")"), t_action );
}
};
t_http_req.send(null);
}
},
GotToken : function ( queryData, t_action ) {
if ( queryData ) {
if ( queryData.query && queryData.query.pages ) {
var t_token = "";
var t_timestamp = "";
var t_some_pages = queryData.query.pages;
for ( var t_Page in t_some_pages ) {
if ( t_some_pages[t_Page].edittoken ) {
t_token = encodeURIComponent( t_some_pages[t_Page].edittoken );
} else
if ( t_some_pages[t_Page].deletetoken ) {
t_token = encodeURIComponent( t_some_pages[t_Page].deletetoken );
}
if ( t_some_pages[t_Page].revisions ) {
var t_some_revisions = t_some_pages[t_Page].revisions;
for ( var i = 0; i < t_some_revisions.length; i++ ) {
if (t_some_revisions[i].timestamp) {
t_timestamp = t_some_revisions[i].timestamp;
}
}
}
document.getElementById( 'Status' ).innerHTML += t_some_pages[t_Page].starttimestamp;
}
t_text = CatGenForm.t_Files[CatGenForm.t_processnext][1];
t_text = t_text.replace(/</g, "<");
t_text = t_text.replace(/>/g, ">");
t_text = t_text.replace(/&/g, "&");
if ( document.getElementById('UseTextSummary').checked ) {
t_summary = t_text.replace(/\[\[Kategorie:/g, "[[Kategorie:" );
t_summarymsg = CatGenForm.t_Files[CatGenForm.t_processnext][1];
t_summary = '&summary=' + encodeURIComponent( t_summary );
} else {
t_summary = document.getElementById('Summary').getAttribute('value');
t_summarymsg = t_summary;
t_summary = '&summary=' + encodeURIComponent( t_summary );
}
if ( t_action == 'delete' ) {
t_summary = getUIText('automaticallyDeleted');
t_summarymsg = t_summary;
t_summary = '&reason=' + encodeURIComponent( t_summary );
}
var t_parameters = 'action=' + t_action + '&format=json&title=' + encodeURIComponent( t_some_pages[t_Page].title ) +
t_summary + '&watch&basetimestamp=' + t_timestamp +
'&token=' + t_token + '&bot=1&minor=1' + '&text=' + encodeURIComponent( t_text );
if ( !document.getElementById('Overwrite').checked ) {
t_parameters += '&createonly';
}
var t_http_req = null;
if (window.XMLHttpRequest) {t_http_req = new XMLHttpRequest();}
else if (window.ActiveXObject) {t_http_req = new ActiveXObject("Microsoft.XMLHTTP");}
t_http_req.open("POST", CatGenForm.t_wikiurl, true);
t_http_req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
t_http_req.onreadystatechange = function() {
if ( t_http_req.readyState != 4 ) {
if ( t_action == 'edit' ) {
document.getElementById( 'Status' ).innerHTML +=
'<small>'+t_some_pages[t_Page].title+'</small><br>' + getUIText('beingWritten') + '<br><small>' +
CatGenForm.t_Files[CatGenForm.t_processnext][1] +
'</small><br>' + getUIText('written') + ' <small>(' + t_summarymsg + ')</small> ...';
} else if ( t_action == 'delete' ) {
document.getElementById( 'Status' ).innerHTML +=
'<small>'+t_some_pages[t_Page].title+'</small><br>' + getUIText('beingDeleted') + ' <small>(' + t_summarymsg + ')</small> ...';
}
}
if ( t_http_req.readyState == 4 && t_http_req.status == 200 ) {
if ( CatGenForm.t_vkdebug ) {
document.getElementById( 'StatusPrev' ).innerHTML +=
'<hr>GotToken<br>' + t_http_req.responseText;
}
document.getElementById( 'Status' ).innerHTML += getUIText('showingResult') + t_http_req.responseText;
CatGenForm.ProcessedVKFile( eval("(" + t_http_req.responseText + ")" ), t_http_req.responseText, t_action );
}
};
document.getElementById( 'Status' ).innerHTML += t_parameters;
t_http_req.send(t_parameters);
}
}
},
ProcessedVKFile : function ( queryData, rawData, t_action ) {
if ( queryData.edit && queryData.edit.result ) {
document.getElementById( 'Status' ).innerHTML = queryData.edit.result;
if ( CatGenForm.t_stopp ) {
document.getElementById( 'Status' ).innerHTML = getUIText('userStopped');
CatGenForm.CheckPreviewVFiles();
} else {
CatGenForm.t_processnext++;
if ( CatGenForm.t_processnext < CatGenForm.t_Files.length ) {
CatGenForm.ProcessingVKFile( t_action );
} else {
if ( queryData.edit.result == 'Success' ) {
document.getElementById( 'Status' ).innerHTML = getUIText('finished');
CatGenForm.CheckPreviewVFiles();
} else {
document.getElementById( 'Status' ).innerHTML = getUIText('unknownError') + ' ' + queryData.edit.result;
}
}
}
} else if ( queryData['delete'] ) {
if ( queryData['delete'].title && queryData['delete'].reason )
document.getElementById( 'Status' ).innerHTML = queryData['delete'].title + '<br>' + queryData['delete'].reason;
if ( CatGenForm.t_stopp ) {
document.getElementById( 'Status' ).innerHTML = getUIText('userStopped');
CatGenForm.CheckPreviewVFiles();
} else {
CatGenForm.t_processnext++;
if ( CatGenForm.t_processnext < CatGenForm.t_Files.length ) {
CatGenForm.ProcessingVKFile( t_action );
} else {
document.getElementById( 'Status' ).innerHTML = getUIText('finished');
CatGenForm.CheckPreviewVFiles();
}
}
} else if ( queryData.error && queryData.error.code && queryData.error.info ) {
if ( queryData.error.code == 'articleexists' && !document.getElementById('Overwrite').getAttribute('checked') ) {
if ( CatGenForm.t_stopp ) {
document.getElementById( 'Status' ).innerHTML = getUIText('userStopped');
CatGenForm.CheckPreviewVFiles();
} else {
CatGenForm.t_processnext++;
if ( CatGenForm.t_processnext < CatGenForm.t_Files.length ) {
CatGenForm.ProcessingVKFile( t_action );
} else {
document.getElementById( 'Status' ).innerHTML = getUIText('finished');
CatGenForm.CheckPreviewVFiles();
}
}
} else {
document.getElementById( 'Status' ).innerHTML = getUIText('error') + ' ' + queryData.error.code + ' - ' + queryData.error.info;
}
} else {
document.getElementById( 'Status' ).innerHTML = getUIText('unknownError') + ' ' + rawData;
}
},
StartDeletingVKFiles : function () {
t_msg = getUIText('mustDeleteSpecificType');
if ( CatGenForm.t_HerstellerPreview == '' ) {alert( t_msg.replace( "##", getUIText('manufacturer') ) ); return;}
if ( CatGenForm.t_TypPreview == '' ) {alert( t_msg.replace( "##", getUIText('type') ) ); return;}
setcursor( 'wait' );
CatGenForm.t_Files.splice( 0, CatGenForm.t_Files.length );
CatGenForm.t_processnext = 0;
CatGenForm.t_stopp = false;
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_FileV = document.getElementById( 'FileV' + CatGenForm.t_Sprachen[t_Sprache] );
t_InhaltV = document.getElementById( 'InhaltV' + CatGenForm.t_Sprachen[t_Sprache] );
if ( t_FileV && t_InhaltV ) {
var t_File = new Array( t_FileV.getElementsByTagName("A")[0].innerHTML, t_InhaltV.innerHTML, t_FileV.getElementsByTagName("A")[0].className );
if ( !(t_FileV.getElementsByTagName("A")[0].className == 'new') ) {
CatGenForm.t_Files.push( t_File );
}
}
}
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_FileK = document.getElementById( 'FileK' + CatGenForm.t_Sprachen[t_Sprache] );
t_InhaltK = document.getElementById( 'InhaltK' + CatGenForm.t_Sprachen[t_Sprache] );
if ( t_FileK && t_InhaltK ) {
var t_File = new Array( t_FileK.getElementsByTagName("A")[0].innerHTML, t_InhaltK.innerHTML, t_FileK.getElementsByTagName("A")[0].className );
if ( !(t_FileK.getElementsByTagName("A")[0].className == 'new') ) {
CatGenForm.t_Files.push( t_File );
}
}
}
if ( CatGenForm.t_vkdebug ) {
document.getElementById( 'StatusPrev' ).innerHTML +=
'<hr>Files to delete:<br>' + CatGenForm.t_Files.length;
}
CatGenForm.ProcessingVKFile( 'delete' );
},
DeletedVKFiles : function ( queryData, rawData ) {
},
t_VorlagenTexte : new Array(),
t_TypTexte : new Array(),
t_VorlagenKategorie : new Array(),
t_KategorienTexte : new Array(),
t_Files : new Array(),
t_FilesChecked : new Array(),
t_FilesContentChecked : new Array(),
t_processnext : 0,
t_wikiurl : catGenFormConf.wgServer + catGenFormConf.wgScriptPath + '/api.php',
t_stopp : false,
t_HerstellerPreview : '',
t_TypPreview : '',
t_Content : '',
t_Sic_GenContent : '',
t_Sic_selectedTyp : 0,
t_Sic_Overwrite : false,
t_Sic_UseTextSummary : false,
t_Sic_Hersteller : new Array(),
t_Sic_Buchstabe1 : new Array(),
t_Sic_Buchstabe2 : new Array(),
t_vkdebug : false, // true, false,
CreateTemplatePreview : function () {
var out = '';
t_Typ = document.getElementById('TypSel').value;
out += '<h3>' + getUIText('usedTemplates') + '</h3>';
t_Vorlagebezeichner = 'Bildgalerie '+t_Typ+' XXX Sprachen';
t_Zielbezeichner = trim('Vorlage:' + t_Vorlagebezeichner );
t_ZielbezeichnerUrl = t_Zielbezeichner;
t_missingText = '';
t_missingText = CatGenForm.t_FilesChecked[t_Zielbezeichner];
out += '<ul><li><span id="Vorlage_Sprachen">' +
'<a href="'+catGenFormConf.wgScriptPath+'/index.php?title=' + t_ZielbezeichnerUrl + '" '+ t_missingText + 'title="' + t_ZielbezeichnerUrl + '">' +
t_Zielbezeichner + '</a></span></li></ul>';
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_Vorlagebezeichner = CatGenForm.t_KategorienTexte[CatGenForm.t_Sprachen[t_Sprache]] + CatGenForm.t_TypTexte[t_Typ+'_'+CatGenForm.t_Sprachen[t_Sprache]];
t_Zielbezeichner = trim('Vorlage:Kategoriebeschreibung ' + t_Vorlagebezeichner + 'XXX' );
t_ZielbezeichnerUrl = t_Zielbezeichner;
t_missingText = '';
t_missingText = CatGenForm.t_FilesChecked[t_Zielbezeichner];
out += '<ul><li><span id="Vorlage_' + CatGenForm.t_Sprachen[t_Sprache] + '">' +
'<a href="'+catGenFormConf.wgScriptPath+'/index.php?title=' + t_ZielbezeichnerUrl + '" '+ t_missingText + 'title="' + t_ZielbezeichnerUrl + '">' +
t_Zielbezeichner + '</a></span></li></ul>';
}
return out;
},
CreatePreview : function () {
var out = '';
var t_Sprachenparameter = '';
t_Sprachen_offset = 0;
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
if ( t_Sprache == 5 ) {
t_Sprachen_offset += 2;
}
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[t_Sprache]).value;
if ( t_Hersteller != '' ) {
t_Sprachenparameter += '|' + (t_Sprache + 1 + t_Sprachen_offset) + '=' + t_Hersteller;
}
}
t_Typ = document.getElementById('TypSel').value;
out += '<h3>' + getUIText('previewTemplates') + '</h3>';
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[t_Sprache]).value;
if ( t_Hersteller == '' ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[0]).value;
}
t_Vorlagebezeichner = CatGenForm.t_VorlagenTexte[CatGenForm.t_Sprachen[t_Sprache]] + CatGenForm.t_TypTexte[t_Typ+'_'+CatGenForm.t_Sprachen[t_Sprache]];
t_Zielbezeichner = trim('Vorlage:' + t_Vorlagebezeichner + t_Hersteller);
t_ZielbezeichnerUrl = t_Zielbezeichner;
t_missingText = '';
t_missingText = CatGenForm.t_FilesChecked[t_Zielbezeichner];
CatGenForm.t_FilesChecked[t_Zielbezeichner] = '';
t_Hersteller = t_Hersteller.replace(/&/g, "&");
t_Inhalt = '<includeonly>{{Bildgalerie '+t_Typ+' XXX Sprachen' +
t_Sprachenparameter + '}}</includeonly><noinclude>[[Kategorie:' +
CatGenForm.t_VorlagenKategorie[CatGenForm.t_Sprachen[t_Sprache]] +'|' + t_Hersteller + ']]</noinclude>';
t_identText = '';
if ( (t_Inhalt.replace(/</g, "<").replace(/>/g, ">").replace(/&/g, "&")) == CatGenForm.t_FilesContentChecked[t_Zielbezeichner] ) {
t_identText = ' (<span style="color:green;font-size:180%;" title="' + getUIText('upToDate') + '">✔</span>)';
CatGenForm.t_FilesContentChecked[t_Zielbezeichner] = '';
} else
if ( t_missingText == '' && CatGenForm.t_FilesContentChecked[t_Zielbezeichner] ) {
t_oldContent = encodeURIComponent( CatGenForm.t_FilesContentChecked[t_Zielbezeichner] );
t_oldContent = t_oldContent.replace(/\'/g, '&apos;');
t_identText = ' (<span style="color:red;font-size:180%;" ' +
'onmouseover="tippon('+"'"+t_oldContent+"'"+')" onmouseout="tippoff()">✘</span>)';
}
t_Zielbezeichner = t_Zielbezeichner.replace(/&/g, "&");
t_ZielbezeichnerUrl = encodeURIComponent( t_ZielbezeichnerUrl );
out += '<ul><li><span id="FileV' + CatGenForm.t_Sprachen[t_Sprache] + '">' +
'<a href="'+catGenFormConf.wgScriptPath+'/index.php?title=' + t_ZielbezeichnerUrl + '" ' +
t_missingText + 'title="' + t_ZielbezeichnerUrl + '">' +
t_Zielbezeichner + '</a></span>' + t_identText + '</li></ul>';
out += '<dl><dd><span id="InhaltV' + CatGenForm.t_Sprachen[t_Sprache] + '">' + t_Inhalt + '</span></dd></dl>';
}
out += '<h3>' + getUIText('previewCategories') + '</h3>';
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[t_Sprache]).value;
if ( t_Hersteller == '' ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[0]).value;
}
t_Buchstabenparameter = '';
for ( i = 1; i <= 2; i++) {
if ( document.getElementById('Buchstabe' + i + '_'+CatGenForm.t_Sprachen[t_Sprache]).value ) {
t_Buchstabenparameter += '|' + (i + 5) + '=' +
document.getElementById('Buchstabe' + i + '_' + CatGenForm.t_Sprachen[t_Sprache]).value.toUpperCase();
}
}
if ( t_Buchstabenparameter == '' ) {
for ( i = 1; i <= 2;i++) {
if ( document.getElementById('Buchstabe' + i + '_'+CatGenForm.t_Sprachen[0]).value ) {
t_Buchstabenparameter += '|' + (i + 5) + '=' +
document.getElementById('Buchstabe' + i + '_' + CatGenForm.t_Sprachen[0]).value.toUpperCase();
}
}
}
t_Kategoriebezeichner = CatGenForm.t_KategorienTexte[CatGenForm.t_Sprachen[t_Sprache]] +
CatGenForm.t_TypTexte[t_Typ+'_'+CatGenForm.t_Sprachen[t_Sprache]];
t_Zielbezeichner = trim('' + t_Kategoriebezeichner + t_Hersteller);
t_ZielbezeichnerUrl = t_Zielbezeichner;
t_missingText = '';
t_missingText = CatGenForm.t_FilesChecked['Kategorie:' + t_Zielbezeichner];
CatGenForm.t_FilesChecked['Kategorie:' + t_Zielbezeichner] = '';
t_Inhalt = '{{Kategoriebeschreibung ' + t_Kategoriebezeichner + 'XXX' +
t_Sprachenparameter + t_Buchstabenparameter + '}}';
t_identText = '';
if ( CatGenForm.t_vkdebug ) {
document.getElementById( 'StatusPrev' ).innerHTML += '<hr>' + 'FilesContentChecked<br>' +
encodeURIComponent( CatGenForm.t_FilesContentChecked['Kategorie:' + t_Zielbezeichner] ) + '<br>' +
encodeURIComponent( t_Inhalt.replace(/</g, "<").replace(/>/g, ">").replace(/&/g, "&") );
}
if ( (t_Inhalt.replace(/</g, "<").replace(/>/g, ">").replace(/&/g, "&")) == CatGenForm.t_FilesContentChecked['Kategorie:' + t_Zielbezeichner] ) {
if ( CatGenForm.t_vkdebug ) document.getElementById( 'StatusPrev' ).innerHTML += '<br>' + 'equal';
t_identText = ' (<span style="color:green;font-size:180%;" title="Inhalt ist bereits aktuell">✔</span>)';
CatGenForm.t_FilesContentChecked['Kategorie:' + t_Zielbezeichner] = '';
} else
if ( t_missingText == '' && CatGenForm.t_FilesContentChecked['Kategorie:' + t_Zielbezeichner] ) {
t_oldContent = encodeURIComponent( CatGenForm.t_FilesContentChecked['Kategorie:' + t_Zielbezeichner] );
t_oldContent = t_oldContent.replace(/\'/g, '&apos;');
t_identText = ' (<span style="color:red;font-size:180%;" ' +
'onmouseover="tippon('+"'"+t_oldContent+"'"+')" onmouseout="tippoff()">✘</span>)';
}
t_Zielbezeichner = t_Zielbezeichner.replace(/&/g, "&");
t_ZielbezeichnerUrl = encodeURIComponent( t_ZielbezeichnerUrl );
/* Old (out-line-2): '<a href="' + wcatGenFormConfgScriptPath + '/index.php?title=Kategorie:' + t_ZielbezeichnerUrl + '" ' + */
out += '<ul><li><span id="FileK' + CatGenForm.t_Sprachen[t_Sprache] + '">' +
'<a href="https://watch-wiki.org"' + '/index.php?title=Kategorie:' + t_ZielbezeichnerUrl + '" ' +
t_missingText + 'title="Kategorie:' + t_ZielbezeichnerUrl + '">Kategorie:' +
t_Zielbezeichner + '</a></span>' + t_identText + '</li></ul>';
out += '<dl><dd><span id="InhaltK' + CatGenForm.t_Sprachen[t_Sprache] + '">' + t_Inhalt + '</span></dd></dl>';
}
return out;
},
CheckPreviewVFiles : function ( t_clear ) {
if ( document.getElementById('TypSel').value + '' == '' ) {
t_msg2 = getUIText('noTypeSelected');
document.getElementById( 'PreviewForm' ).innerHTML = t_msg2;
return;
}
if ( document.getElementById( 'InsertCreateForm' ) ) {
if ( document.getElementById( 'PreviewForm' ) ) {
document.getElementById( 'PreviewForm' ).innerHTML = '';
}
if ( document.getElementById( 'TemplateForm' ) ) {
document.getElementById( 'TemplateForm' ).innerHTML = '';
}
if ( document.getElementById( 'InsertCreateForm' ) && document.getElementById( 'Status' ) ) {
document.getElementById( 'InsertCreateForm' ).innerHTML = '<b>' + document.getElementById( 'Status' ).innerHTML + '</b>';
}
if ( document.getElementById( 'InsertCreateForm' ) && t_clear == 'c' ) {
document.getElementById( 'InsertCreateForm' ).innerHTML = '';
}
CatGenForm.t_HerstellerPreview = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[0]).value;
CatGenForm.t_TypPreview = document.getElementById('TypSel').value;
setcursor( 'wait' );
CatGenForm.t_Files.splice( 0, CatGenForm.t_Files.length );
CatGenForm.InitLanguageVars();
for ( var t_Page in CatGenForm.t_FilesChecked ) {
if ( CatGenForm.t_FilesChecked[t_Page] == 'class="new" ' ) {
CatGenForm.t_FilesChecked[t_Page] = '';
}
}
t_Typ = document.getElementById('TypSel').value;
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[t_Sprache]).value;
if ( t_Hersteller == '' ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[0]).value;
}
t_Vorlagebezeichner = CatGenForm.t_VorlagenTexte[CatGenForm.t_Sprachen[t_Sprache]] +
CatGenForm.t_TypTexte[t_Typ+'_'+CatGenForm.t_Sprachen[t_Sprache]];
t_Zielbezeichner = trim('Vorlage:' + t_Vorlagebezeichner + t_Hersteller);
CatGenForm.t_Files.push( t_Zielbezeichner);
}
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[t_Sprache]).value;
if ( t_Hersteller == '' ) {
t_Hersteller = document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[0]).value;
}
t_Kategoriebezeichner = CatGenForm.t_KategorienTexte[CatGenForm.t_Sprachen[t_Sprache]] +
CatGenForm.t_TypTexte[t_Typ+'_'+CatGenForm.t_Sprachen[t_Sprache]];
t_Zielbezeichner = trim('Kategorie:' + t_Kategoriebezeichner + t_Hersteller);
CatGenForm.t_Files.push( t_Zielbezeichner);
}
t_Vorlagebezeichner = 'Bildgalerie '+t_Typ+' XXX Sprachen';
t_Zielbezeichner = trim('Vorlage:' + t_Vorlagebezeichner );
CatGenForm.t_Files.push( t_Zielbezeichner);
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
t_Vorlagebezeichner = CatGenForm.t_KategorienTexte[CatGenForm.t_Sprachen[t_Sprache]] +
CatGenForm.t_TypTexte[t_Typ+'_'+CatGenForm.t_Sprachen[t_Sprache]];
t_Zielbezeichner = trim('Vorlage:Kategoriebeschreibung ' + t_Vorlagebezeichner + ' XXX' );
CatGenForm.t_Files.push( t_Zielbezeichner);
}
document.getElementById('PreviewForm').innerHTML = '<hr style="margin-top:1em;">' + '<b>' + getUIText('previewCreated') + '</b><p id="PreviewSubForm"></p>';
CatGenForm.ProcessingPreviewFile();
}
},
/* ----------------------------------------- */
ProcessingPreviewFile : function ( ) {
var t_FilesToCheckString;
if ( CatGenForm.t_Files.length > 0 ) {
t_FilesToCheckString = CatGenForm.t_Files.splice( 0, 1 );
}
if ( CatGenForm.t_Files.length > 0 ) {
t_FilesToCheckString += '|';
t_FilesToCheckString += CatGenForm.t_Files.splice( 0, 1 );
}
if ( CatGenForm.t_Files.length > 0 ) {
t_FilesToCheckString += '|';
t_FilesToCheckString += CatGenForm.t_Files.splice( 0, 1 );
}
var t_parameters = '?action=query&format=json&prop=info|revisions&rvprop=content&titles=' + encodeURIComponent( t_FilesToCheckString );
var t_http_req = null;
if (window.XMLHttpRequest) {t_http_req = new XMLHttpRequest();}
else if (window.ActiveXObject) {t_http_req = new ActiveXObject("Microsoft.XMLHTTP");}
t_http_req.open("POST", CatGenForm.t_wikiurl + t_parameters, true);
t_http_req.onreadystatechange = function() {
if(t_http_req.readyState != 4) {
if ( t_FilesToCheckString != '' ) {
document.getElementById( 'PreviewSubForm' ).style.height = '75px';
document.getElementById( 'PreviewSubForm' ).style.overflow = 'auto';
document.getElementById( 'PreviewSubForm' ).scrollTop = 1000;
document.getElementById( 'PreviewSubForm' ).innerHTML += String(t_FilesToCheckString).replace(/\|/g, "<br>") + '<br>';
t_FilesToCheckString = '';
}
}
if(t_http_req.readyState == 4 && t_http_req.status == 200) {
if ( CatGenForm.t_vkdebug ) {
document.getElementById( 'StatusPrev' ).style.display = 'block';
document.getElementById( 'StatusPrev' ).innerHTML += '<hr>' + t_http_req.responseText;
}
CatGenForm.ProcessedPreviewFile( eval("(" + t_http_req.responseText + ")") );
}
};
t_http_req.send(null);
},
ProcessedPreviewFile : function ( queryData, rawData ) {
if ( queryData.query && queryData.query.pages ) {
for ( var t_Page in queryData.query.pages ) {
if ( !queryData.query.pages[t_Page].pageid ) {
if ( queryData.query.normalized ) {
for ( t_PageNorm= 0; t_PageNorm < queryData.query.normalized.length; t_PageNorm++ ) {
if ( queryData.query.normalized[t_PageNorm].to == queryData.query.pages[t_Page].title ) {
CatGenForm.t_FilesChecked[decodeURIComponent( queryData.query.normalized[t_PageNorm].from )] = 'class="new" ';
}
}
}
CatGenForm.t_FilesChecked[decodeURIComponent(queryData.query.pages[t_Page].title)] = 'class="new" ';
} else {
CatGenForm.t_FilesChecked[decodeURIComponent(queryData.query.pages[t_Page].title)] = '';
if ( queryData.query.pages[t_Page].revisions ) {
CatGenForm.t_FilesContentChecked[decodeURIComponent(queryData.query.pages[t_Page].title)] =
queryData.query.pages[t_Page].revisions[0]['*'];
}
if ( queryData.query.normalized ) {
for ( t_PageNorm= 0; t_PageNorm < queryData.query.normalized.length; t_PageNorm++ ) {
if ( queryData.query.normalized[t_PageNorm].to == queryData.query.pages[t_Page].title ) {
if ( queryData.query.pages[t_Page].revisions ) {
CatGenForm.t_FilesContentChecked[decodeURIComponent( queryData.query.normalized[t_PageNorm].from )] =
queryData.query.pages[t_Page].revisions[0]['*'];
}
}
}
}
}
}
}
if ( CatGenForm.t_Files.length > 0 ) {
CatGenForm.ProcessingPreviewFile();
} else {
CatGenForm.PreviewVKFiles();
}
},
PreviewVKFiles : function () {
if ( document.getElementById( 'PreviewForm' ) ) {
document.getElementById( 'PreviewForm' ).innerHTML = '<hr style="margin-top:1em;">' + CatGenForm.CreatePreview() + '';
}
if ( document.getElementById( 'TemplateForm' ) ) {
document.getElementById( 'TemplateForm' ).innerHTML = '<hr style="margin-top:1em;">' + CatGenForm.CreateTemplatePreview() + '';
}
document.getElementById( 'InsertCreateForm' ).innerHTML =
'<hr style="margin-top:1em; margin-right:.5em;"><div style="margin-top:.5em; margin-right:1em;">' +
'<h3>' + getUIText('create') + '</h3>' +
'<label for="Summary" style="vertical-align:top">' + getUIText('summary') + '</label>' +
'<p><input id="Summary" type="text" size="75" value="' + getUIText('automaticallyCreated') + '"></p>' +
'<label for="Status" style="vertical-align:top;">' + getUIText('status') + '</label>' +
'<p id="Status" style="border: 1px solid #aaa; padding:.5em;height:75px;" >' + getUIText('checkTemplates') + '</p>' +
'<p><input type="button" title="' + getUIText('createTemplatesCategories') + '" ' +
'value="' + getUIText('create') + '" onClick="StartCreatingVKFiles()"> ' +
'<input type="button" value="' + getUIText('cancel') + '" title="' + getUIText('interruptProcessing') + '" ' +
'onClick="StopProcessingVKFiles()">' +
'<input type="button" value="' + getUIText('delete') + '" style="float:right;" title="' + getUIText('deleteTemplatesCategories') + '" ' +
'onClick="StartDeletingVKFiles()">' +
'</p></div>';
document.getElementById('Summary').disabled = document.getElementById('UseTextSummary').checked;
setcursor( 'auto' );
},
UnloadCatGenForm : function () {
CatGenForm.t_stopp = true;
setcursor( 'auto' );
CatGenForm.t_Sic_GenContent = document.getElementById( 'content' ).innerHTML;
CatGenForm.t_selectedTyp = document.getElementById( 'Typ' ).selectedIndex;
CatGenForm.t_Sic_Overwrite = document.getElementById('Overwrite').checked;
CatGenForm.t_Sic_UseTextSummary = document.getElementById('UseTextSummary').checked;
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
CatGenForm.t_Sic_Hersteller[CatGenForm.t_Sprachen[t_Sprache]] =
document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[t_Sprache]).value;
CatGenForm.t_Sic_Buchstabe1[CatGenForm.t_Sprachen[t_Sprache]] =
document.getElementById('Buchstabe1_'+CatGenForm.t_Sprachen[t_Sprache]).value;
CatGenForm.t_Sic_Buchstabe2[CatGenForm.t_Sprachen[t_Sprache]] =
document.getElementById('Buchstabe2_'+CatGenForm.t_Sprachen[t_Sprache]).value;
}
if ( CatGenForm.t_Content != '' ) {
document.getElementById( 'content' ).innerHTML = CatGenForm.t_Content;
CatGenForm.t_Content = '';
}
},
LoadCatGenForm : function ( t_status ) {
if ( typeof my_vkdebug != "undefined" && my_vkdebug != '' ) CatGenForm.t_vkdebug = my_vkdebug;
if ( catGenFormConf.wgAction != 'view' ) {
alert(getUIText('viewModeOnly'));
return;
}
if ( document.getElementById( 'content' ) ) {
if ( CatGenForm.t_Content != '' && t_status != 'n' ) {
return;
}
if ( CatGenForm.t_Content == '' ) {
CatGenForm.t_Content = document.getElementById( 'content' ).innerHTML;
}
if ( CatGenForm.t_Sic_GenContent != '' ) {
document.getElementById( 'content' ).innerHTML = CatGenForm.t_Sic_GenContent;
document.getElementById( 'Typ' ).selectedIndex = CatGenForm.t_selectedTyp;
document.getElementById('Overwrite').checked = CatGenForm.t_Sic_Overwrite;
document.getElementById('UseTextSummary').checked = CatGenForm.t_Sic_UseTextSummary;
for ( t_Sprache = 0; t_Sprache < CatGenForm.t_Sprachen.length; t_Sprache++ ) {
document.getElementById('Hersteller_'+CatGenForm.t_Sprachen[t_Sprache]).value =
CatGenForm.t_Sic_Hersteller[CatGenForm.t_Sprachen[t_Sprache]];
document.getElementById('Buchstabe1_'+CatGenForm.t_Sprachen[t_Sprache]).value =
CatGenForm.t_Sic_Buchstabe1[CatGenForm.t_Sprachen[t_Sprache]];
document.getElementById('Buchstabe2_'+CatGenForm.t_Sprachen[t_Sprache]).value =
CatGenForm.t_Sic_Buchstabe2[CatGenForm.t_Sprachen[t_Sprache]];
}
CatGenForm.t_Sic_GenContent = '';
return;
}
out = '<form method="get" style="width:100%" name="CatGenForm">' +
'<fieldset><legend>' + getUIText('categoriesTemplatesGenerator') + '</legend>' +
'<div style="margin-top:.5em; margin-left:1em; margin-right:1em;">' +
'<h3>' + getUIText('parameters') + '</h3>' +
'<table><tr>' +
'<td style="vertical-align:top"><label for="Hersteller_de">' + getUIText('manufacturer_de') + '</label></td>' +
'<td><input id="Hersteller_de" type="text" size="50" value="">' +
'<input type="button" value="≈" title="' + getUIText('getPageTitle') + '" onClick="GetPageName()"></td>' +
'<td style="vertical-align:top"><label for="Buchstabe_de">' + getUIText('letters_de') + '</label></td>' +
'<td><input id="Buchstabe1_de" type="text" size="1" value="" style="text-transform:uppercase;"> ' +
'<input id="Buchstabe2_de" type="text" size="1" value="" style="text-transform:uppercase;"></td>' +
'</tr><tr>' +
'<td style="vertical-align:top"><label for="Hersteller_en">' + getUIText('manufacturer_en') + '</label></td>' +
'<td><input id="Hersteller_en" type="text" size="50" value=""></td>' +
'<td style="vertical-align:top"><label for="Buchstabe_en">' + getUIText('letters_en') + '</label></td>' +
'<td><input id="Buchstabe1_en" type="text" size="1" value="" style="text-transform:uppercase;"> ' +
'<input id="Buchstabe2_en" type="text" size="1" value="" style="text-transform:uppercase;"></td>' +
'</tr><tr>' +
'<td style="vertical-align:top"><label for="Hersteller_es">' + getUIText('manufacturer_es') + '</label></td>' +
'<td><input id="Hersteller_es" type="text" size="50" value=""></td>' +
'<td style="vertical-align:top"><label for="Buchstabe_es">' + getUIText('letters_es') + '</label></td>' +
'<td><input id="Buchstabe1_es" type="text" size="1" value="" style="text-transform:uppercase;"> ' +
'<input id="Buchstabe2_es" type="text" size="1" value="" style="text-transform:uppercase;"></td>' +
'</tr><tr>' +
'<td style="vertical-align:top"><label for="Hersteller_it">' + getUIText('manufacturer_it') + '</label></td>' +
'<td><input id="Hersteller_it" type="text" size="50" value=""></td>' +
'<td style="vertical-align:top"><label for="Buchstabe_it">' + getUIText('letters_it') + '</label></td>' +
'<td><input id="Buchstabe1_it" type="text" size="1" value="" style="text-transform:uppercase;"> ' +
'<input id="Buchstabe2_it" type="text" size="1" value="" style="text-transform:uppercase;"></td>' +
'</tr><tr>' +
'<td style="vertical-align:top"><label for="Hersteller_nl">' + getUIText('manufacturer_nl') + '</label></td>' +
'<td><input id="Hersteller_nl" type="text" size="50" value=""></td>' +
'<td style="vertical-align:top"><label for="Buchstabe_nl">' + getUIText('letters_nl') + '</label></td>' +
'<td><input id="Buchstabe1_nl" type="text" size="1" value="" style="text-transform:uppercase;"> ' +
'<input id="Buchstabe2_nl" type="text" size="1" value="" style="text-transform:uppercase;"></td>' +
'</tr><tr>' +
'<td style="vertical-align:top"><label for="Hersteller_ru">' + getUIText('manufacturer_ru') + '</label></td>' +
'<td><input id="Hersteller_ru" type="text" size="50" value=""></td>' +
'<td style="vertical-align:top"><label for="Buchstabe_ru">' + getUIText('letters_ru') + '</label></td>' +
'<td><input id="Buchstabe1_ru" type="text" size="1" value="" style="text-transform:uppercase;"> ' +
'<input id="Buchstabe2_ru" type="text" size="1" value="" style="text-transform:uppercase;"></td>' +
'</tr><tr>' +
'<td style="vertical-align:top">Typ:</td><td colspan="3"><table><tr>' +
'<td><select id="Typ" size="8" type="hidden" ' +
'onchange="this.form.TypSel.value = this.form.Typ.options[this.form.Typ.selectedIndex].value">';
for ( t_Typ = 0; t_Typ < CatGenForm.t_Typen.length; t_Typ++ ) {
out += '<option value="' + CatGenForm.t_Typen[t_Typ] + '">' + CatGenForm.t_Typen[t_Typ] + '</option>';
}
out += '</select><input id="TypSel" name="TypSel" type="hidden" value=""></td>' +
'<td style="vertical-align:top; padding-left:1em;">' + getUIText('options') + '</td>' +
'<td style="vertical-align:top;">' +
'<table><tr><td><input id="Overwrite" type="checkbox"></td><td>' + getUIText('overwriteExisting') + '</td></tr>' +
'<tr><td><input id="UseTextSummary" type="checkbox" ' +
'onchange="this.form.Summary.disabled = this.form.UseTextSummary.checked"></td><td>' + getUIText('useSummary') + '</td></tr></table>' +
'</td>' +
'</tr></table></td>' +
'</tr></table>' +
'<p><input type="button" value="' + getUIText('preview') + '" ' +
'title="' + getUIText('generatePreview') + '" onClick="CheckPreviewVFiles()"> ' +
'<input type="button" value="' + getUIText('new') + '" title="' + getUIText('resetParams') + '" onClick="LoadCatGenForm()">' +
'<input type="button" style="float:right;" value="' + getUIText('close') + '" title="' + getUIText('closeGenerator') + '" onClick="UnloadCatGenForm()">' +
'<p id="StatusPrev" style="border: 1px solid #aaa; padding:.5em;display:none;">' + getUIText('debugInfo') + '</p></p>' +
'<div id="PreviewForm"></div>' +
'<div id="TemplateForm"></div>' +
'<div id="InsertCreateForm"></div>' +
'</div></fieldset></form><div id="tippinfo"></div>';
document.getElementById( 'content' ).innerHTML = out;
t_tippinfo = document.getElementById('tippinfo');
if ( typeof catGenFormConf.wgGenOverwrite != "undefined" && catGenFormConf.wgGenOverwrite == 1 ) {
document.getElementById('Overwrite').checked = true;
} else {
document.getElementById('Overwrite').checked = false;
}
if ( typeof catGenFormConf.wgGenUseTextSummary != "undefined" && catGenFormConf.wgGenUseTextSummary == 1 ) {
document.getElementById('UseTextSummary').checked = true;
} else {
document.getElementById('UseTextSummary').checked = false;
}
}
}
};
var TW_PERSONAL = "p-personal";
var TW_WERKZEUGE = "p-tb";
var TW_REITER = "column-one";
function InsertNode(p_href, p_text, p_id, p_tag, p_before_id)
{
var new_a = document.createElement('a');
new_a.href = p_href;
new_a.appendChild(document.createTextNode(p_text));
var new_li = document.createElement('li');
new_li.appendChild(new_a);
var tmp_nodes = document.getElementById(p_id).getElementsByTagName(p_tag);
tmp_Node = tmp_nodes[0];
if (p_before_id)
{
tmp_Node.insertBefore(new_li.cloneNode(true), document.getElementById(p_before_id));
}
else
{
tmp_Node.appendChild(new_li.cloneNode(true));
}
}
function setcursor( cursortype ) {
document.getElementById( 'content' ).style.cursor = cursortype;
for ( i = 0; i < document.getElementById( 'content' ).getElementsByTagName( 'input' ).length; i++ ) {
document.getElementById( 'content' ).getElementsByTagName( 'input' )[i].style.cursor = cursortype;
}
}
function trim( t_string ) {
return t_string.replace (/^\s+/, '').replace (/\s+$/, '');
}
function CheckPreviewVFiles( ) {
CatGenForm.CheckPreviewVFiles('c');
}
function LoadCatGenForm( ) {
CatGenForm.t_stopp = true;
setcursor( 'auto' );
CatGenForm.LoadCatGenForm( 'n' );
}
function UnloadCatGenForm( ) {
CatGenForm.UnloadCatGenForm();
}
function StartCreatingVKFiles( ) {
CatGenForm.StartCreatingVKFiles();
}
function StopProcessingVKFiles( ) {
CatGenForm.StopProcessingVKFiles();
}
function StartDeletingVKFiles( ) {
CatGenForm.StartDeletingVKFiles();
}
function GetPageName( ) {
t_Hersteller = catGenFormConf.wgPageName.replace( /_/g, " " ).replace( /\/de/g, "" ).replace( /\/en/g, "" ).replace( /\/es/g, "" ).replace( /\/nl/g, "" ).replace( /\/ru/g, "" );
document.getElementById( 'Hersteller_de' ).value = t_Hersteller;
if ( t_Hersteller.indexOf( ',' ) == -1 && t_Hersteller.indexOf( ' ' ) != -1 ) {
t_Herstellernamen = t_Hersteller.split( ' ' );
t_Herstellernamen = t_Herstellernamen.sort();
if ( t_Herstellernamen.length > 2 ) {
document.getElementById( 'Buchstabe1_de' ).value = String(t_Hersteller).substring(0, 1);
} else {
document.getElementById( 'Buchstabe1_de' ).value = t_Herstellernamen[0].substring(0, 1);
document.getElementById( 'Buchstabe2_de' ).value = t_Herstellernamen[1].substring(0, 1);
}
} else {
document.getElementById( 'Buchstabe1_de' ).value = String(t_Hersteller).substring(0, 1);
}
}
var t_tippinfo = null;
var xoffset = 15;
var yoffset = -50;
var ycompens = 40;
document.onmousemove = function(e) {
var x, y, right, bottom;
try { x = e.layerX; y = e.layerY; } // FF
catch(e) { x = event.x; y = event.y; } // IE
right = (document.documentElement.clientWidth || document.body.clientWidth || document.body.scrollWidth);
bottom = (window.scrollY || document.documentElement.scrollTop || document.body.scrollTop) + (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight || document.body.scrollHeight);
x += xoffset;
y += yoffset;
if ( t_tippinfo ) {
if(x > right-t_tippinfo.offsetWidth) {
x = right-t_tippinfo.offsetWidth;
}
if(y > bottom-t_tippinfo.offsetHeight-ycompens) {
y = bottom-t_tippinfo.offsetHeight-ycompens;
}
t_tippinfo.style.top = y+'px';
t_tippinfo.style.left = x+'px';
}
}
function tippon(text) {
t_tippinfo.innerHTML = '<div>' +
'<b><u>' + getUIText('currentContent') + '</u></b><br>' +
decodeURIComponent( text ).replace(/'/g, "'").replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/\n/g, "<br>") + '</div>';
t_tippinfo.style.display = 'block';
}
function tippoff() {
t_tippinfo.style.display = 'none';
}
/* Load it now */
$( CatGenFormLoad );