Flootlimit bei Admins deaktivieren?

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Flootlimit bei Admins deaktivieren?

Beitrag von Volle »

Hallo,

gibt es einen Mod, der Admins erlaubt so schnell hintereinander Beiträge zu schreiben wie sie wollen, oder für jede Usergruppe ein eigenes Zeitlimit einstellen lässt?

Volle
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

nein gibt es nicht aber wenn du folgendes in der includes/functions_post.php änderst ist das floodlimit für admins deaktiviert:
suche:

Code: Alles auswählen

		//
		// Flood control
		//
		$where_sql = ($userdata['user_id'] == ANONYMOUS) ? "poster_ip = '$user_ip'" : 'poster_id = ' . $userdata['user_id'];
		$sql = "SELECT MAX(post_time) AS last_post_time
			FROM " . POSTS_TABLE . "
			WHERE $where_sql";
		if ($result = $db->sql_query($sql))
		{
			if ($row = $db->sql_fetchrow($result))
			{
				if (intval($row['last_post_time']) > 0 && ($current_time - intval($row['last_post_time'])) < intval($board_config['flood_interval']))
				{
					message_die(GENERAL_MESSAGE, $lang['Flood_Error']);
				}
			}
		}
ersetzen durch

Code: Alles auswählen

		if ( $userdata['user_level'] != ADMIN )
		{
			//
			// Flood control
			//
			$where_sql = ($userdata['user_id'] == ANONYMOUS) ? "poster_ip = '$user_ip'" : 'poster_id = ' . $userdata['user_id'];
			$sql = "SELECT MAX(post_time) AS last_post_time
				FROM " . POSTS_TABLE . "
				WHERE $where_sql";
			if ($result = $db->sql_query($sql))
			{
				if ($row = $db->sql_fetchrow($result))
				{
					if (intval($row['last_post_time']) > 0 && ($current_time - intval($row['last_post_time'])) < intval($board_config['flood_interval']))
					{
						message_die(GENERAL_MESSAGE, $lang['Flood_Error']);
					}
				}
			}
		}
ah
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Beitrag von Volle »

danke, nun kann ich wenigstens als Admin das ganze umgehen :)

Volle
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

naja willst du das ganze auch noch mit gruppen haben?

ah
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Beitrag von Volle »

Ja, wär sicherlich auch ganz interessant.

Volle
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

okay füge folgende funktion am ende der includes/functions.php vor ?> ein:

Code: Alles auswählen

function member_of($group_id, $userdata) 
{ 
        global $db; 
        if ( !$userdata['session_logged_in'] ) 
        { 
                return false; 
        } 
        $sql = "SELECT count(*) AS num FROM " . USER_GROUP_TABLE . " 
                WHERE user_id = '" . $userdata['user_id'] . "' AND group_id IN ( " . $group_id . " )";
          if ( !($result = $db->sql_query($sql)) ) 
        { 
                message_die(GENERAL_ERROR, 'Could not get group auth', '', __LINE__, __FILE__, $sql); 
        } 
        $row = $db->sql_fetchrow($result); 
        if ( $row['num'] > 0 ) 
        { 
                return true; 
        } 
        return false; 
}
und dann noch in der functions_post.php suchen:

Code: Alles auswählen

      if ( $userdata['user_level'] != ADMIN ) 
      { 
         // 
         // Flood control 
         // 
ersetzen durch

Code: Alles auswählen

      if ( $userdata['user_level'] != ADMIN || member_of('1,2,3', $userdata) ) 
      { 
         // 
         // Flood control 
         // 
wobei du das 1,2,3 durch die ids der entsprechenden gruppen ersetzen musst...

ah
Zuletzt geändert von saerdnaer am 03.09.2004 20:15, insgesamt 1-mal geändert.
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Beitrag von Volle »

gibt es eine Möglichkeit das ganze noch über die Gruppenverwaltung zu steuern?
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

sicher allerdings würde das etwas mehr anstrengungen erfordern...

ah
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Beitrag von Volle »

hmm ok wär ein Argument, aber im Sinne der anderen Admins die auf dem Board noch mit entscheiden wäre es sicher einfacher das über die Adminoberfläche zu verwalten, vorallem muss dann nicht jeder die Dateieneditieren und womöglich noch etwas zerschießen.

Volle
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

würde es dir reichen wenn du im adminbereich unter konfiguration die ids eintragen kannst?

ah
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“