From 630af0ed6c0af69c7df2e45aef7a87722a3c00c0 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 6 Apr 2013 13:14:47 +0200 Subject: tagging ychat-perl-legacy --- 0.2.1/INDEX.PL | 339 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 339 insertions(+) create mode 100644 0.2.1/INDEX.PL (limited to '0.2.1/INDEX.PL') diff --git a/0.2.1/INDEX.PL b/0.2.1/INDEX.PL new file mode 100644 index 0000000..1533656 --- /dev/null +++ b/0.2.1/INDEX.PL @@ -0,0 +1,339 @@ +#!/usr/bin/perl -w + +use CGI; # CGI-Modul laden +$q = new CGI; + +require config; # config.pm in Dokument laden + +print + $q->header; # HTTP-Header erzeugen + +##################################### +##WELCHE SUB MUß AUFGERUFEN WERDEN?## +##################################### +if ($var eq "create_alias_html") { + &create_alias_html; +} elsif ($var eq "create_alias") { + &create_alias; +} elsif ($var eq "login_html") { + &login_html; +} elsif ($alias eq "") { + &login_html; +} else { + &checklogin; +} + +sub login_html { # Erste Startseite +local $counter = undef; +&read_file("data/count"); + $counter = ; +close DATEI; +$counter++; +&write_file_new("data/count"); + print DATEI $counter; +close DATEI; +&start_html("Created by Paul C. Bütow 2k"); +print < + + + + +
+ +
+ $title + +
+
+END + if ($tmp eq "true") { +print < + ACHTUNG! + +
+ Wahrscheinlich existiert Dein Alias "$alias" nicht, +
+ Du hast Dich verschrieben oder das Passwort ist falsch. +
+ Versuch es erneuert ! +
+END + } elsif ($tmp eq "quit") { +print < + Du hast soeben den Chat verlassen. +
+ Um den Chat erneuert zu betreten, einfach Daten eingeben und auf "Los Geht's" klicken :-) + +END + } elsif ($tmp eq "banned") { +print < + ACHTUNG! + +
+ Dein Alias "$alias" wurde verbannt. +
+ Z.z. kannst Du Dich leider nicht in den Chat einloggen. +
+ Sorry! +
+END + } elsif ($tmp eq "kick") { +print < + ACHTUNG! + +
+ Du wurdest soeben aus dem Chat katapultiert! +
+ Schlechtes Verhalten mag die Ursache hierfür sein. +
+ Sorry! +
+END + } elsif ($var eq "create_alias") { +print "
Du hast sich soeben in die Datenbank eingetragen. Einfach auf \"Los Geht's\" klicken :-)
"; + } else { +print < + Herzlich willkommen! +
+ Einfach Daten eingeben und auf "Los Geht's" klicken :-) + +END + &log("system","\"first_http_ok\""); + } +print < +
+ + + + + + +
+
+ Dein Alias: +
+ +
+
+
+ Dein Passwort: +
+ +
+
+
+
+
+ Solltest Du noch keinen Nick besitzen, dann auf "Registrieren" klicken! +
+
+ + + + + +
+ + + + + +
+ + + + +
+
+
+
+ yChat befindet sich momentan noch in der Entwicklungsphase ! +
+ Fragen gehen an Paul Bütow ( + + paul\@buetow.oxg.de + + ) :-) +
+
+ Diese Seite wurde schon $counter mal aufgerufen. +
+ + + +END +} + + +sub create_alias_html { # HTML-Form für Erstellung eines neuen Benutzers. +my $reload = $_[0]; +&start_html("Registration"); +print < + + + + +
+END + if ($reload eq "alias_exists") { +print < + ACHTUNG! + +
+ Der von Dir gewählte Benutzername "$alias" existiert in unserer Datenbank bereits. Bitte versuch es erneuert mit + einem anderen Benutzernamen ! +
+
+END +} elsif ($reload eq "pw_wrong") { +print < + ACHTUNG! + +
+ Deine beiden Passworteingaben stimmen nicht überein. Bitte geb das Passwort erneuert an um sicherzugehen, daß + kein falsches Passwort abgespeichert wird ! +
+
+END +} else { +print < + Hier kannst Du Dich registrieren. Bitte beachte, daß die Passworteingabefelder übereinstimmen! + +
+END +} +print < + +
+ Dein Alias: + + (Muß angegeben werden) + +
+ +
+
+
+ Dein gewünschtes Passwort: +
+ +
+
+
+ Geb hier Dein Passwort erneuert ein: +
+ +
+
+ + + +
+ +
+
+ Um den Chat zu betreten müssen die Daten nach der Registration auf der Startseite erneuert bestätigt werden ! +
+
+ + + +END +} + +sub checklogin { # Überprüfen, ob die Login-Daten korrekt sind. + my $lognotexists = "true"; + &list_dir("data/user/options"); + for (my $i=0; $i<=$#dir; $i++) { + if ($dir[$i] eq $alias) { + &read_file("data/user/options/$alias"); + @datei = ; + close DATEI; + chomp($datei[0]); + if ($datei[0] eq $id) { + &read_file("data/ban"); # Überprüfen, ob Alias verbannt ist + @banned = ; + close DATEI; + foreach(@banned) { + if ($_ eq "$alias\n") { + &log("system","\"login_alias_banned\""); + $tmp = "banned"; + &login_html(); + exit; + } + } + $col = $datei[1]; + $secol = $datei[2]; + &secure_setip($alias); + &frameset_html; + exit; + } else { + &log("system","\"login_pw_wrong\""); + $lognotexists = "false"; + } + } + } + if ($lognotexists eq "true") { + &log("system","\"login_alias_notexists\""); + } + &login_html; # Falls Login-Daten inkorrekt sind, zurück zur Startseite. +} + +sub create_alias { # Erstellung eines neuen Benutzers. + if ($alias =~ /[\W]/ || $alias eq "") { + &log("system","\"reg_alias_prohibited\""); + &create_alias_html("alias_prohibited");; + exit; + } elsif ($id ne $tmp) { + &log("system","\"reg_pw_wrong\""); + &create_alias_html("pw_wrong"); + exit; + } + &list_dir("data/user/options"); + for (my $i=0; $i<=$#dir; $i++) { + if ($dir[$i] eq $alias) { + &log("system","\"reg_alias_exists\""); + &create_alias_html("alias_exists"); + exit; + } + } + &write_file_new("data/user/options/$alias"); + print DATEI $id."\n"; + close DATEI; + &zeit; + &list_dir("data/user/options"); + my $number = $#dir-1; + &post("($hours:$min:$sec) $alias [$number] hat sich soeben als neuer Benutzer registriert :-) ..."); + &log("system","\"reg_ok\""); + &login_html; +} + +sub frameset_html { +print < + + + $title - Created by Paul C. Bütow 2k + + + + + + + + + +END +} -- cgit v1.2.3