} // Login ist für alle User gesperrt if ($chat_offline_kunde || isset($chat_offline) && strlen($chat_offline) > 0) { $aktion = "gesperrt"; } // Ausloggen, falls eingeloggt if ($aktion == "logoff") { // Vergleicht Hash-Wert mit IP und liefert u_id, u_name, o_id, o_raum id_lese($id); // Header ausgeben if ($layout_bodytag && !isset($chat_logout_url)) { echo "<HTML>\n<HEAD><TITLE>{$body_titel}</TITLE><META CHARSET=UTF-8>\n" . $metatag . $stylesheet . "\n" . $zusatztext_kopf . "\n</HEAD>\n"; } // Logoff falls noch online if (strlen($u_id) > 0) { verlasse_chat($u_id, $u_nick, $o_raum); sleep(2); logout($o_id, $u_id, "index->logout"); } if (isset($chat_logout_url) && $chat_logout_url != "") { echo "<HTML>\n<HEAD><TITLE>{$body_titel}</TITLE><META CHARSET=UTF-8>\n" . $metatag . $stylesheet . "\n" . $zusatztext_kopf . "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"0; URL={$chat_logout_url}\">\n" . "</HEAD>\n"; zeige_kopf(); $chat_login_url = "<a href=\"{$chat_logout_url}\">{$chat_logout_url}</a>"; echo "Sie werden nun auf {$chat_logout_url} weitergeleitet"; // echo "chat_refer = $chat_referer<BR>HTTP_REFERER=$HTTP_SERVER_VARS[HTTP_REFERER] <BR>"; zeige_fuss(); exit; } } // Falls in Loginmaske/Nutzungsbestimmungen auf Abbruch geklickt wurde if ($los == $t['login18'] && $aktion == "login") {
if ($f['u_adminemail'] == "") { echo $f1 . "<P><B>Fehler: Keine E-Mail Adresse hinterlegt!</B></P>" . $f2; } elseif (($u_level == "C" || $u_level == "A") && ($uu_level == "U" || $uu_level == "M" || $uu_level == "Z") || $u_level == "S") { $ok = mail($f['u_adminemail'], $t['chat_msg112'], str_replace("%passwort%", $f['u_passwort'], $t['chat_msg113']), "From: {$webmaster} ({$chat})"); if ($ok) { echo $f1 . $t['chat_msg111'] . $f2; schreibe_db("user", $f, $f['u_id'], "u_id"); } else { echo $f1 . "<P><B>Fehler: Die Mail konnte nicht verschickt werden. Das Passwort wurde beibehalten!</B></P>" . $f2; } $user = $f['u_nick']; $query = "SELECT o_id,o_raum,o_name FROM online WHERE o_user="******" AND o_level!='C' AND o_level!='S'"; $result = mysql_query($query, $conn); if ($result && mysql_num_rows($result) > 0) { $row = mysql_fetch_object($result); verlasse_chat($f['u_id'], $row->o_name, $row->o_raum); logout($row->o_id, $f['u_id'], "edit->pwänderung"); mysql_free_result($result); } } else { echo $f1 . "<P><B>Fehler: Aktion nicht erlaubt!</B></P>" . $f2; } } else { // User mit ID $u_id anzeigen if ($admin && strlen($f['u_id']) > 0) { // Jeden User anzeigen $query = "SELECT user.* FROM user WHERE u_id=" . intval($f[u_id]); $result = mysql_query($query, $conn); $rows = mysql_num_rows($result); } else { // Nur eigene Daten anzeigen
function sperre($r_id, $u_id, $u_name, $s_user, $s_user_name, $admin) { // Sperrt User s_user für Raum r_id oder hebt Sperre auf // Wirft User ggf aus dem Raum r_id global $lobby; global $dbase; global $timeout; global $t; global $u_level; global $conn; // Id der Lobby als Voreinstellung ermitteln $query = "SELECT r_id FROM raum WHERE r_name LIKE '{$lobby}' "; $result = mysql_query($query, $conn); $rows = mysql_num_rows($result); if ($rows > 0) { $lobby_id = mysql_result($result, 0, "r_id"); } else { system_msg("", 0, $u_id, $system_farbe, $t['sperre1']); } mysql_free_result($result); if ($r_id != $lobby_id) { $query = "SELECT s_id FROM sperre " . "WHERE s_user={$s_user} " . "AND s_raum={$r_id}"; $result = mysql_query($query, $conn); $rows = mysql_num_rows($result); if ($rows == 0) { // Ist User s_user in diesem Raum? $o_id ermitteln $query2 = "SELECT o_id FROM online " . "WHERE o_raum={$r_id} " . "AND o_user={$s_user} " . "AND (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(o_aktiv)) <= {$timeout} "; $result2 = mysql_query($query2, $conn); $rows2 = mysql_num_rows($result2); if ($rows2 > 0) { // Sperre neu setzen $o_id = mysql_result($result2, 0, "o_id"); $f['s_user'] = $s_user; $f['s_raum'] = $r_id; schreibe_db("sperre", $f, "", "s_id"); // User aus Raum werfen global_msg($u_id, $r_id, "'{$u_name}' {$t['sperre2']} '{$s_user_name}' {$t['sperre3']}"); raum_gehe($o_id, $s_user, $s_user_name, $r_id, $lobby_id, FALSE); } else { // User ist nicht in diesem Raum... meldung ausgeben. system_msg("", 0, $u_id, $system_farbe, str_replace("%s_user_name%", $s_user_name, $t['sperre4'])); // trotzdem in Seprre eintragen. $f['s_user'] = $s_user; $f['s_raum'] = $r_id; schreibe_db("sperre", $f, "", "s_id"); } } else { // Sperre löschen $s_id = mysql_result($result, 0, "s_id"); $query2 = "DELETE FROM sperre WHERE s_id={$s_id} "; $result2 = mysql_query($query2, $conn); global_msg($u_id, $r_id, "'{$u_name}' {$t['sperre2']} '{$s_user_name}' {$t['sperre5']}"); } mysql_free_result($result); } else { // User ist in Lobby if (!($admin || $u_level == "A")) { system_msg("", 0, $u_id, $system_farbe, $t['sperre6']); } else { // User aus Chat werfen // Ist User s_user in diesem Raum? $o_id ermitteln $query2 = "SELECT o_id FROM online " . "WHERE o_raum={$r_id} " . "AND o_user={$s_user} " . "AND (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(o_aktiv)) <= {$timeout} "; $result2 = mysql_query($query2, $conn); $rows2 = mysql_num_rows($result2); if ($rows2 > 0) { // User rauswerfen $o_id = mysql_result($result2, 0, "o_id"); global_msg($u_id, $r_id, "'{$u_name}' {$t['sperre2']} '{$s_user_name}' {$t['sperre7']}"); // 2 sek vor dem ausloggen warten, damit der Störer die Meldung auch noch lesen kann !!! sleep(2); verlasse_chat($s_user, $s_user_name, $r_id); sleep(2); logout($o_id, $s_user, "sperre in lobby"); } else { system_msg("", 0, $u_id, $system_farbe, str_replace("%s_user_name%", $s_user_name, $t['sperre4'])); } } } }
function gehe_forum($u_id, $u_nick, $o_id, $o_raum) { global $conn, $t; //Austrittstext im alten raum erzeugen verlasse_chat($u_id, $u_nick, $o_raum); system_msg("", 0, $u_id, "", str_replace("%u_nick%", $u_nick, $t['betrete_forum1'])); //Daten in online-tabelle richten $f['o_raum'] = -1; //-1 allgemein fuer community $f['o_who'] = "2"; //2 -> Forum schreibe_db("online", $f, $o_id, "o_id"); }
$ur1 = "umfrage.php?http_host={$http_host}&id={$id}&adminuebersicht=1"; $url = "HREF=\"{$ur1}\" TARGET=\"640_statistik\" onclick=\"window.open('{$ur1}','640_statistik','resizable=yes,scrollbars=yes,width=780,height=580'); return(false);\""; $text .= "<LI><A {$url}>{$t['menue13']}</A>\n"; } if ($aktion != "zeigalle" || $u_level != "S") { show_box2($box, $text, "100%"); echo "<IMG SRC=\"pics/fuell.gif\" ALT=\"\" WIDTH=4 HEIGHT=4><BR>\n"; } } if ($admin && isset($kick_user_chat) && $user) { // Nur Admins: User sofort aus dem Chat kicken $query = "SELECT o_id,o_raum,o_name FROM online " . "WHERE o_user='******' " . "AND o_level!='C' AND o_level!='S' AND o_level!='A' "; $result = mysql_query($query, $conn); if ($result && mysql_num_rows($result) > 0) { $row = mysql_fetch_object($result); verlasse_chat($user, $row->o_name, $row->o_raum); logout($row->o_id, $user, "user->kick " . $u_id . " " . $u_nick); mysql_free_result($result); } else { echo $t['sonst40']; } } // Traceroute ausgeben if ($admin and isset($trace)) { if (!file_exists($traceroute)) { system_msg("", 0, $u_id, $system_farbe, "<b>config anpassen \$traceroute</b>"); } $box = $ft0 . $t['sonst3'] . " " . $trace . $ft1; echo "<TABLE CELLPADDING=2 CELLSPACING=0 BORDER=0 WIDTH=100% BGCOLOR={$farbe_tabelle_kopf}><TR><TD>" . "<A HREF=\"#\" onClick=\"window.close();\">" . "<IMG SRC=\"pics/button-x.gif\" ALT=\"schließen\" WIDTH=15 HEIGHT=13 ALIGN=\"RIGHT\" BORDER=0></A>\n" . "<FONT SIZE=-1 COLOR={$farbe_text}><B>{$box}</B></FONT>\n" . "</TD></TR></TABLE>\n<PRE>" . $f1; system("{$traceroute} {$trace}", $ergebnis); echo $f2 . "</PRE>\n";
$query = "DELETE FROM chat " . "WHERE (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(c_zeit)) > 900 " . "AND c_typ='P' OR c_zeit='' OR c_zeit=0"; $result = mysql_query($query, $conn); } set_time_limit(120); // Alle Systemnachrichten löschen // Alle leeren Nachrichten löschen $query = "DELETE FROM chat " . "WHERE (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(c_zeit)) > 900 " . "AND c_typ='S' OR c_text='' OR c_text IS NULL OR c_zeit='' OR c_zeit IS NULL"; $result = mysql_query($query, $conn); // User ausloggen, wenn $timeout überschritten wurde echo "User ausloggen..."; $query = "SELECT SQL_BUFFER_RESULT o_user,o_raum,o_id,o_who,o_name FROM online " . "WHERE (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(o_aktiv)) > {$timeout}"; $result = mysql_query($query, $conn); if ($result) { while ($rows = mysql_fetch_object($result)) { // Chat verlassen und Nachricht an alle User im aktuellen Raum schreiben verlasse_chat($rows->o_user, $rows->o_name, $rows->o_raum); logout($rows->o_id, $rows->o_user, "expire->timeout {$timeout}"); echo "{$rows->o_name} "; } mysql_free_result($result); } echo "\n"; // Gast-User löschen, falls ausgelogt und älter als 4 Minuten echo "Gäste löschen\n"; $query = "SELECT SQL_BUFFER_RESULT u_id FROM user left join online on o_user=u_id " . "WHERE u_level='G' AND o_id IS NULL " . "AND (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(u_login)) > 240"; $result = mysql_query($query, $conn); if ($result && mysql_num_rows($result) > 0) { while ($row = mysql_fetch_object($result)) { // User löschen $result3 = mysql_query("DELETE FROM user WHERE u_id={$row->u_id}", $conn); // User-Ignore Einträge löschen