Adminpanel für blueimp AjaxChat


Hiho,

auf blueimp.net gibts einen Open Source Ajax Chat der auf jedem Webserver mit php und MySql ganz einfach installiert werden kann. Das ist ne super Sache um sich schnell mit mehreren Menschen abzustimmen ohne ICQ Nummern oder Emailadressen austauschen zu müssen. Bei mir kommt er zB für ein Browserspiel zum Einsatz.

Leider ist die Verwaltung noch etwas unkonfortabel, alle Benutzer müssen über eine “users.php” Datei in ein Array eingepflegt werden. (je nach Konfiguration kann man sich auch ohne Passwort einloggen)

Dazu habe ich mir was kleines einfallen lassen um die Benutzer über eine Datenbanktabelle zu pflegen und ein kleines funktionales Adminpanel gebastelt :-)

Kurze Featureliste:
* Adminaccount:
– Benutzer anlegen (auch Moderator)
– Benutzer löschen
– Passwort für Benutzer zurücksetzen
* Useraccount
– eigenes Passwort ändern

Die Idee dahinter ist ganz simpel:
Wir legen alle Benutzer in einer Datenbank ab und schreiben die Datei (users.php), die Benutzer verwaltet bei Änderungen neu.

Um diese Administration zu ermöglichen brauchen wir Schreibrechte auf CHAT_ROOT/lib/data/users.php und müssen eine Benutzertabelle in der Datenbank anlegen:

Im INSERT Statement kann ein beliebiger Adminbenutzer angelegt werden, hier als Standard als Benutzername und Passwort “admin”.

CREATE TABLE `ajax_chat_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` text,
  `password` text,
  `role` text,
  PRIMARY KEY (`id`)
) 
 
INSERT INTO `ajax_chat_user` VALUES ('1', 'admin', 'admin', 'AJAX_CHAT_ADMIN');

In der Datei “admin.php” muss dann noch die entsprechende Datenbankverbindung an mehreren Stellen eingetragen werden.

$db = new mysqli( 'localhost', 'db-user-name', 'db-pw', 'db-name' );

Am einfachsten über suchen / ersetzen:
“db-user-name” -> eigener Datenbankbenutzer
“db-pw” -> zugehöriges Datenbankpasswort
“db-name” -> Datenbankname

Falls der Adminbenutzer einen anderen Namen als “admin” bekommen hat, müsst ihr in der Datei auch noch an 2 Stellen den entsprechend gewählten Namen eintragen (Zeile 289 und 325), einmal für das schreiben der users.php, und einmal um das evtl versehentliche Löschen zu verhindern.

Die admin.php dannach einfach ins Rootverzeichnis des Chats legen, und über www.url-to-chat.net/admin.php einloggen.

Bekannte Fehler:
- Beim Schreiben der Datei werden Umlaute nicht richtig dargestellt, daher können zur Zeit keine Benutzer/Passwörter mit Umlauten verwendet werden.

Kommentiert ist so gut wie nix, dafür sollte der Code recht sprechend und leicht zu verstehen sein.
Zum Download gehts hier: ajaxchat_adminpanel_fix

Über Feedback jeglicher Art würde ich mich natürlich freuen :-)

Grüße,
Christian

Nachtrag:
ACHTUNG!
Falls ihr die kleine Erweiterung benutzen wollt: Es wird die Datei in der die Benutzer zuvor verwaltet wurden gnadenlöse überschrieben!
Bedeutet: Wenn zuvor Benutzer in der Datei gepflegt wurden, sollte man sich ein Backup machen und diese dann über die Oberfläche in die Datenbank eintragen.

  1. Bisher keine Kommentare.
(wird nicht veröffentlicht)
  1. Bisher keine Trackbacks.