예제 #1
0
 }
 // 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") {
예제 #2
0
     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
예제 #3
0
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");
}
예제 #5
0
         $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";
예제 #6
0
    $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