Flootlimit bei Admins deaktivieren?
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.
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.
Flootlimit bei Admins deaktivieren?
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
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
nein gibt es nicht aber wenn du folgendes in der includes/functions_post.php änderst ist das floodlimit für admins deaktiviert:
suche:ersetzen durch
ah
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']);
}
}
}
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']);
}
}
}
}
okay füge folgende funktion am ende der includes/functions.php vor ?> ein:
und dann noch in der functions_post.php suchen:ersetzen durch
wobei du das 1,2,3 durch die ids der entsprechenden gruppen ersetzen musst...
ah
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;
}
Code: Alles auswählen
if ( $userdata['user_level'] != ADMIN )
{
//
// Flood control
//
Code: Alles auswählen
if ( $userdata['user_level'] != ADMIN || member_of('1,2,3', $userdata) )
{
//
// Flood control
//
ah
Zuletzt geändert von saerdnaer am 03.09.2004 20:15, insgesamt 1-mal geändert.