Zitat von Badwater
Wenn Du mal Zeit hast kannst Du ja mal ne kurze Zusammenfassung geben, was Du machen musstest um ein von der Software nicht unterstütztes BB bei Tapatalk einzuklinken.
Wie versprochen, auch hierzu eine entsprechende Rückmeldung.
Tapatalk ist recht umfangreich und bildet im Prinzip alles ab, was ein Forum heutzutage kann. Dabei stellt Tapatalk zum einen die App und zum anderen die passende API bereit, die recht gut dokumentiert ist. Die Kommunikation zwischen Forum und App läuft direkt, also nicht über einen Tapatalk-Server. Einzig zum Suchen des Forums benötigt man einmalig die Tapatalk-Datenbank. Der Datenaustausch zwischen App und dem Forum wird mittels XMLRPC erledigt. Die Daten können GZIP-komprimiert gesendet werden. Cookies werden unterstützt. Tapatalk bietet ein PHP-Starter-Kit an, das eine brauchbare Basis darstellt, jedoch nicht ohne Fehler daherkommt und auch eine Spaghetti-Code-Programmbasis von 2002 mit PHP4 verwendet. Leider musste ich feststellen, dass quasi alle vorhandenen Plugins diese Basis ausbauen, anstatt es sauber objekt-orientiert zu implementieren.
Ich bin hier einen anderen Weg gegangen. Zwar ist das Woltlab Burning Board Lite 1.0 auch weit von Objektorientierung entfernt und auch an sich eher mäßig implementiert. Aber mit ein bisschen Geschick kann man das Forum recht gut an T. anbinden ohne allzu viel doppelten Code zu haben. Ich muss dazu sagen, dass einige meiner eigenen Optimierungen des Forums in der Vergangenheit sich sehr positiv hierauf ausgewirkt haben, z. B. Umstellung auf UTF-8 und Session ausschließlich Cookie-basiert.
Der erste Schritt war also, eine Basis zu implementieren. Tapatalk spricht einen Service an und ruft entsprechende Funktionen ab. Das Ganze ist ein Grund-Objekt mit zusätzlicher Modell-Klasse.
Im zweiten Schritt wurden die absoluten Grundfunktionen eingebaut, damit T. überhaupt mit dem Forum sprechen kann. Das sind i. W. die Funktionen "get_config" und "get_forum". Damit übergibt man die unterstützten Features (keine Passwörter oder andere "schwierige" Daten) und sämtliche vorhandenen Foren. T. speichert das alles im lokalen Cache auf dem Tablet/Smartphone.
Sodann habe ich mich schrittweise vorgearbeitet: erst Threads, dann "letzte Postings", Threadanzeige, User-Profile. An der Stelle habe ich den Code optimiert und etwas refactored, also Auslagerung von bestimmten Programmteilen in Funktionen, Kontrolle der SQL-Queries hinsichtlich Performance (das Ding soll ja schnell laufen und den Server nicht überlasten). Danach habe ich die Schlussimplementierung mit Tests vorgenommen: PNs und die grundlegende Suche. Zuletzt noch Review des Codes aufgrund von Sicherheitsaspekten (Cross-Site-Scripting, SQL-Injection, ...) und dann die Veröffentlichtung.
Zeitaufwand: superlang, war überrascht wie lange man da dran sitzt wenn man es sauber machen will. Müssten insgesamt etwa 7 PT gewesen sein.
Zitat von Badwater
PS: Vorsichtige Frage. Gepostete Fotos aus dem Tapatalk-hosting sieht man noch nicht. Ist das noch so, oder kann man das irgendwo einstellen?
Das unterstützt T. glaube ich nicht - Bilder werden einfach nicht angezeigt. Nur Attachments.