summaryrefslogtreecommitdiff
path: root/0.4.8a2
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2013-04-06 13:14:47 +0200
committerPaul Buetow <paul@buetow.org>2013-04-06 13:14:47 +0200
commit630af0ed6c0af69c7df2e45aef7a87722a3c00c0 (patch)
treead76f850278b090f7e5c26561035d19c320400cc /0.4.8a2
parent2860b03f00e48264ed15c132ad90b240ebe6070b (diff)
tagging ychat-perl-legacyychat-perl-legacy
Diffstat (limited to '0.4.8a2')
-rw-r--r--0.4.8a2/CREDITS.txt30
-rw-r--r--0.4.8a2/README.txt24
-rw-r--r--0.4.8a2/SETUP.txt137
-rw-r--r--0.4.8a2/TODO.txt33
-rw-r--r--0.4.8a2/UPDATES.txt215
-rw-r--r--0.4.8a2/colors.sno290
-rw-r--r--0.4.8a2/config.pm269
-rw-r--r--0.4.8a2/help.sno58
-rw-r--r--0.4.8a2/htdocs.pl241
-rw-r--r--0.4.8a2/index.pl426
-rw-r--r--0.4.8a2/input.pl197
-rw-r--r--0.4.8a2/main.pl945
-rw-r--r--0.4.8a2/main2.pl638
-rw-r--r--0.4.8a2/online.pl71
-rw-r--r--0.4.8a2/push.pl117
-rw-r--r--0.4.8a2/ranking.php480
-rw-r--r--0.4.8a2/setup.sh50
-rw-r--r--0.4.8a2/y.gifbin0 -> 5408 bytes
-rw-r--r--0.4.8a2/yIntro.swfbin0 -> 11367 bytes
-rw-r--r--0.4.8a2/ySymbol.swfbin0 -> 9548 bytes
-rw-r--r--0.4.8a2/y_.gifbin0 -> 1518 bytes
21 files changed, 3821 insertions, 0 deletions
diff --git a/0.4.8a2/CREDITS.txt b/0.4.8a2/CREDITS.txt
new file mode 100644
index 0000000..6f2a6cc
--- /dev/null
+++ b/0.4.8a2/CREDITS.txt
@@ -0,0 +1,30 @@
+########################### yChat.de CREDITS ################################
+## Copyright by Paul C. Bütow 2000 - 2001 (mail@paulbuetow.de) ##
+#############################################################################
+
+Vielen Dank an alle Personen, dir mit geholfen haben ( und immernoch helfen )
+yChat besser zu machen:
+
+ - Andreas Buchwald aka Anklepper, für ...
+ ... die Programmierung des "Nach-UntenScroll-JavaScripts", des
+ "Nachrichten-Verlauf-JavaScripts" im Texteingabeframe.
+ ... die technische Umsetzung, daß sich das Inputframe bei jedem
+ Textposting nicht wieder reloadet.
+ ... ein nettes JavaScript, welches erlaubt, Formularwerte
+ frameübergreifend zu ändern.
+ ... die Erstellung der Flashanimationen.
+ ... die Programmierung der Auto-Away- und der Auto-Logout Funktion.
+ ( www.anklepper.de ).
+
+ - Dave aka Truhe, für ...
+ ... die Erstellung der Farbtabelle unter Chatoptionen inkl.
+ Auswähl-JavaScript!
+ ... die Erstellung einiger CSS.
+ ... die Unterstützung der Umsetzung der Auto-Away- und Auto-Logout
+ Funktion.
+ ( maligree.yi.org )
+
+ - Florian Bütow aka Coke, für die Programmierung des Top 20 Ranking Skripts
+ in PHP4 !
+
+ - Larry Wall, für die Erfindung von Perl ! \ No newline at end of file
diff --git a/0.4.8a2/README.txt b/0.4.8a2/README.txt
new file mode 100644
index 0000000..b67f15e
--- /dev/null
+++ b/0.4.8a2/README.txt
@@ -0,0 +1,24 @@
+############################## yChat.de README ##############################
+## Copyright by Paul C. Bütow 2000 - 2001 (mail@paulbuetow.de) ##
+#############################################################################
+
+Allgemeine Bedingungen bezgl. yChat:
+
+ - Das yChat-System darf ohne Erleubnis des Autors nicht auf irgendeiner Art
+ und Weise weitergegeben- oder eingesetzt werden.
+
+ - Wird das yChat-System eingesetzt, so darf es manipuliert werden, soweit
+ die Copyright-Hinweise des Autors, die Versionsbezeichnung und der Link
+ auf der Startseite nach www.home.yChat.de unverändert bleibt.
+ Ansonsten darf der gesamte Code manipuliert werden.
+
+ - Wird das yChat-System erlaubter Weise manipuliert, so muß das veränderte
+ Skript auf Anforderung an den Autor weitergegeben werden. Dieser darf
+ die Veränderungen in das Standard-yChat-System integrieren.
+
+ - Wird das yChat-System eingesetzt, su muß dem Autor die Location bzw. die
+ URL bekanntgegeben werden. Diese mit einer URL wwX.yChat.de verlinkt.
+ Wobei X für die Nummer des jew. Servers steht.
+
+ - Es ist verboten, Sourcecode aus dem yChat-System zu kopieren und
+ für andere, nicht von yChat abhängige Perl-Programme einzusetzen. \ No newline at end of file
diff --git a/0.4.8a2/SETUP.txt b/0.4.8a2/SETUP.txt
new file mode 100644
index 0000000..19a6fbe
--- /dev/null
+++ b/0.4.8a2/SETUP.txt
@@ -0,0 +1,137 @@
+############################## yChat.de SETUP ###############################
+## Copyright by Paul C. Bütow 2000 - 2001 (mail@paulbuetow.de) ##
+#############################################################################
+
+yChat findest Du im Internet unter der Adresse www.yChat.de. Bei Kritik,
+Anregungen oder Fragen bitte in das dort vorhandene Board posten oder eine
+E-Mail an die oben stehende Adresse senden. Ich bemühe mich, yChat so gut wie
+möglich zu machen und bin über Ratschläge immer sehr erfreut :-) ...
+
+Die Installation kann auf Unix-Systemen voll automatisch duchgeführt werden.
+Allerdings ist dafür ein Telnet-Zugang notwendig. Kopiere alle vorhandenen
+Dateien in das Verzeichnis cgi-bin/yChat und führe dann das Shellskript
+setup.sh mit dem Befehl ./setup.sh aus. Alle Verzeichnisse werden
+automatisch erstellt. Dies wurde allerdings nur auf SuSE Linux Systemen
+mit root-Zugriff getestet. Solltest Du ein anderes System verwenden oder
+den Chat auf einen virtuellen Webserver installieren wollen, dann mußt Du
+unter Umständen das Verzeichnis "../../htdocs/yChat" nach "../../yChat"
+in der setup.sh umbenennen. Ansonsten werden die dazugehörigen Grafikdateien
+falsch oder garnicht kopiert.
+
+Wenn Du keinen Telnet-Zugang hast, kannst Du hier die Verzeichnisse manuell
+einrichten:
+
+Folgende Basis-Dateien sind im Chat enthalten und müssen in das cgi-bin
+Verzeichnis kopiert werden. Z.B. nach ./cgi-bin/yChat/:
+
+config.pm => Configurationsdatei ("Shared subs")
+htdocs.pl => Generiert dynamische HTML-Inhalte
+index.pl => Startskript (Registrierung, Login, Chatframeset)
+input.pl => Skript für das Chateingabeframe
+main.pl => Hauptskript (Alle Hauptfunktionen des Chats)
+main2.pl => Skript für editieren der Benutzerdaten etc
+online.pl => Anzeige und Überprüfung der eingelogten Benutzer
+push.pl => Server-Push-Routine
+ranking.php4 => Dieses Skript erstellt die Top 20 Ranking-List
+setup.sh => Dient zur automatischen Einrichtung des Chats
+README.txt => Beinhaltet wichtige Informationen
+UPDATES.txt => Updateliste der verschiedenen Versionen
+CREDITS.txt => Personen, die geolfen haben yChat zu proggen
+SETUP.txt => Dieses Dokument
+colors.sno => Datei beinhaltet alle Farben in hex. für die Chatoptionen
+help.sno => Datei beinhaltet alle Chatbefehle
+
+Folgende Verzeichnisse müssen erstellt werden (chmod 777 sollte
+funktionieren):
+
+- Hier befinden sich alle für den Chat notwenidgen Daten:
+ ./cgi-bin/yChat/data/*
+
+- Hier befinden sich alle Logdateien, die vom Chat erstellt werden:
+ ./cgi-bin/yChat/data/logs/*
+
+- Hier befinden sich die Message-Dateien der eingelogten Benutzer:
+ ./cgi-bin/yChat/data/msgs/*
+
+- Hier befinden sich alle Daten der registrierten Benutzer:
+ ./cgi-bin/yChat/data/user/*
+
+- Hier wird abgespeichert, wie oft ein Benutzerprofil insgesant schon
+ aufgerufen wurde und wie lange die Chatter schon online waren:
+ ./cgi-bin/yChat/data/user/counts/*
+
+- Hier werden alle Memos abgespeichert.
+ ./cgi-bin/yChat/data/user/memos/*
+
+- Hier befinden sich alle Chat-Optionen und Passwörter der registrierten
+ Benutzer:
+ ./cgi-bin/yChat/data/user/options/*
+
+- Hier befinden sich alle Benutzerprofile der Benutzer:
+ ./cgi-bin/yChat/data/user/profiles/*
+
+- Hier befinden sich alle Gästebucheinträge der Benutzer:
+ ./cgi-bin/yChat/data/user/gbooks/*
+
+- Hier wird abgespeichert, wann der der jew. benutzer zum letzten mal das
+ System betreten hat.
+ ./cgi-bin/yChat/data/user/lastlogin/*
+
+- Hier befinden sich alle Daten zu den aktuellen Chaträumen und User die
+ online sind
+ ./cgi-bin/yChat/data/online/*
+
+- Hier befinden sich alle offnenen Räume
+ ./cgi-bin/yChat/data/online/rooms/*
+
+- Hier befinden sich die Chatter, die sich in den jew. Räumen befinden. Die
+ Verzeichnisse der Räume werden automatisch erstellt.
+ ./cgi-bin/yChat/data/online/rooms/RAUMNAME/*
+
+- Hier befinden sich alle PIDs (Process IDs) der Chatter in den jew. Räumen.
+ ./cgi-bin/yChat/data/online/pids/RAUMNAME/*
+
+- Hier befinden sich alle Chatter, die sich z.Z. im System befinden
+ ./cgi-bin/yChat/data/online/users/*
+
+- Hier befinden sich alle IP-Nummern und TempIDs der eingelogten Chatter
+ ./cgi-bin/yChat/data/online/ident/*
+
+Alle Grafik- und Multimediadateien (*.gif, *.jpg, *.swf) sollten in ein
+nicht-CGI-BIN-Verzeichnis kopiert werden. Z.B. nach ./yChat/.
+
+Zum schluß sollte die config.pm-Datei nach wünschen editiert werden.
+Allerdings sollten die Copyright Hinweise und die Versionsnummern nicht
+manipuliert werden.
+
+Im Folgendem werde ich ein wenig auf die im yChat-Sourcecode oft verwendeten .
+Variablen eingehen:
+
+ $var => Sagt dem Skript, wie es gestartet werden soll.
+ $alias => Teilt dem Skript den Benutzername mit.
+ $tmpid => Beim einloggen in den Chat wird für den Benutzer eine
+ temporäre ID generiert. Diese wird so wohl in der Variable
+ $tmpid als auch in eine Datei geschrieben. Handelt der
+ Benutzer, so wird vom Skript die Variable $tmpid mit dem
+ Eintrag in der Datei verglichen. Sind beide Werte
+ identisch, dann wird die Handlung des Benutzers
+ ausgeführt. Stimmen die Werte nicht überein, dann wird
+ die Fehlermeldung, daß der Benutzer die falsche $tmpid hat
+ um mit $alias zu handeln,ausgegeben und das Skript beendet
+ sich. Dies ist eine Sicherheitsmaßnahme welche verbietet,
+ mit fremden Benutzernamen im System zu handeln.
+ $room => Sagt dem Skript, wie der aktuelle Raumname lautet.
+ $col => Sagt dem Skript, wie die aktuelle Chatfarbe des Nicks von
+ $alias lautet.
+ $seccol => Sagt dem Skript, wie die aktuelle Chatfarbe der Schrift von
+ $alias lautet.
+ $msg => Beinhaltet den von $alias zu postenden Text im Chat.
+ Hiervon wird auch in den Benutzergästebüchern und im
+ Benutzerboard Gebrauch gemacht.
+ $whisper => Beinhaltet den Benutzernamen, zu dem $alias zuletzt
+ geflüstert hat.
+ $id und $tmp => Temporäre Variablen zwecks Übermittlung diverser Daten.
+ $pw => Wird im Skript index.pl verwendet um das Zugangspassword
+ zu übermitteln.
+
+Viel Spaß beim Chatten ... \ No newline at end of file
diff --git a/0.4.8a2/TODO.txt b/0.4.8a2/TODO.txt
new file mode 100644
index 0000000..5dca7c1
--- /dev/null
+++ b/0.4.8a2/TODO.txt
@@ -0,0 +1,33 @@
+############################## yChat.de TODO ################################
+## Copyright by Paul C. Bütow 2000 - 2001 (mail@paulbuetow.de) ##
+#############################################################################
+
+Folgende Funktionen werden demnächst evtl. in yChat integriert:
+
+ - In den Chatoptionen sollen diverse Einstellungen des Nachrichtenverlaufes
+ vorgenommen werden können.
+
+ - Die Schlucht (Ein Raum wo Chatter hineingeworfen werden,
+ die sich nicht benehmen und noch nicht aus dem Chat
+ katapultiert werden sollen).
+
+ - Löschung aller Chatter, die sich seit 60 Tagen nicht mehr eingelogt haben.
+
+ - IP-Adressen ver-/entbannen.
+
+ - E-Mail zusendung bei verlorenem Passwort.
+
+ - Unter "Benutzer" sollen Chatter über eine Eingabemaske nach dem
+ Anfangsbuchstaben gesucht werden können (vergl. Kilahu).
+
+ - Linux- und Windows-yChat-Client soll programmiert werden. Mit diesem läßt
+ sich dann im yChat chatten, ohne sich über http://www.yChat.de eingelogt zu
+ haben. Der Client soll gleicheitig auch als Messenger (ICQ-Like) fungieren
+ können (yChat-Messenger bzw. yCM).
+
+ - Der Cybarkeeper (künstlich intilligenter Chatroboter, der
+ sich im Hauptraum Cyberbar aufhält, virtuelle Drinks verteilt
+ und von Real-Chattern übernommen werden kann. (Zukunftsmusik)
+
+Für weitere Vorschläge bitte in das yChat-Board unter www.yChat.de
+texten oder eine E-Mail an mail@paulbuetow.de :-) \ No newline at end of file
diff --git a/0.4.8a2/UPDATES.txt b/0.4.8a2/UPDATES.txt
new file mode 100644
index 0000000..0de557c
--- /dev/null
+++ b/0.4.8a2/UPDATES.txt
@@ -0,0 +1,215 @@
+########################### yChat.de UPDATE LIST ###########################
+## Copyright by Paul C. Bütow 2000 - 2001 (mail@paulbuetow.de) ##
+#############################################################################
+Hier sind alle Erneuerungen der Versionen dokumentiert:
+
+Update von 0.4.8 auf 0.4.8a (29.01.01)
+ - Neue Befehle: /me/ und /m/ (Müssen inmitten des Textes eingegeben
+ werden.)
+ - Beim posten einer Nachricht wird die zu beschreibende
+ Nachrichtendatei mit flock(MSGFIL, 2); geschützt. Dies verhindert,
+ daß 2 Skripte gleichzeitig versuchen, die Nachrichtendatei zu
+ beschreiben.
+
+Update von 0.4.7 auf 0.4.8 (26.01.01)
+ - Top 20 Ranking Liste in PHP4.
+ - Überarbeitung des Flash-Intros.
+ - PIDs für die Signalhandler werden zuverlässiger abgespeichert und
+ ggf. wieder gelöscht.
+ - Das push.pl-Skript (endlosschleife) benötigt nun nurnoch halb so
+ viel Speicher beim Ausführen. Die Datei config.pm wird nicht mehr
+ mit "require config;" eingebunden.
+ - Benutzernamen dürfen maximal nurnoch 15 Zeichen lang sein.
+ - Chatnachrichten dürfen maximal nurnoch 300 Zeichen lang sein.
+ - Wenn ein Benutzer eine Nachricht textet, überprüft das System, ob
+ derjenige sich auch wirklich im jew. Raum befindet.
+ - In den Chatoptionen kann man zusätzliche Einstellungen vornehmen:
+ 1.) Anzahl der Nachrichten im Nachrichten-Verlauf
+ 2.) Anordnung der Nachrichten im Nachrichten-Verlauf.
+ Neueinstellungen dieser Optionen werden erst nach einem
+ Neueinloggen aktiv.
+ - Die Error-Logdatei "data/error" wurde erweitert.
+
+Update von 0.4.6 auf 0.4.7 (20.01.01)
+ - Auto-Away: Ist ein Chatter 5 Minuten inaktiv, dann erscheint im
+ aktuellen Raum die Nachricht "Alias wurde vom System
+ abgemeldet ..." . Bei Wiederaufnahme des Chats, meldet sich Alias
+ wieder zurück.
+ - Auto-Logout: Ist ein Chatter 20 Minuten inaktiv, dann wird dieser
+ aus dem System automatisch ausgelogt.
+ - Neue CSS für die Formulareingabefelder und dem Chat-Menü.
+ (Funktioniert allerdings nicht mit NN4.x, hier werden alle
+ Formulareingabefelder ohne CSS-Definitionen angezeigt.)
+
+Update von 0.4.5 auf 0.4.6 (18.01.01)
+ - Verbesserung: Beim Posten einer neuen Chatnachricht wird sogleich
+ ein Signal an alle laufenden Chatprozesse (PIDs) gesendet, so daß
+ diese aufgefordert werden, aus der Nachrichtendatei die neuen
+ Zeilen einzulesen. Das Push-Skript (push.pl) muß so nicht jede
+ Sekunde prüfen, ob neue Nachrichten da sind, da es diese
+ Information über das Signal erhält. Das Push-Skript verbraucht nun
+ weniger Prozessorleistung, da es jetzt 15 Sekunden lang
+ "dauerschläft" (sleep 15;), lediglich einen <!--PING--> versendet
+ und dann weiter schläft usw. Beendet sich push.pl, oder wird ein
+ Raum gewechselt, dann wird auch die PID aus der PID-Liste des
+ aktuellen Raums gelöscht und ggf. neu geschrieben.
+ Die Dateien "./data/online/pids/*" beinhalten alle aktuellen PIDs,
+ wobei * der jew. Raum ist.
+
+Update von 0.4.4 auf 0.4.5 (16.01.01)
+ - Jeder Chatraum hat nun eine globale Nachrichtendatei. Bisher
+ existierte für jeden Chatter enzelnd eine. Die Nachrichten werden
+ nun schneller gepostet.
+ - Neue Wächterbefehle:
+ "/st Raum Thema" ermöglicht das Ändern das Themas eines anderen
+ Raums.
+ "/sl Raum" ermöglicht das auf- und absperren eines anderen Raums.
+ - Nur noch Oberwächter können die Chatlogs lesen.
+ - Referenzierung der Variable $msg in main.pl.
+ - Flashanimationen.
+
+Update von 0.4.3 auf 0.4.4 (04.01.01)
+ - Optimiertung aller Chatbefehle.
+ - Neuer WÄ-Befehl: Mit "/ss Raum Nachricht" wird aus dem aktuellen
+ Raum heraus in den angegebenen Raum eine beliebige Nachricht
+ gerufen.
+ - Das Skript main.pl wurde in zwei verschiedene Skripts unterteilt:
+ main.pl => Beinhaltet hauptsächlich die Chatbefehle
+ input.pl => Beinhaltet das zu generierende Chateingabeframe.
+ - Das Chateingabeframe wird nun nie wieder reloadet. (Dies geschah
+ bisher noch nach Ausführung der Befehle /col /j /ju /msg und nach
+ Änderung der Chateinstellungen und erwies sich als recht nervige
+ Angelegenheit.) JavaScript macht es möglich.
+ - Überarbeitung und Erweiterung der Dokudateien.
+
+Update von 0.4.2 auf 0.4.3 (30.12.2k)
+ - Optimierung der Zuweisung der Variabeln im Programmcode:
+ Variablen werden nun wirklich nur deffiniert, wenn diese auch
+ erforderlich sind.
+ - Komplette Neuprogrammierung diverser Subs (nun leistungsfähiger)
+ - Bei Aufrug der Login-Seite wird der gesamte Chat auf leerstehende
+ Räume und "alte" Chatter überprüft und ggf. entfernt.
+ - Verbesserung diverser JavaScript-Codes.
+ - Editiert ein Benutzer sein Profil, so wird dies mit der Meldung
+ "Alias hat sein Profil geändert ..." bekanntgegeben.
+ - Mit "/t" ohne weiteren Text erscheint die Nachricht "Alias hat das
+ Thema des Raums gelöscht ..."
+ - Hinzufügung diverser Administratorbefehle: "/pw Alias" zeigt
+ Zugangspassword von Alias an. "/ow Alias" ernennt Alias zum OW.
+ "/row Alias" entzieht Alias die OW-Rechte.
+
+Update von 0.4.1 auf 0.4.2 (25.12.2k)
+ - Im Texteingabeformular werden nun per JavaScript die letzten 10
+ Postings zwischengespeichert und können per Drop-Down-Menü
+ wieder in das Submittextfeld geladen werden um erneuert getextet
+ zu werden.
+ - Neues Design.
+ - Diverse Dateien wurden umbenannt:
+ INSTALL.txt -> SETUP.txt
+ LIESMICH.txt -> README.txt
+ - Die Datei CREDITS.txt wurde angelegt und somit auch die URL
+ www.credits.yChat.de.
+
+Update von 0.4.0 auf 0.4.1 (22.12.2k)
+ - Design wurde geändert.
+ - Unter "Optionen" ist nun eine komplette Farbtabelle eingebaut.
+ - Folgende Oberwächterbefehle wurden nun auch für normale Wächter
+ freigegeben: /ip /ban /rban.
+
+Update von 0.2.6 auf 0.4.0 (19.12.2k)
+ - Der berüchtigte "IP-Bug" wurde beseitigt! Und zwar wurden TempIDs
+ eingeführt => Eine dauerhafte Überprüfung der Benutzer-IP-Nummer
+ ist also nicht mehr notwendig.
+ - Die totale Chat-Online-Zeit wird protokolliert und kann jew. mit
+ "/online Alias" aufgerufen werden. Die Onlinezeit wird alle 20 Sek.
+ aktualisiert.
+ - Neue Befehle: "/seen Alias" zeigt an, vor wieviel St. sich Alias
+ zuletzt in das System eingelogt hat. Der Befehle "/rmgb" entfernt
+ alle Einträge des eigenen Benutzergästebuchs im Profil.
+
+Update von 0.2.5 auf 0.2.6 (17.12.2k)
+ - Das Eingabeframe reloaded sich nicht mehr nach jedem Posting.
+ Vielen Dank an Truhe aka Dave und Klepper aka Andreas Buchwald!
+ Bei den Chatbefehlen /col /away /j und /ju muß sich das
+ Eingabeframe weiterhin reloaden.
+ - Der Befehl // wurde entfernt. Dieser war nicht mehr erforderlich.
+ weil Nachrichten werden nur noch sehr selten verschluckt. Dieser
+ Chatbefehl postete die letzte Nachricht nocheinmal.
+ - Neuer Befehl: mit "/memo Alias hier der Text" hinterläßt man
+ Alias eine Memo. Logt sich Alias in den Chat ein, dann erhält
+ er diese sofort. Dafür wurde das Verzeichnis ".data/user/memos/"
+ angelegt.
+ - Programmcode wurde ein wenig optimiert.
+ - Das Design wurde ein wenig geändert.
+ - Beseitigung diverser Bugs.
+
+Update von 0.2.4 auf 0.2.5 (15.12.2k)
+ - Derjenige, der einen Raum zuerst betritt, hat Raumbesetzerrechte.
+ - Raumbesetzer, Wächter und Oberwächte können weitere Raumbesetzer
+ bestimmen. Diese können Raumbeseter auch wieder degradieren.
+ - Raumbesetzer, Wächter und Oberwächter können dem aktuellen Raum
+ auf/absperren und Themen geben. Wächter und Oberwächter können
+ abgesperrte Räume betreten.
+ - Das Verzeichnis ".data/htdocs" wurde entfernt. Die Datei help_html
+ heist nun help.sno und befindet sich im yChat-Hauptverzeichnis.
+ - Das Verzeichnis ".data/user/lastlogin" wurde hinzugefügt. Hier
+ wird beim erfolgreichen Einloggen ein "Timestamp" gesetzt. Später
+ sollen Oberwächter "veraltete" Benutzer entfernen können.
+ - Neuer Oberwächterbefehl: "/kill Alias" entfernt Alias ganz und gar
+ vom System. Oberwächter und Wächter können nicht entfernt werden.
+ - Perl-Cache wurde im gesamten System komplett deaktiviert ( Weniger
+ Ladezeiten der HTML-Dokumente ).
+ - Nur Nachrichten aus dem Raum "Cyberbar" werden gelogt.
+ Selbsterstellte Räume werden nichtmehr gelogt. Viele Logfunktionen
+ wurden entfernt (weniger Serverbalast).
+ - Beseitigung einiger kleinen Bugs.
+ - Unter "Optionen" im Chat wir die Farbe nun mit einem Drop-Down-Menü
+ ausgewählt ( Vielen dank an Michi aka Snoopy ).
+ - Auf der Startseite wird nun angezeigt wieviele Benutzer eingelogt
+ sind. Ist keiner eingelogt, dann wird das System "aufgeräumt". D.h.
+ Dateien die nicht mehr gebraucht werden und noch nicht gelöscht
+ wurden werden entfernt ( z.B. Nachrichtendateien der einzelnen
+ Chatter und die Dateien die die IP-Nummern der eingelogten Benutzer
+ beinhalteten usw.).
+ - Hunzufügung einer TODO-Liste. Hier sind mehrere Funktionen
+ vermerkt, die in späteren yChat-Versionen eingebaut werden sollen.
+ (www.todo.yChat.de oder TODO.txt).
+
+Update von 0.2.3 auf 0.2.4 (30.11.2k)
+ - Optimierung bzw. Verbesserung der Push-Routine push.pl.
+ - Server-Ping wurde von 2-Pings-per-Minute auf 4 erhöht.
+ - yChat-Banner wurde erstellt und ist unter
+ documents.yChat.de/yBanner.jpg vorzufinden.
+ - Unter der URL servers.yChat.de wurde eine Serverliste angelegt,
+ welche anzeigt wo yChat-Systeme laufen.
+ - Des weiteren wurden die URLs updates.yChat.de, install.yChat.de
+ und liesmich.yChat.de eingerichtet.
+ - Die Menüpunkte wurden zusammengefaßt, damit sie unter einer
+ Auflösung von 800x600 nur eine Zeile belegen.
+ - Einige Bugs wurden entfernt.
+
+Update von 0.2.2 auf 0.2.3 (25.11.2k)
+ - Smooth scrolling JavaScript ( Vielen Dank an Andreas Buchwald ).
+ - "IP#-Fehler" wurde so gut wie beseitigt.
+ - Aufrufe der einzelnen Benutzerprofile wird gezählt und angezeigt.
+ Diese werden in data/user/counts/* gespeichert.
+ - Automatische Einrichtung des Chats mit setup.sh und Telnet.
+ - Menüpunkt "Dein Profil" wurde entfernt da eigenes Profil auch
+ stets über die Onlineliste aufgerufen werden kann.
+
+Update von 0.2.1 auf 0.2.2 (23.11.2k)
+ - Einige Bugs wurden entfernt.
+ - Geschwindigkeit des Chats wurde optimiert.
+ - Eine Liste aller eingelogten Benutzer erscheint am Rand. Hierfür
+ wurde die Datei online.pl eingeführt. Sie aktuallisiert sich alle
+ 20 Sekunden.
+ - Die UPDATES.txt wurde eingeführt.
+
+Update von 0.2.0 auf 0.2.1
+ - Einige Bugs wurden entfernt.
+ - Die IP# der eingelogten Benutzer werden nun anders verwaltet.
+
+Update von Alpha XVIII auf 0.2.0
+ - Die Handhabung der eingelogten Benutzer im System wurde komplett neu
+ überarbeitet.
+ - Neue Versionsnumern wurden eingeführt. \ No newline at end of file
diff --git a/0.4.8a2/colors.sno b/0.4.8a2/colors.sno
new file mode 100644
index 0000000..3640b9e
--- /dev/null
+++ b/0.4.8a2/colors.sno
@@ -0,0 +1,290 @@
+ <table cellspacing=0 cellpadding=5 border=0>
+ <tr>
+ <td bgcolor="000000"><span style="color:#FFFFFF; text-decoration:line-through;">000000</span></td>
+ <td bgcolor="000033"><span style="color:#FFFFFF; text-decoration:line-through;">000033</span></td>
+ <td bgcolor="000066"><span style="color:#FFFFFF; text-decoration:line-through;">000066</span></td>
+ <td bgcolor="000099"><span style="color:#FFFFFF; text-decoration:line-through;">000099</span></td>
+ <td bgcolor="0000CC"><span style="color:#FFFFFF; text-decoration:line-through;">0000CC</span></td>
+ <td bgcolor="0000FF"><a href="javascript:insertcode('0000FF');" style="color:#FFFFFF;">0000FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="003300"><span style="color:#FFFFFF; text-decoration:line-through;">003300</span></td>
+ <td bgcolor="003333"><span style="color:#FFFFFF; text-decoration:line-through;">003333</span></td>
+ <td bgcolor="003366"><span style="color:#FFFFFF; text-decoration:line-through;">003366</span></td>
+ <td bgcolor="003399"><a href="javascript:insertcode('003399');" style="color:#FFFFFF;">003399</a></td>
+ <td bgcolor="0033CC"><a href="javascript:insertcode('0033CC');" style="color:#FFFFFF;">0033CC</a></td>
+ <td bgcolor="0033FF"><a href="javascript:insertcode('0033FF');" style="color:#FFFFFF;">0033FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="006600"><span style="color:#FFFFFF; text-decoration:line-through;">006600</span></td>
+ <td bgcolor="006633"><span style="color:#FFFFFF; text-decoration:line-through;">006633</span></td>
+ <td bgcolor="006666"><a href="javascript:insertcode('006666');" style="color:#FFFFFF;">006666</a></td>
+ <td bgcolor="006699"><a href="javascript:insertcode('006699');" style="color:#FFFFFF;">006699</a></td>
+ <td bgcolor="0066CC"><a href="javascript:insertcode('0066CC');" style="color:#FFFFFF;">0066CC</a></td>
+ <td bgcolor="0066FF"><a href="javascript:insertcode('0066FF');" style="color:#FFFFFF;">0066FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="009900"><a href="javascript:insertcode('009900');" style="color:#FFFFFF;">009900</a></td>
+ <td bgcolor="009933"><a href="javascript:insertcode('009933');" style="color:#FFFFFF;">009933</a></td>
+ <td bgcolor="009966"><a href="javascript:insertcode('009966');" style="color:#FFFFFF;">009966</a></td>
+ <td bgcolor="009999"><a href="javascript:insertcode('009999');" style="color:#FFFFFF;">009999</a></td>
+ <td bgcolor="0099CC"><a href="javascript:insertcode('0099CC');" style="color:#FFFFFF;">0099CC</a></td>
+ <td bgcolor="0099FF"><a href="javascript:insertcode('0099FF');" style="color:#FFFFFF;">0099FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="00CC00"><a href="javascript:insertcode('00CC00');" style="color:#000000;">00CC00</a></td>
+ <td bgcolor="00CC33"><a href="javascript:insertcode('00CC33');" style="color:#000000;">00CC33</a></td>
+ <td bgcolor="00CC66"><a href="javascript:insertcode('00CC66');" style="color:#000000;">00CC66</a></td>
+ <td bgcolor="00CC99"><a href="javascript:insertcode('00CC99');" style="color:#000000;">00CC99</a></td>
+ <td bgcolor="00CCCC"><a href="javascript:insertcode('00CCCC');" style="color:#000000;">00CCCC</a></td>
+ <td bgcolor="00CCFF"><a href="javascript:insertcode('00CCFF');" style="color:#000000;">00CCFF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="00FF00"><a href="javascript:insertcode('00FF00');" style="color:#000000;">00FF00</a></td>
+ <td bgcolor="00FF33"><a href="javascript:insertcode('00FF33');" style="color:#000000;">00FF33</a></td>
+ <td bgcolor="00FF66"><a href="javascript:insertcode('00FF66');" style="color:#000000;">00FF66</a></td>
+ <td bgcolor="00FF99"><a href="javascript:insertcode('00FF99');" style="color:#000000;">00FF99</a></td>
+ <td bgcolor="00FFCC"><a href="javascript:insertcode('00FFCC');" style="color:#000000;">00FFCC</a></td>
+ <td bgcolor="00FFFF"><a href="javascript:insertcode('00FFFF');" style="color:#000000;">00FFFF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="330000"><span style="color:#FFFFFF; text-decoration:line-through;">330000</span></td>
+ <td bgcolor="330033"><span style="color:#FFFFFF; text-decoration:line-through;">330033</span></td>
+ <td bgcolor="330066"><span style="color:#FFFFFF; text-decoration:line-through;">330066</span></td>
+ <td bgcolor="330099"><a href="javascript:insertcode('330099');" style="color:#FFFFFF;">330099</a></td>
+ <td bgcolor="3300CC"><a href="javascript:insertcode('3300CC');" style="color:#FFFFFF;">3300CC</a></td>
+ <td bgcolor="3300FF"><a href="javascript:insertcode('3300FF');" style="color:#FFFFFF;">3300FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="333300"><span style="color:#FFFFFF; text-decoration:line-through;">333300</span></td>
+ <td bgcolor="333333"><span style="color:#FFFFFF; text-decoration:line-through;">333333</span></td>
+ <td bgcolor="333366"><a href="javascript:insertcode('333366');" style="color:#FFFFFF;">333366</a></td>
+ <td bgcolor="333399"><a href="javascript:insertcode('333399');" style="color:#FFFFFF;">333399</a></td>
+ <td bgcolor="3333CC"><a href="javascript:insertcode('3333CC');" style="color:#FFFFFF;">3333CC</a></td>
+ <td bgcolor="3333FF"><a href="javascript:insertcode('3333FF');" style="color:#FFFFFF;">3333FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="336600"><a href="javascript:insertcode('336600');" style="color:#FFFFFF;">336600</a></td>
+ <td bgcolor="336633"><a href="javascript:insertcode('336633');" style="color:#FFFFFF;">336633</a></td>
+ <td bgcolor="336666"><a href="javascript:insertcode('336666');" style="color:#FFFFFF;">336666</a></td>
+ <td bgcolor="336699"><a href="javascript:insertcode('336699');" style="color:#FFFFFF;">336699</a></td>
+ <td bgcolor="3366CC"><a href="javascript:insertcode('3366CC');" style="color:#FFFFFF;">3366CC</a></td>
+ <td bgcolor="3366FF"><a href="javascript:insertcode('3366FF');" style="color:#FFFFFF;">3366FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="339900"><a href="javascript:insertcode('339900');" style="color:#FFFFFF;">339900</a></td>
+ <td bgcolor="339933"><a href="javascript:insertcode('339933');" style="color:#FFFFFF;">339933</a></td>
+ <td bgcolor="339966"><a href="javascript:insertcode('339966');" style="color:#FFFFFF;">339966</a></td>
+ <td bgcolor="339999"><a href="javascript:insertcode('339999');" style="color:#FFFFFF;">339999</a></td>
+ <td bgcolor="3399CC"><a href="javascript:insertcode('3399CC');" style="color:#FFFFFF;">3399CC</a></td>
+ <td bgcolor="3399FF"><a href="javascript:insertcode('3399FF');" style="color:#FFFFFF;">3399FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="33CC00"><a href="javascript:insertcode('33CC00');" style="color:#000000;">33CC00</a></td>
+ <td bgcolor="33CC33"><a href="javascript:insertcode('33CC33');" style="color:#000000;">33CC33</a></td>
+ <td bgcolor="33CC66"><a href="javascript:insertcode('33CC66');" style="color:#000000;">33CC66</a></td>
+ <td bgcolor="33CC99"><a href="javascript:insertcode('33CC99');" style="color:#000000;">33CC99</a></td>
+ <td bgcolor="33CCCC"><a href="javascript:insertcode('33CCCC');" style="color:#000000;">33CCCC</a></td>
+ <td bgcolor="33CCFF"><a href="javascript:insertcode('33CCFF');" style="color:#000000;">33CCFF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="33FF00"><a href="javascript:insertcode('33FF00');" style="color:#000000;">33FF00</a></td>
+ <td bgcolor="33FF33"><a href="javascript:insertcode('33FF33');" style="color:#000000;">33FF33</a></td>
+ <td bgcolor="33FF66"><a href="javascript:insertcode('33FF66');" style="color:#000000;">33FF66</a></td>
+ <td bgcolor="33FF99"><a href="javascript:insertcode('33FF99');" style="color:#000000;">33FF99</a></td>
+ <td bgcolor="33FFCC"><a href="javascript:insertcode('33FFCC');" style="color:#000000;">33FFCC</a></td>
+ <td bgcolor="33FFFF"><a href="javascript:insertcode('33FFFF');" style="color:#000000;">33FFFF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="660000"><span style="color:#FFFFFF; text-decoration:line-through;">660000</span></td>
+ <td bgcolor="660033"><span style="color:#FFFFFF; text-decoration:line-through;">660033</span></td>
+ <td bgcolor="660066"><a href="javascript:insertcode('660066');" style="color:#FFFFFF;">660066</a></td>
+ <td bgcolor="660099"><a href="javascript:insertcode('660099');" style="color:#FFFFFF;">660099</a></td>
+ <td bgcolor="6600CC"><a href="javascript:insertcode('6600CC');" style="color:#FFFFFF;">6600CC</a></td>
+ <td bgcolor="6600FF"><a href="javascript:insertcode('6600FF');" style="color:#FFFFFF;">6600FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="663300"><a href="javascript:insertcode('663300');" style="color:#FFFFFF;">663300</a></td>
+ <td bgcolor="663333"><a href="javascript:insertcode('663333');" style="color:#FFFFFF;">663333</a></td>
+ <td bgcolor="663366"><a href="javascript:insertcode('663366');" style="color:#FFFFFF;">663366</a></td>
+ <td bgcolor="663399"><a href="javascript:insertcode('663399');" style="color:#FFFFFF;">663399</a></td>
+ <td bgcolor="6633CC"><a href="javascript:insertcode('6633CC');" style="color:#FFFFFF;">6633CC</a></td>
+ <td bgcolor="6633FF"><a href="javascript:insertcode('6633FF');" style="color:#FFFFFF;">6633FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="666600"><a href="javascript:insertcode('666600');" style="color:#FFFFFF;">666600</a></td>
+ <td bgcolor="666633"><a href="javascript:insertcode('666633');" style="color:#FFFFFF;">666633</a></td>
+ <td bgcolor="666666"><a href="javascript:insertcode('666666');" style="color:#FFFFFF;">666666</a></td>
+ <td bgcolor="666699"><a href="javascript:insertcode('666699');" style="color:#FFFFFF;">666699</a></td>
+ <td bgcolor="6666CC"><a href="javascript:insertcode('6666CC');" style="color:#FFFFFF;">6666CC</a></td>
+ <td bgcolor="6666FF"><a href="javascript:insertcode('6666FF');" style="color:#FFFFFF;">6666FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="669900"><a href="javascript:insertcode('669900');" style="color:#000000;">669900</a></td>
+ <td bgcolor="669933"><a href="javascript:insertcode('669933');" style="color:#000000;">669933</a></td>
+ <td bgcolor="669966"><a href="javascript:insertcode('669966');" style="color:#000000;">669966</a></td>
+ <td bgcolor="669999"><a href="javascript:insertcode('669999');" style="color:#000000;">669999</a></td>
+ <td bgcolor="6699CC"><a href="javascript:insertcode('6699CC');" style="color:#000000;">6699CC</a></td>
+ <td bgcolor="6699FF"><a href="javascript:insertcode('6699FF');" style="color:#000000;">6699FF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="66CC00"><a href="javascript:insertcode('66CC00');" style="color:#000000;">66CC00</a></td>
+ <td bgcolor="66CC33"><a href="javascript:insertcode('66CC33');" style="color:#000000;">66CC33</a></td>
+ <td bgcolor="66CC66"><a href="javascript:insertcode('66CC66');" style="color:#000000;">66CC66</a></td>
+ <td bgcolor="66CC99"><a href="javascript:insertcode('66CC99');" style="color:#000000;">66CC99</a></td>
+ <td bgcolor="66CCCC"><a href="javascript:insertcode('66CCCC');" style="color:#000000;">66CCCC</a></td>
+ <td bgcolor="66CCFF"><a href="javascript:insertcode('66CCFF');" style="color:#000000;">66CCFF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="66FF00"><a href="javascript:insertcode('66FF00');" style="color:#000000;">66FF00</a></td>
+ <td bgcolor="66FF33"><a href="javascript:insertcode('66FF33');" style="color:#000000;">66FF33</a></td>
+ <td bgcolor="66FF66"><a href="javascript:insertcode('66FF66');" style="color:#000000;">66FF66</a></td>
+ <td bgcolor="66FF99"><a href="javascript:insertcode('66FF99');" style="color:#000000;">66FF99</a></td>
+ <td bgcolor="66FFCC"><a href="javascript:insertcode('66FFCC');" style="color:#000000;">66FFCC</a></td>
+ <td bgcolor="66FFFF"><a href="javascript:insertcode('66FFFF');" style="color:#000000;">66FFFF</a></td>
+ </tr>
+ <tr>
+ <td bgcolor="990000"><a href="javascript:insertcode('990000');" style="color:#FFFFFF;">990000</a></td>
+ <td bgcolor="990033"><a href="javascript:insertcode('990033');" style="color:#FFFFFF;">990033</a></td>