CBACK Forum – eine erweiterbare Forensoftware

Seit ich die Siedler 3-Community mit betreue habe ich auch Kontakt mit der dort seit jeher eingesetzten Forensoftware namens CBACK. Diese wird von Chris aus dem Saarland seit ca. 2006 entwickelt und kostenpflichtig zur Nutzung angeboten. Die Preise sind für das was man bekommt hervorragend.

Doch was kriegt man?

Zunächst mal eine Forensoftware die sich wirklich auf das essentielle für Foren konzentriert. Eine Datenbank mit Foren-, Themen- und Beitrags-Tabellen, eine Nutzertabelle inkl. einfacher Berechtigungsstruktur. Kein Schnickschnack den man erst explizit deaktivieren muss, weil man ihn für den eigenen Anwendungsfall gar nicht benötigt. Durch diesen Minimalismus ist das Forum auf jedem Webspace extrem schnell in der Auslieferung von Seiten an die Besucher.

Für das Frontend wird ein Style bei der Installation bereits mitgeliefert, weitere stehen zum Download zur Verfügung. Das Backend (ACP genannt) ist aufgeräumt und gut sortiert. Sofort nach Installation kann man loslegen und sein Forum mit Themenbereichen füllen sowie weitere Berechtigungsgruppen für Nutzer anlegen.

Als Forenbetreiber muss man zur Nutzung des CBACK Forums kein Programmierer sein. Man kommt, wenn man Anpassungen nicht selbst vornehmen möchte, mit HTML, CSS, JavaScript oder PHP auch gar nicht in Kontakt. Und wenn man doch mal Unterstützung benötigt kann man sich an die Community oder den Support wenden.

Die Erweiterbarkeit

Das System ist durch Plugins extrem erweiterbar. CBACK selbst wie auch die Community stellen eine Vielzahl an Plugins zur Verfügung. Diese sind über das ACP per Upload einfach zu installieren. Anschließend stellen die meisten Plugins auch Konfigurationsmöglichkeiten zur Verfügung.

Meine eigenen CBACK-Plugins

Ich habe bereits vor Jahren damit begonnen das Forum durch community-spezifische Plugins zu erweitern – Plugins die nur von der Siedler 3 Community benötigt werden. Hauptsächlich beschäftigte ich mich in meiner Freizeit damit um mich weiterzubilden, neue Dinge zu lernen und vorhandenes Wissen anzuwenden und zu vertiefen.

Mit der Zeit wuchs aber mein Wunsch das was ich mache auch anderen Nutzern als unserer Community zur Verfügung zu stellen. Ich hatte Ideen für Dinge die unserer Community ohnehin niemand nutzt – und manche werden auch gar nicht wahrgenommen. Daher begann ich einzelne Plugins allgemeiner zu gestalten – z.B. ein Portal-Plugin, welches als Einstiegspunkt in das Forum dient. Oder ein Plugin zur Optimierung des von Smarty generierten Quellcodes. Eine Übersicht zu diesen Plugins findet ihr hier.

Kritik zum CBACK Forum

Durch meine intensive Arbeit an dem Forum haben sich bei mir kleinere Kritikpunkte aus Entwicklersicht gebildet die ich hier gerne dennoch erwähnen möchte:

  • Objektorientierter Ansatz nicht zu Ende gedacht
    Die von der Forensoftware genutzten Klassen stellen Daten größtenteils nicht als Objekte zur Verfügung sondern stellen selbst die Funktionalität inkl. Quellcode-Ausgabe zur Verfügung. Dadurch ist es etwas schwierig manche Bestandteile des Forums zu beeinflussen.
  • Verwendung von UNIX-Zeitstempeln
    Leider wird an allen Stellen im Forum mit UNIX-Zeitstempeln hantiert – und auch gerechnet. Ich versuche darauf schon seit langem zu verzichten zumal PHP mit DateTime() auch ein passendes Objekt zur Berechnung und Ausgebe bereitstellt – selbst in MySQL ist es locker machbar.
  • bereitgestellte Styles nicht flexibel genug
    Möchte ein Anwender z.B. eine Ausgabe im Frontend weg haben, muss er das Template per Hand anpassen. Es gibt leider an nur wenigen Stellen die Möglichkeit z.B. per Häkchen in den Einstellungen etwas ein- oder auszublenden.
  • Es ist nicht möglich PHP-Dateien des Forums per Cronjob aufzurufen. Das wird leider durch eine rein auf Web-Zugriff ausgerichtete Sicherheitsfunktion unterbunden.
  • UIKit in Version 2 als UI-Framework ist manchmal etwas schwierig in der Handhabung. Man verteilt wild viele Klassen an ein Element um dann doch nur einen kleinen Abstand erreichen zu wollen. Individuelle Sachen sind damit manchmal nur schwer umsetzbar.