WRost auf https://wiki.genealogy.net/GenWiki:Bots/Anfragen#Unterseiten_Zufallsfunde_ohne_Kategorie :
<Ort>/Zufallsfunde
mit fehlender Kategorie
Bernd Schwendinger (f432d721) at 25 Mar 00:53
Fix #14
883 Seiten wurden bearbeitet.
43 Seiten müssen noch manuell entschieden werden - siehe auch https://wiki.genealogy.net/GenWiki:Bot-Ortzufallsfund. pages-uncat-zufallsfunde_rest.txt
Es gibt bereits das userscript bot-zufallsfund-ohne-kategorie
, das dem Erstellen einer Liste der Zufallsfunde, die keine Kategorie enthalten, dient (Details siehe https://wiki.genealogy.net/GenWiki:Bot-ZufallsfundohneKategorie).
Das Skript wurde bisher noch nicht ausgeführt.
./core/pwb.py listpages -config:user-config-prod.py -uncat -titleregex:"/Zufallsfunde$" -format:3
=> 926 betroffene Seiten
pages-uncat-zufallsfunde.txt
WRost auf https://wiki.genealogy.net/GenWiki:Bots/Anfragen#Unterseiten_Zufallsfunde_ohne_Kategorie :
<Ort>/Zufallsfunde
mit fehlender Kategorie
Bernd Schwendinger (d9a6ddb7) at 10 Feb 12:07
Es gibt viele ältere Ortsartikel, bei denen die Änderungen der Überschriften aus der Vorlage https://wiki.genealogy.net/Vorlage:Ort noch nachgezogen wurden.
Analyse des bestehenden Quellecodes lastname-map (vom 28.01.2024)
Zeile 10 und 11 legen fest, dass es der Parser die beiden Tags "geogen" (ich weiß nicht, ob das noch verwendet wird) und "lastname-map" (was sehr häufig verwendet wird) als "Hooks" betrachtet und dann die Funktion "renderGeogen" ausführt. Diese Funktion wird danach definiert. Das macht den Rest des Codes aus und alles passiert innerhalb dieser Funktion.
Die Eingabeparameter zu lastname-map, nämlich $name (also der Familienname) und $attributes (bestehtend aus size, also Bildgröße, und Mode abs(olute) bzw. rel(ative) werden ausgewertet. In Zeile 30 wird ein md5-Hash aus Name und Mode generiert. Er dient als Schlüssel zur Ablage der vielen kleinen Bildchen auf dem Server. Diese sind in einer speziellen Verzeichnisstruktur abgelegt, die aus dem Hash abgeleitet wird (Zeile 39-40). Wenn ein Bild bzw. noch nicht vorhanden oder fehlerhaft ist, wird der (heute nicht mehr aktive) Service bei legacy.stoepel.net aufgerufen und das Bild heruntergeladen, ebenso die dazu gehörenden statistischen Daten bei stoepel.net, die dann in einer Textdatei auf einem Compgen-Server gespeichert wird, falls sie noch nicht vorhanden sind.
Wenn das Bild vorhanden ist, aber kein Thumbnail, wird (Zeile 85-99) ein solches generiert.
Anschließend wird der HTML-Code generiert, um die Bilder, die statistischen Werte etc. anzuzeigen. $u enthält den kompetten Pfad mit dem Bild. (Zeile 121-132) Letztlich wird dann alles als Rückgabewert der Funktion "renderGeogen" zurückgelierfert (Zeile 134) und dann von der Wikimedia-Software automatisch ausgegeben. Das Ganze enthält auch eine Fallunterscheidung zwischen deutscher und englischer Ausgabe.
Offene Fragen (an Robert):
Gute Nachricht: Grundsätzlich müsste dieses Skript in der [Stand 28.01.24!] verwendeten MediaWiki-Version 1.35.6 und PHP-Version 7.4.29 laufen.
Frage: Der Code verwendet globale Variablen wie |$wgUploadDirectory| |$wgSharedUploadDirectory| |$wgUploadPath| |$wgTmpDirectory |und | $wgSharedUploadPath|. Kannst Du mir sagen, ob und wie diese Variablen gesetzt sind?
Der Code erstellt ein Upload-Verzeichnis |(festgelegt in $uploadDirectory ) ein Unterverzeichnis geogen. Er erstellt dieses (und wohl auch andere) mit der Berechtigung 0777. Die Frage ist, ob das Skript entsprechende Rechte hat.|
|4) Der Code greift mit der Funktion wfMsgForContent auf die spezifische Schlüssel 'Geogen_legend_relative' und 'Geogen_legend_absolute' zu. Diese sind in der alten Wiki-Umgebung definiert, ob in der neuen Umgebung auch, wäre zu klären. |
|5) Über die Variable ||$wgImageMagickConvertCommand versucht das Skript, auf das Werkzeug ImageMagick zuzugreifen. Die Frage wäre, ob das überhaupt in der aktuellen Serverumgebung installiert und ob die Variable entsprechend gesetzt ist. Es dient aber nur dazu, Thumbnails von Bildern zu erzeugen, für die noch kein Thumbnail existiert. Das ist vermutlich in unserem Fall gar nicht relevant, weil keine neuen Grafiken von stoepel.net hinzukommen. |
|6) Es wird auch die Klasse HttpClient verwendet, aber nur, um den (ohnehin nicht mehr verfügbaren) online-Dienst bei geogen.net abzurufen. Darum brauchen wir uns also nicht zu kümmern.
Wie schon am 29.01. mitgeteilt, sollten wir in zwei Schritten vorgehen:
Schritt: Aktivierung der alten Extension lastname-map auf dem neuen GenWiki, bei Bedarf unter Anpassung der Pfadangaben zu den statischen Bildern. Diese Bilder (für weit über 90% der Namensartikel) liegen ja weiterhin auf https://wiki-commons.genealogy.net/images/geogen/*.png bzw. https://wiki.genealogy.net/images/geogen/*.png Damit hätten wir für weit über 90% der Artikel eine Lösung für die Benutzer.
Schritt: Schrittwese Umstellung des Codes auf die neue dynamische Anwendung. Dabei könnten wir schrittweise (etwas vereinfacht gesprochen)
Bei beiden Schritten bringe ich mich gerne aktiv ein.
Die Anfrage wird zwar auf die Gedbas Seite weiterleitet, aber es erscheint dann folgende Meldung:
Auf exakte Suche umgeschaltet, da der Suchbegriff "{{" zu kurz ist.
Wenn man durch Klick auf den Stern eine Seite zur Beobachtungsliste hinzufügt, dann erscheint eine Meldung "Die Seite $1 wurde ...". Statt $1 müsste dort der Seitentitel stehen. Beim Löschen von der Beobachtingsliste kommt die richtige Meldung.
Der Übersetzungsfehler tritt nicht mehr auf
Die Erweiterung ist bereits im GenWiki der Version 1.39 installiert und funktioniert dort tadellos. In Version 1.35 verzichten wir auf eine Installation.
Die auf der Seite https://wiki.genealogy.net/MediaWiki:Edittools eingebundene Sonderzeicheneingabe-Hilfe (eingeblendet beim Upload-Formular oder der Quelltext-Bearbeitung) wird nicht richtig dargestellt, da das charinsert-Tag eine weitere Extension erfordert: https://www.mediawiki.org/wiki/Extension:CharInsert/de
Hier müssen wir ein völlig neues Konzept erstellen. Die Karten gibt es so nicht mehr. Vielleicht lassen sich dynamische Karten à la iFrame einbinden?
Kommt jetzt noch ein Fehler?
Ist hier noch etwas zu tun?
Ich stelle gerne ein paar Seiten zusammen.
Kannst du solche Seiten bitte auflisten und zum nächsten Meeting vorstellen (lassen)?