Files
gesthub/web/services/block_service.py
2026-08-21 09:12:02 +02:00

26 lines
793 B
Python

"""block_service.py — Logique métier du tableau de bord (widgets)."""
from models import block_model
def list_blocks(db):
return block_model.fetch_all(db)
def add_block(db, block_type, column, data):
if block_type not in {"iframe", "buttons", "html"}:
raise ValueError(f"Type de bloc inconnu : {block_type}")
if column not in {"left", "center", "right"}:
raise ValueError(f"Colonne inconnue : {column}")
return block_model.insert(db, block_type, column, data)
def save_layout(db, layout):
"""layout : liste de {id, column, position} après un drag & drop."""
for item in layout:
block_model.update_position(db, item["id"], item["column"], item["position"])
def delete_block(db, block_id):
return block_model.delete(db, block_id)