diff --git a/ext/admin/main.php b/ext/admin/main.php index b5542c26..35c6b5ef 100644 --- a/ext/admin/main.php +++ b/ext/admin/main.php @@ -110,11 +110,15 @@ class AdminPage extends Extension { private function delete_by_query() { global $page, $user; $query = $_POST['query']; + $reason = @$_POST['reason']; assert(strlen($query) > 1); log_warning("admin", "Mass deleting: $query"); $count = 0; foreach(Image::find_images(0, 1000000, Tag::explode($query)) as $image) { + if($reason && class_exists("ImageBan")) { + send_event(new AddImageHashBanEvent($image->hash, $reason)); + } send_event(new ImageDeletionEvent($image)); $count++; } diff --git a/ext/admin/theme.php b/ext/admin/theme.php index e16b1d73..96ac08e8 100644 --- a/ext/admin/theme.php +++ b/ext/admin/theme.php @@ -54,9 +54,14 @@ class AdminPageTheme extends Themelet { public function dbq_html($terms) { $h_terms = html_escape($terms); + $h_reason = ""; + if(class_exists("ImageBan")) { + $h_reason = ""; + } $html = make_form(make_link("admin/delete_by_query"), "POST") . " + $h_reason ";