commit
3a0c97b3d4
|
@ -221,6 +221,9 @@
|
|||
// Skip checking certain IP addresses against blacklists (for troubleshooting or whatever)
|
||||
$config['dnsbl_exceptions'][] = '127.0.0.1';
|
||||
|
||||
// To prevent bump atacks; returns the thread to last position after the last post is deleted.
|
||||
$config['anti_bump_flood'] = false;
|
||||
|
||||
/*
|
||||
* Introduction to Tinyboard's spam filter:
|
||||
*
|
||||
|
|
|
@ -1201,6 +1201,7 @@ function deletePost($id, $error_if_doesnt_exist=true, $rebuild_after=true) {
|
|||
while ($post = $query->fetch(PDO::FETCH_ASSOC)) {
|
||||
event('delete', $post);
|
||||
|
||||
$thread_id = $post['thread'];
|
||||
if (!$post['thread']) {
|
||||
// Delete thread HTML page
|
||||
file_unlink($board['dir'] . $config['dir']['res'] . link_for($post) );
|
||||
|
@ -1252,6 +1253,17 @@ function deletePost($id, $error_if_doesnt_exist=true, $rebuild_after=true) {
|
|||
$query->bindValue(':board', $board['uri']);
|
||||
$query->execute() or error(db_error($query));
|
||||
|
||||
if ($config['anti_bump_flood']) {
|
||||
$query = prepare(sprintf("SELECT `time` FROM ``posts_%s`` WHERE (`thread` = :thread OR `id` = :thread) AND `sage` = 0 ORDER BY `time` DESC LIMIT 1", $board['uri']));
|
||||
$query->bindValue(':thread', $thread_id);
|
||||
$query->execute() or error(db_error($query));
|
||||
$bump = $query->fetchColumn();
|
||||
$query = prepare(sprintf("UPDATE ``posts_%s`` SET `bump` = :bump WHERE `id` = :thread", $board['uri']));
|
||||
$query->bindValue(':bump', $bump);
|
||||
$query->bindValue(':thread', $thread_id);
|
||||
$query->execute() or error(db_error($query));
|
||||
}
|
||||
|
||||
if (isset($rebuild) && $rebuild_after) {
|
||||
buildThread($rebuild);
|
||||
buildIndex();
|
||||
|
|
Loading…
Reference in New Issue