/** * Delete an image completly. * * @param array $images Array with the image_id(s) * @param array $filenames Array with filenames for the image_ids. If a filename is missing it's queried from the database. * Format: $image_id => $filename */ public static function delete_images($images, $filenames = array()) { //@todo: phpbb_gallery_comment_base::delete_images($images); //@todo: phpbb_gallery_report_base::delete_images($images); //@todo: phpbb_gallery_favorite::delete_images($images); //@todo: phpbb_gallery_watch::delete_images($images); // Delete the files from the disc... $need_filenames = array(); foreach ($images as $image) { if (!isset($filenames[$image])) { $need_filenames[] = $image; } } $filenames = array_merge($filenames, self::get_filenames($need_filenames)); phpbb_gallery_image_file::delete($filenames); // Delete the ratings... phpbb_gallery_image_rating::delete_ratings($images); $sql = 'DELETE FROM ' . GALLERY_IMAGES_TABLE . ' WHERE ' . $db->sql_in_set('image_id', $images); $db->sql_query($sql); return true; }