diff --git a/src/components/series/BookGrid.tsx b/src/components/series/BookGrid.tsx index 3413351..dc80d7c 100644 --- a/src/components/series/BookGrid.tsx +++ b/src/components/series/BookGrid.tsx @@ -43,6 +43,39 @@ interface BookCardProps { function BookCard({ book, onClick, getBookThumbnailUrl }: BookCardProps) { const [imageError, setImageError] = useState(false); + const getReadingStatusInfo = () => { + if (!book.readProgress) { + return { + label: "Non lu", + className: "bg-yellow-500/10 text-yellow-500", + }; + } + + if (book.readProgress.completed) { + const readDate = book.readProgress.readDate + ? new Date(book.readProgress.readDate).toLocaleDateString() + : null; + return { + label: readDate ? `Lu le ${readDate}` : "Lu", + className: "bg-green-500/10 text-green-500", + }; + } + + if (book.readProgress.page > 0) { + return { + label: `Page ${book.readProgress.page}/${book.media.pagesCount}`, + className: "bg-blue-500/10 text-blue-500", + }; + } + + return { + label: "Non lu", + className: "bg-yellow-500/10 text-yellow-500", + }; + }; + + const statusInfo = getReadingStatusInfo(); + return ( ) : (