Admin: serie-detail, billedhåndtering, dark mode fix, source_url kolonne + verify
- Serie-detail side: sæt under serie + enkelt/bulk opret - Billedhentning: URL→lokal download med source_url til re-sync - Advarselsbadge (⚠) på kort med eksterne URLs (ingen streaming) - Sync/Verify endpoints + knapper i admin UI - Brugerstyring: opret/slet (self-delete beskyttet) - Dark mode flash fix: render-blokerende script i <head> - Persistent volume til billeder (pokedexter_images)
This commit is contained in:
@@ -48,7 +48,8 @@ class Card(Base):
|
||||
set_id = Column(Integer, ForeignKey("sets.id", ondelete="CASCADE"), nullable=False, index=True)
|
||||
number = Column(String(10), nullable=False) # "050"
|
||||
name = Column(String(200), nullable=False) # "Raichu"
|
||||
image_path = Column(String(500), nullable=True) # URL eller sti "images/.../050.jpg"
|
||||
image_path = Column(String(500), nullable=True) # Sti: "images/.../050.jpg"
|
||||
source_url = Column(String(2000), nullable=True) # Original ekstern URL (til re-sync)
|
||||
|
||||
set = relationship("Set", back_populates="cards")
|
||||
|
||||
@@ -58,9 +59,9 @@ class Card(Base):
|
||||
|
||||
@property
|
||||
def image_url(self):
|
||||
"""Returner URL'en for visning — absolut URL eller /static/ relativ sti."""
|
||||
"""Returner URL'en for visning — kun lokale stier. Ingen eksterne URLs."""
|
||||
if not self.image_path:
|
||||
return None
|
||||
if self.image_path.startswith(("http://", "https://")):
|
||||
return self.image_path
|
||||
return None # Må ikke streames fra ekstern server
|
||||
return f"/static/{self.image_path}"
|
||||
Reference in New Issue
Block a user