fixed has_read_book