Webtrees Handbuch/Anleitung für Webmaster/Erweiterungsmodule/Treeview-Extended
- Handbuch-Abschnitt noch im Aufbau
Abschnitt 8.10.5 - Treeview-Extended
<- Zu Abschnitt 8.10 - Erweiterungsmodule |
Der Standard-interaktive Sanduhr-Diagramm von webtrees kann durch ein Erweiterungsmodul ersetzt werden.
Steckbrief
- Modulname: huhwt-xtv (Treeview Extended)
- Autor: huhwt (EW.H)
- Passende webtrees-Versionen: 2.1
- Speicherort
- für webtrees 2.1: GitHub
- Modulkategorie: Diagramme
- Modulfunktion: Menü "Diagramme" - Unterfunktion in der Listenansicht bzw. Personenseite "Personenseite" - Reiter "Interaktives Sanduhrdiagramm"
Beschreibung
Das Erweiterungsmodul 'Treeview Extended' oder kurz 'XTV' ersetzt das webtrees-Modul gleichen Namens komplett und erweitert die Funktionalität erheblich.
Ausgangzustand
Das "Interaktive Sanduhrdiagramm" (IASD) zeigt für eine gegebene Person als Ausgangspunkt seine jeweiligen direkten Vorfahren und die Nachkommen jeweils mit ihren Familien an. Gestartet wird mit einer festen Auflösungstiefe von 4 Generationen. Personen werden mit ihren Partnern gemeinsam in einer umfassenden Box angezeigt, die Boxen sind mit Linien verbunden. Angezeigt werden jeweils die Namen und Geburts- und Sterbedatum, Informationen zu den Eltern sind als Tooltip hinterlegt. Klick auf einen Personen-Eintrag expandiert die Box, jetzt wirkt der Name als Link zur jeweiligen Personen-Seite, es gibt ein Aktions-Icon, über welches ein eigenes IASD für die Person aufgemacht werden kann, und es gibt ergänzende Informationen. Erneuter Klick in die expandierte Box setzt sie wieder auf den Ausgangzustand zurück.
Die Boxen am Rand der Ansicht können fallweise einen kleinen "Stummel" angehängt haben, dieser dient als Indikator dafür, dass es anhängende Folgegenerationen gibt, die Ansicht also erweitert werden könnte.
Die Erweiterung wird durch Klick in die Ansicht außerhalb einer Personen/Familien-Box gestartet; per AJAX-Call werden die anhängenden Personen/Familien abgefragt und in die Ansicht eingebaut. Nach einem AJAX-Call ist die Ansicht komprimiert, das Bestreben geht dahin, dass alle Generationen auf einer Bildschirmbreite dargestellt werden können; erzielt wird das dadurch, dass die Höhen der Boxen nunmehr variabel angepasst werden, es sind immer noch alle Informationen sichtbar. Durch Klick auf eine Schaltfläche oben links in der Ansicht kann der Grundzustand - feste Höhe und Breite - wieder hergestellt werden. Die Breite der Ansicht ist aber dann eventuell so, dass nicht mehr alle Boxen komplett angezeigt werden. Die Ansicht ist verschiebbar, erreicht man die Ränder, sieht man, dass es horizontale und vertikale Scrollbars gibt. Mit Klick auf eine weitere Schaltfläche kann die Ansicht in Vollbild-Modus gesetzt werden.
Technische Grundlage
Das Grundkonstrukt ist eine HTML-Tabelle, die jeweiligen Nachkommen und Vorfahren sind als geschachtelte Tabelle-in-Tabellen-Zellen umgesetzt. Das ist einerseits ausgesprochen "Old-School", hat aber durchaus gewisse Vorteile - diese Art der Aufbereitung war in den Anfangszeiten des Internets die einzige Option, um Informationen strukturiert darzustellen; die Browser sind für diese Darstellungen bis in Extrem optimiert worden und man kann davon ausgehen, dass selbst sehr große Ansichten mit einigen 1000 Boxen stabil und performant dargestellt werden. Die Größenanpassungen beim Umschalten des Ansichts-Modus sind nahezu gänzlich unempfindlich gegenüber der Anzahl der dargestellten Elemente und das Einkoppeln von zusätzlichen Boxen beim Expandieren wird äußerst schnell umgesetzt - immerhin ändert sich fallweise die Geometrie der gesamten Darstellung großräumig. Eine SVG-basierte Darstellung mit Neuberechnung der gesamten Geometrie dürfte diesbezüglich eher Aussetzer zeigen.
Kritik
Das Verfahren hat einige Mankos:
Keine Information über die Zahl der angezeigten Personen Keine Information bei den Boxen, welcher Generation sie zuzuordnen sind Keine Übersichtliste der angezeigten Personen Keine Möglichkeit, die Expansion zu beeinflussen Keine Möglichkeit, Teile der Ansicht auszublenden Keine Möglichkeit, die anfängliche Auflösungstiefe nach persönlichen Präferenzen anzupassen Keine Möglichkeit, einen aktuellen Zustand zu Dokumentationszwecken zu nutzen (bestenfalls Screenshot, der aber nur einen Teil der Gesamtansicht einfangen kann)
Erweiterungs-Modul
huhwt-xtv behält die technische Grundlage bei und ergänzt Steuerung und Einstellung durch diverse zusätzliche Elemente.
Zusammenfassung
XTV erlaubt es, quasi maßgeschneiderte Ansichten von Abstammungslinien darzustellen, indem nicht relevante Teile reversibel aus der Ansicht entfernt werden können. Es gibt zu jedem Zeitpunkt exakte Angaben über die Zahl der in der Ansicht enthaltenen Personen und potentielle Anknüpfungspunkte. Der Export von Namensliste oder Zustand der Ansicht als PNG erlaubt es, diese für andere Zwecke wie z.B. externe Dokumentationen zugänglich zu machen. Die Weitergabe an den Sammelbehälter ermöglicht es, ganze Teilbäume zu selektieren.
Upgrade
Ersetzen Sie zum Aktualisieren einfach die bestehenden Dateien durch diejenigen aus der neuesten Version.
Übersetzung
Sie können helfen, dieses Modul zu übersetzen. Es verwendet das po/mo-System. Sie können über einen Pull-Request in GitHub (wenn Sie wissen wie das geht) oder per E-Mail an den Programmautor weitere Übersetzungen beitragen. Aktualisierte Übersetzungen werden in der jeweils nächsten Version dieses Moduls enthalten sein.
Folgende Sprachen sind verfügbar
- Englisch
- Deutsch
- Niederländisch.
Unterstützung
Sie können Fehler oder Wünsche für Erweiterungen auf der "issue"-Seite bei GitHub melden,
Sie können bei Fragen auch das webtrees-Forum mit dem Themenbereich "Customising" nutzen.
Lizenz
- © 2024 huhwt - EW.H
- abgeleitet von webtrees - © 2024 webtrees-Entwicklungsteam
Dieses Programm ist freie Software: Sie können es unter den Bedingungen der GNU General Public License, veröffentlicht von der Free Software Foundation, entweder in Version 3 der Lizenz oder (nach Ihrer Wahl) jeder späteren Version, weitergeben und/oder modifizieren.
Dieses Programm wird in der Hoffnung verteilt, dass es nützlich sein wird, aber OHNE JEGLICHE GEWÄHRLEISTUNG; ohne auch nur die stillschweigende Gewährleistung der MARKTFÄHIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Weitere Einzelheiten finden Sie in der GNU General Public License, die Sie unter http://www.gnu.org/licenses/ finden.