Larus Board

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

Vor der Nutzung

Was muß ich können, um das LB zu nutzen?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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.
Wie erlaube ich Gästen das Schreiben von Beiträgen?
Alle Versionen Erstmal sind Gäste in der Benutzergruppe Unangemeldet und erben deren Zugriffsrechte. Standardmäßig ist ihnen das Erstellen von neuen Beiträgen nicht erlaubt. Du kannst dies, sofern mit Verwalterrechten ausgestattet, bei den Zugriffsregeln in der roten Konsole einstellen. Wähle dort nacheinander "Eine Thema schreiben" und "Eine Antwort schreiben" aus. Erlaube dort der genannten Gruppe den Zugriff. Nun können auch Gäste neue Beiträge auf deinem Forum verfassen und sind sofort sichtbar. Falls du das nicht möchtest, schaltest du das bei den Benutzergruppen ab.
Manchmal werden die Inhalte nicht aktualisiert?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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!
Alle Versionen 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?
Alle Versionen 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!
Alle Versionen 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 der direkt dem Beitrag zugewiesene?
Alle Versionen Ja, das hat es.
Wie richte ich den Nachrichtenfilter ein, um Spam zu erkennen?
>= 1.1.0 Als erstes mußt du diesen in der Konfiguration aktivieren. Beachte, daß dieser Filter nur bei bestimmten Benutzergruppen seine Arbeit aufnimmt. Welche das sind, kannst du in der Verwaltung der Benutzergruppen nachschauen. Standardmäßig sind das Unangemeldet und Mitglied. Nachdem du den Filter im Formular angeschaltet hast, geht es nun an die Einrichtung. Schauen wir mal getrennt nach den Quellen, die du zum Filtern verwenden kannst.
  • Benutzerkennung (ID): Zur Zeit ist dieser Filter noch unbesetzt. Zukünftig sollen hier kurzzeitig Benutzer gelistet sein, die auffällig waren.
  • IP-Adresse: Die IP-Adresse des Benutzers kann gegen Datenbanken abgeglichen werden, ob diese kürzlich durch Spam aufgefallen ist. Üblicherweise fragt man dafür einen Namensserver (DNSBL). Deren gibt es einige mit verschiedenen Schwerpunkten in ihrer Bewertung. Für den Anfang kannst du den Anbieter Spamhaus nehmen, indem du deren Server "sbl.spamhaus.org" in das Textfeld des Einstellungsformulars einträgst.
  • Beitragtext: Der Text selber kann natürlich untersucht werden. Dafür kannst du ein lokales Programm nehmen, daß auf dem Server läuft oder du fragst eine externe Webseite ab. Das Programm muß zur Erkennung durch das Forum einen entsprechenden Rückgabewert haben. Benötigt es zusätzlich Parameter kannst du die auch angeben. Hier ein paar Beispiele (zuerst "class" dann "param" in Anführungszeichen):
    exec:/usr/bin/spamassassin "-L"
    exec:/usr/bin/spamc "-p 1234"
    sock:rest.akismet.com:80 "key=xxx,verbose=0,class=akismet"
    Das erste startet eine lokale Instanz von Spamassassin (SA). Das ist ein Programm, daß zur Erkennung von Spam-Mails verwendet wird, aber im Grunde mit jeglichem Text gefüttert werden kann. Dieser gibt einen Trefferwert zurück, den du weiter unten im Formular einstellen kannst. Der zweite Befehl ist ähnlich, aber schneller. "spamc" ist ein Programm von SA, daß ständig im Hintergrund läuft und auf Anfragen wartet. Rufst du SA direkt auf, muß es jedesmal komplett neu geladen werden. Die Parameter entsprechen denen, die jene Programme akzeptieren.

    Das letzte Beispiel leitet den Text an eine andere Webseite weiter. Aktuell ist lediglich TCP und das Protokoll HTTP möglich. Der Text wird in einer POST-Abfrage verpackt. Verfügbar ist derzeit nur der Anbieter Akismet. Damit du den benutzen darfst, mußt du dir dort zuerst einen "API-Key" besorgen, den du dann bei den Parametern einträgst.

    Die beiden Beispielquellen haben auch die Möglichkeit nachträglich Beiträge als Spam oder Ham zu melden. Das ist zur Zeit noch nicht implementiert.

Wie kann ich das digitale Signieren ausgehender E-Mails einrichten?
>= 1.1.0 Dies mußt du bei den Maileinstellungen in der Konfiguration machen. Getestet und unterstützt wird aktuell nur das Programm GnuPG, welches dem PGP-Standard folgt. Du benötigst ferner ein Schlüsselpaar, um das Signieren durchzuführen. Wie man einen solchen erstellt, entnimmst du bitte der GnuPG-Dokumentation. Schwierig ist es nicht. Fehlt nur noch die Konfiguration im Formular. Hier das Beispiel (zuerst "class" dann "param" in Anführungszeichen):
exec:/usr/bin/gpg "keyring=/home/xxx/.gnupg,keyid=0x00000000,password=" Die Parameter sollen selbsterklärend sein. Ein Passwort muß nicht verwendet werden und wird, falls doch, unverschlüsselt in der Forumkonfiguration gespeichert. Den öffentlichen Schlüssel mußt du dann noch zur Verfügung stellen (im Forum, Webseite oder Keyserver), damit die Signatur von anderen geprüft werden kann.
In der Protokollansicht sehe ich kein Bild unter Statistik?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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
  • Der jüngste Quellcode der stabilen Versionen befindet sich bei den "branches":
    http://svn.savannah.nongnu.org/svn/larusboard/branches/STABLE-x_x
    svn://svn.savannah.nongnu.org/larusboard/branches/STABLE-x_x
    Wobei du "x_x" durch die Versionsnummer ersetzen mußt, die du haben möchtest.
  • Fertige Versionen, welche auch als Paket zum Download bereitstehen, 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. Dies sind die sicheren Versionen im Gegensatz zum trunk und den branches, welche auch mal kaputten Code enthalten können und nicht für normale Endanwender gedacht sind.
  • 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
  • Du kannst ebenso von einem Release zum anderen wechseln, um sehr einfach eine Aktualisierung durchzuführen. Auf der Kommandozeile tut es: cd /lokaler/pfad/zum/larusboard
    svn switch http://svn.savannah.nongnu.org/svn/larusboard/tags/release-x.x.x
    svn update

Technisch

Was bedeutet der Debug-Modus?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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)?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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?
Alle Versionen 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...
Alle Versionen 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