Larus Board

FAQ.DE $Id: saturas $Ver: 1.0.0
Erste Hilfe

Vor der Nutzung

Was muß ich können, um das LB zu nutzen?
Als Kurzfassung: Download einer Datei, Entpacken eines ZIPs, Dokumentation lesen, Hochladen auf (d)einen Server und Aufüllen eines Formulars mit den Datenbank-Zugangsdaten. Desweiteren mußt du einen Browser bedienen können, aber das kannst du offensichtlich
Worum kümmert sich dieser Antwortkatalog?
Er richtet sich an den Betreiber, der das LB installiert. Die Nutzer des Forums erhalten dort dann eigene Hilfetexte für ihre Bedürfnisse.

Erste Schritte

Wie erhalte ich alle Rechte?
Während der Installation wird dein Benutzerkonto der Gruppe Verwalter zugeordnet. Diese Gruppe ist für jegliche technische Unterstützung des Forums verantwortlich. Mitglieder der Gruppe Moderator dürfen die geschriebenen Beiträge verwalten. Sofern du beide Rechte haben möchtest, solltest du nach der Anmeldung unter Mein Profil dich der Gruppe Super-Benutzer zuweisen.
Manchmal werden die Inhalte nicht aktualisiert?
LB speichert fertig erstelle Seiten in Dateien zwischen ("Cache"). Dies kann in der Konfiguration abgeschaltet werden, ist aber nicht empfohlen. Es wird durchgeführt, um die Serverlast zu senken und Seiten schneller zum Browser des Nutzers schicken zu können. Ein paar Bereiche werden nach einer bestimmten Zeitspanne (meist eine Stunde) automatisch neu erstellt und nicht wenn sie es sollten.
  • Startseite: Beliebte Stichwörter werden nach einer Stunde neu eingelesen
  • Startseite: Beiträge nach Monat werden von einer geplanten Aufgabe jeden Tag neu erstellt
  • Beitragansicht: Beiträge werden ein Jahr vorgehalten
  • Beitragansicht: Die optionale Navigationsleiste ist ein Monat gültig und wird *nicht* auf Konsistenz geprüft
  • Suche: Ergebnisse erhalten eine Nummer (ID) und werden für dreißig Minuten vorgehalten
  • Moderator-Konsole: Die gesamte Seite wird alle zehn Minuten neu erstellt
  • Verwalter-Konsole: Die Statistiken werden dreißig Minuten und die Ausstehenden Anfragen zehn Minuten gehalten
Sofern nichts hilft, kannst du die Dateien im Zwischenspeicher-Ordner löschen. Sie werden selbständig neu eingelesen. Das kannst du mit einem Dateimanager direkt im Dateisystem tun oder melde dich mit einem Benutzerkonto an, welches die Rechte besitzt die Zwischenspeicher-Verwaltung aufzurufen - üblicherweise Moderatoren oder Verwalter.
Mein gesendeter Beitrag erschient nicht auf der Startseite?
Ja, das ist in der Tat verwirrend, wenn du mit LB auf Tuchfühlung gehst. Es werden nur öffentliche Beiträge auf der Startseite angezeigt. Das schließt unsichtbare aus, welche jedoch von Moderatoren freigeschaltet werden können. Zusätzlich können Beiträge eine Zugriffsbeschränkung haben. Nur solche ohne werden in die Liste aufgenommen. Jeder Beitrag kann jedoch über die Suche gefunden werden oder als Ausstehende Anfrage in der Moderator- oder Verwalter-Konsole.
Was bedeutet "noch keinen Kalendar erstellt" auf der Startseite?
Nach einiger Zeit werden alle Monate aufgelistet seitdem der erste Beitrag verfasst wurde. Eine der geplanten Aufgaben übernimmt dies. Über die Links sind dann schnelle Suchen nach Monaten und Jahr möglich.
Gelegentlich sehe ich alte Suchergebnisse und/oder falsche Links zu Beiträgen!
Das liegt daran, daß die Suchergebisse ebenfalls zwischengespeichert werden. Jede Suchanfrage erhält anhand ihrer Parameter eine eindeutige ID und wird mit den zutreffenden Beitrag-IDs gespeichert. Häufige Suchanfragen müssen so seltener komplett bearbeitet werden. Nach einiger Zeit veralten diese Daten natürlich und werden von einer Geplanten Aufgabe entfernt. Der aktuelleste Zustand eines jeden Beitrags kann leider nicht durchgängig berücksichtigt werden. Das würden den Zwischenspeicher ad absurdum führen.

LB benutzen

Wie funktionieren die Zugriffsregeln?
Erstmal wird ein Regelsatz anhand der Aktion ausgewählt, welche der Benutzer ausführt. Diese kannst du in der Adresszeile deines Browsers ablesen. Üblicherweise findest du dort ein "lb_main.php?do=xxx...", wobei das xxx für die Aktion steht, z.B. "overview" oder "acp_acl_list". Dieser Aktion werden dann Regeln zugeordnet und so kann man den Zugriff erlauben oder verweigern. Grundsätzlich hat eine Regel, die einen einzelnen Benutzer trifft Vorrang vor den Benutzergruppenregeln. Die effektiven Zugriffsregeln eines Benutzers kannst du in seinem Profil einsehen (benötigt Verwalterrechte).
Da sind komische Standardvorgaben in den Zugriffregeln!
Nun, einige Regeln sind mit Absicht so gesetzt wie sie sind. Nehmen wie mal die Gruppe Mitglied. Dort ist die Anmeldung verweigert, aber das Abmelden erlaubt. Registerieren ist ebenfalls verweigert. Dito bei Super-Benutzer, die ja eigentlich alle Rechte haben sollen. Angemeldete Nutzer brauchen diese Aktionen gar nicht ausführen - oder muß er sich weiterhin registrieren oder nochmals anmelden können?
Haben die Regeln eines Beitragpräfix Vorrang gegenüber dem zugewiesenen Beitrag?
Ja.
In der Protokollansicht sehe ich kein Bild unter Statistik?
Es gibt hier zwei Möglichkeiten der Bildanzeige. Einmal als sogenannte Vektorgrafik. Diese kann von modernen Browser direkt angezeigt werden, manche mit Hilfe eines einem speziellen Plugins. Falls das nicht klappt, wird eine "normale" Rastergrafik erstellt, wofür jedoch "gd" als Erweiterung in PHP benötigt wird. Ob diese vorhanden ist, kannst du sehen, wenn du den ersten Schritt der Installation erneut ausführst.
Wie funktionert das Prüfen auf Software-Aktualisierung?
Diesen Link findest du auf der Verwalter-Konsole. Er überprüft, ob es eine neuere als deine installierte Version gibt. Zur Zeit ist das noch simpel und nicht automatisch. Nur benötigte Daten werden an unseren Server übertragen (eine minimale HTTP-GET Anfrage) und jegliche Vergleiche werden auf deinem Server durchgeführt. Zukünftig mag das erweitert werden, falls unsere Nutzer das möchten.
Was bedeutet das Impressum und Datenschutz am Seitenende?
In deinem Sprachordner kannst du die Datei "legal.txt" erstellen. Dort kannst du dein Impressum (Verantwortlicher für das Forum) und Datenschutzerklärung (welche Daten du zu welchen Zweck erhebst) verfassen. Bitte beachte, daß jedes Land dort seinen eigenen Vorstellungen hat. Manche benötigen es nicht, anders ist es in Deutschland. Im Zweifelsfall solltest du einen Anwalt konsultieren oder entsprechende Foren im Internet.
Gibt es eine Liste der möglichen Textformatierungen?
Aber sicher. Wie in anderen Foren üblich kannst du deinen Text mit Hilfe von "bbcode" gestelten. Diese sind häufig gleich innerhalb der Softwarefamilie. Grundsätzlich benutzt du "Tags", die dem Textparser sagen, was du möchtest. Einige benötigen einen Anfangs- und Endtag, anderen nicht. Bitte ersetze die runden mit eckigen Klammern, wenn du sie einfügst. Wir haben das hier nicht gemacht, weil die Blogsoftware sie selber interpretieren würde
  • (hr) - Erstelle eine horizontale Linie
  • (b)...(/b) - Macht den Text zwischen den Tags fett
  • (i)...(/i) - Macht den Text zwischen den Tags kursiv
  • (u)...(/u) - Macht den Text zwischen den Tags unterstrichen
  • (s)...(/s) - Macht den Text zwischen den Tags durchgestrichen
  • (quote)...(/quote) - Zeigt einen zitierten Text an
  • (ul)...(/ul) - Erstellt eine Liste (nicht "bbcode" kompatibel)
  • (li)...(/li) - Fügt einen Eintrag der Liste hinzu (nicht "bbcode" kompatibel)
  • (notice)...(/notice) - Betont einen Absatz. Kann nur von Moderatoren oder Verwaltern benutzt werden (nicht "bbcode" kompatibel)
  • (url=xxx) - Bindet eine URI zur externen Resource ein. Erlaubte Protokolle sind "http,https,ftp,ftps".
  • (img=xxx) - Bindet ein externes Bild ein. Die Protokolleinschränkungen gelten auch hier.
  • (embed=xxx) - Wie "img" nur werden sie im Browser "embedded". Das wird für alles benötigt, was ein Browser-Plugin benutzt (nicht "bbcode" kompatibel)
  • (mail=xxx) - Inkludiert eine E-Mail Adresse als "mailto"-Link
  • (link=xxx) - Verknüpft (numerisch) ein anderen Beitrag oder zu einem (alphanumerischen) Anker in deinem Text (nicht "bbcode" kompatibel)
  • (anchor=xxx) - Erstellt einen Anker zu dem du wie in HTML bei "" springen kannst (nicht "bbcode" kompatibel)
  • (format=xxx)...(/format) - Dieses Tag kann mehrere Formatierungsanweisungen als Schlüssel-Wert-Paar zuweisen. "xxx" muß durch diese erstzt werden und mehrere werden durch ein Komma getrennt. Paare mit "Schlüssel:Wert". Hier ein Beispiel: "b,s,color:#f00,inline" (nicht "bbcode" kompatibel)
    b - fett
    i - kursiv
    u - unterstrichen
    s - durchgestrichen
    inline - zeigt das Element "inline" nicht als Absatz
    block - zeigt das Element als Block (Standard)
    left - packt den Block auf die linke Seite
    right - packt den Block auf die rechte Seite
    color:xxx - Textfarbe. Erlaubt sind Namen oder hexadezimale Angaben wie "#f00".
    bgcolor:xxx - Hintergrundfarbe. Die Werde sind dieselben wie bei "color".
    size:xxx - Schriftgröße. Erlaubt sind alle Werte, die auch in CSS vorkommen (em, px ,pt , % und so weiter).
    width:xxx - Breite des Blocks. Erlaubt sind alle Werte, die auch in CSS vorkommen (em, px ,pt , % und so weiter).
    class:xxx - Benutzt ein vorgefertigtes Muster aus dem Stylesheet. Muß alleine stehen und der CSS-Präfix lautet "xf_tp_usercss__".

Fortgeschritten

Ich habe einen Wert in der Datenbank geändert, aber nichts tut sich?
Hast du den Forum-Zwischenspeicher in der Konfiguration aktiviert (standardmäßig der Fall)? Etliche Einstellungen werden im lokalen Zwischenspeicher vorgehalten und benutzt. Du solltest die entsprechenden Dateien dort löschen, welche dann automatisch mit den jüngsten Daten ersetzt werden.
Was macht eine Reparaturinstallation?
Sie setzt einige Einstellungen auf den Anfangswert einer Erst-Installation zurück. Dazu zählen alle Zugriffslisten der Standard-Benutzergruppen, die gesamte Konfiguration, alle geplanten Aufgaben, alle Standard-Benutzergruppen und Beitragpräfixe. Eigens erstellte Benutzergruppen und deren Zugriffslisten bleiben jedoch unangetastet. Ebenso wirst du deine Konfiguration danach neu einstellen müssen. Gestartet wird die Reparatur wie eine normale Installation. Die Forumsoftware erkennt dann, daß sie sich reparieren soll.
Wie sollte ich Sicherungen meiner Datenbank erstellen?
Bitte benutze dafür die Werkzeuge, die dein Anbieter mitliefert. Normalerweise wird auch etwas zum Wiederherstellen beigepackt. Im Falle von MySQL ist dies "mysqldump" oder etwas abgewandelt bei PostgreSQL. Wenn du webgestützte Lösungen vorziehst oder keinen direkten Zugriff auf den Server hast, kannst du auch PHPMyAdmin (MySQL) oder PHPPgAdmin (PostgreSQL) versuchen. Häufig sind diese bereits vorinstalliert.
Kann ich die Datenbank-Software nachträglich wechseln?
Ja, das kannst du. Sofern du deine Daten übernimmst. Das ist nicht ganz einfach und sprengt den Rahmen dieser Dokumentation. Erfahrene Benutzer sollten das hinkriegen, ansonsten frage einfach.
Gibt es einen Weg immer ein aktuelles LB zu haben?
Ja, aber du benötigst dafür weitere Programme und ein bißchen Zeit um in "Softwareversionierung" einzusteigen. Unser neuester Quellcode und fertige Versionen sind im "Subversion Repository" gespeichert. Das ist ein Stück Software, welches uns hilft Änderungen an LB zu protokollieren.
  • Du kannst das SVN-Repository direkt im Browser anschauen oder ein Programm benutzen, um die Magie von Subversion direkt zu erfahren. Entweder benutzt du Kommandozeilen-Programme, welche praktisch auf allen verbreiteten Plattformen verfügbar sind oder eines mit grafischer Oberfläche. Unter Microsoft Windows kannst du TortoiseSVN probieren, was sich in das Kontextmenüs deines Explorers integriert. Unter Linux gibt es unter anderem RapidSVN oder "kdesvn". Beide sollten über das übliche Repository deiner Distribution zu haben sein (synaptic, yum, aptitude, zypper etc.).
  • Dann solltest du dich entscheiden, ob du den neuesten Quellcode haben möchtest, mit der Gefahr gelegentlich nicht lauffähige Software zu bekommen. Jedoch mit dem Vorteil schnell Fehlerbehebungen zu bekommen. Andererseits kannst du dich für die fertig verpackten Versionen entscheiden und von einer zur nächsten hüpfen. Beide Wege sind über die Repository-URL zu erreichen. Du kannst per HTTP oder SVN-Protokoll auf sie zugreifen.
  • Der neueste Quellcode befindet sich im "trunk" (Stamm):
    http://svn.savannah.nongnu.org/svn/larusboard/trunk
    svn://svn.savannah.nongnu.org/larusboard/trunk
  • Gepackte Versionen, welche einen Schnappschuß des jeweils aktuellen Quellcode darstellen, sind in:
    http://svn.savannah.nongnu.org/svn/larusboard/tags/release-x.x.x
    svn://svn.savannah.nongnu.org/larusboard/tags/release-x.x.x
    Wobei du "x.x.x" durch die Versionsnummer ersetzen mußt, die du haben möchtest.
  • Sobald du dich für eine URL entschieden hast, benötigst du eine Kopie dessen - "checkout" genannt. Über eine graphische Oberfläche geht dies komfortabel. Suche nach der Option "Checkout" und gebe die URL an sowie den lokalen Ordner für die Kopie. Das ist schon alles. Manche Programme erfordern es das Repository erst zu öffnen bevor eine Kopie gemacht werden kann. Auf der Kommandozeile genügt folgender Befehl: svn co http://svn.savannah.nongnu.org/svn/larusboard/trunk /lokaler/pfad/zum/larusboard
  • Der letzte Schritt ist das Einspielen von Aktualisierungen. Dies wird von SVN schlicht "Update" genannt. Dies pflegt alle Änderungen seit deinem "Checkout" in die lokale Kopie ein. Graphische Programme haben dafür üblicherweise einen Knopf zum drücken. Auf der Kommandozeile tut es: cd /lokaler/pfad/zum/larusboard
    svn update

Technisch

Was bedeutet der Debug-Modus?
Dies ist spezieller Zustand des Forums für Entwickler. Den können sie benutzen um der Software während sie abläuft unter die Haube gucken können. Normale Benutzer können den getrost weglassen und ausschalten. Dafür brauchst du nur die "class.root.php" im "privaten Ordner" in einem Editor öffnen und die Zeile mit "const DEBUG = xxx" anpassen.
Werden irgendwelche Daten verschlüsselt?
Ja, einige. Vorweg: Alle Daten im Dateisystem oder der Datenbank sind unverschlüsselt. Dies ist Sache des Betriebssystems. Bitte sieh in deinem Systemhandbuch nach oder frage einen Administrator, wenn du denkst, daß deine Daten wertvoll sind. LB schützt jedoch Passwörter und Browser-Cookies. Ersteres werden als sogenannter Hash (eine Art digitaler Fingerabdruck) in der Datenbank und niemals im Klartext abgelegt. Daher können sie im Fall des Verlustes nicht wiederhergestellt werden, sondern nur neu erstellt. Sobald der Browser Passwörter überträgt oder Cookies, werden diese chiffiert. Das ist unabhängig von weiteren Schutzmaßnahmen wie gesicherte Kanäle über SSL (HTTPS).
Warum unterstützt ihr mehrere Datenbank-Software?
Nun, unser Augenmerk liegt bei PostgreSQL, da es mehr Fähigkeiten bietet als MySQL (5.x). Ohne hier in Details abzugleiten, können wir sagen, daß PostgreSQL mehr in Datensicherheit investiert. MySQL bietet nur grundlegende Fähigkeiten und wird von vielen Anbietern eingesetzt.
Warum nutzt ihr Unicode (UTF-8)?
Durch das Verwenden von Unicode können andere Sprachen leicht erstellt werden. Üblicherweise hat jede Sprache ihre eigenen Zeichen und teilen nur wenige mit anderen wie (arabische) Ziffern. Diese sind alle im Unicode (UTF-8) enthalten und so fallen (fehlerträchtige) Umwandlungen von einem Zeichensatz in einen anderen weg.
Ich bin Entwickler. Was sind die wichtigen Methoden der Kernklassen?
Dies sollte dir helfen interne Variablen zu verarbeiten, Benutzereingaben zu prüfen, die Datenbank zu fragen und asynchrone Anfragen abzuschicken. Bitte beachte, daß die Quellcode-Sprache Englisch ist und bleibt.
  • XFCache::(get|put|purge) - holt, packt oder löscht Daten aus dem Zwischenspeicher
  • XFCache::topic - Beitrag-Zwischenspeicher, enthält Meta-Daten
  • XF::date - macht aus Zeitstempel menschenlesbare Angaben
  • XF::file_handler - erlaubt es Dateien zu lesen, schreiben und zu löschen
  • XF::get_(cfg|group|user) - holt eine Konfigurationseinstellungen, Benutzer- oder Gruppendaten
  • XF::link - erstellt einen Link für den Browser oder Weiterleitungen
  • XF::logger - schickt eine Nachricht an das Logbuch
  • XF::sanitize_var - prüft Benutzerangaben anhand einiger Regeln
  • XF::sql_query - erstellt eine Datenbankabfrage
  • XF::tan - legt eine Transaktionsnummer für eine Benutzeraktion fest
  • XF::vault_query - speichert oder gibt interne Variablen zurück
  • XFUI::html_(head|foot|redirect) - hmm, was meinst du? :)
  • XFUI::ajax_init - richtet asynchrone Anfragen ein und muß vor html_head() aufgerufen werden
  • XFUI::lang_str - übersetzt eine Zeichenkette in geforderte/aktuelle Sprache

Ich bin Entwickler. Welche Funktionen werden in den Templates benötigt?
Nun erstmal gibt es beim Hersteller der Smarty-Engine ein Handbuch. Üblicherweise werden Variablen dem Template (Vorlage) durch das PHP-Skript zugewiesen. Obschon der Benutzer den Zwischenspeicher abschalten kann, solltest du deine Erweiterungen mit diesem testen. Alle Inhalte mit Ausnahme der "inserts" von "insert_xfi()" werden zwischengespeichert. Benutze diese für allen Live-Inhalt, der frisch bei jedem Seitenabruf bereitstehen muß.
  • Variablen zuweisen - Fügt NAME ein. Muß vorher im PHP-Skript mit XF::$tpl->assign() zugewiesen werden.
    {insert name='xfi' class='var' var='NAME' [ escape=[0|1] ]}
  • Datumsangabe - Erstellt aus einem Integer-Zeitstempel eine menschenlesbaren Ausgabe. Der Syntax für FORMAT kann im PHP-Handbuch bei strftime() gefunden werden, readable erzeugt sowas wie "Heute, xx:yy" anstatt des langen Datums.
    {insert name='xfi' class='date' ts='TIMESTAMP' [ format='FORMAT' readable=[0|1] now=[0|1] ]}
  • Zeichenkette übersetzen - hole NAME aus der Übersetzungstabelle und füge deren Inhalt ein.
    {insert name='xfi' class='i18n' var='NAME' [ lang='LANGUAGE' ]}
  • Link - Erstellt einen Link. Setzt ACTION zur Ausführung. Jegliche Argumente können als Schlüssel-Wert-Paar angehängt werden.
    {insert name='xfi' class='link' action='ACTION' [ ... ]}

Sonstiges

Kann ich helfen das LB zu verbessern?
Ja, natürlich! Je nach deinen Kenntnissen kannst du uns mit Ideen, Fehlerberichten oder sogar dem Zusenden von Patches helfen. Nutze dafür bitte unsere Supportseiten.
Ich möchte gerne xyz im LB haben...
Nun schaue erstmal auf der Seite mit der aktuellen Entwicklung nach. Dort listen wir einige Dinge auf, die bereits in Planung sind oder abgelehnt wurden. Wenn du eine weiteren Wunsch hast, dann kannst du den auf unseren Supportseiten einstellen.


http://freesoftware.net23.net/larusboard/static.php?page=static-faq-deutsch