feat: UI de configuration des colonnes et mappings label→colonne
- Bouton ⚙ sur chaque colonne pour configurer le mapping label Gitea - Modal ⚙ Colonnes pour ajouter/renommer/supprimer des colonnes - API DELETE /api/col-mapping pour supprimer un mapping - Rafraîchit le board après chaque modification de colonne/mapping - CSS pour les nouveaux éléments (config panel, column list)
This commit is contained in:
@@ -195,6 +195,31 @@ async def set_col_mapping(
|
||||
return {"status": "ok", "column": column, "label": gitea_label}
|
||||
|
||||
|
||||
@router.delete("/col-mapping")
|
||||
async def delete_col_mapping(
|
||||
owner: str = Query(...),
|
||||
repo: str = Query(...),
|
||||
column: str = Query(...),
|
||||
):
|
||||
"""Delete a column-to-label mapping."""
|
||||
with get_conn() as conn:
|
||||
board = conn.execute(
|
||||
"SELECT id FROM boards WHERE project_owner=? AND project_name=?",
|
||||
(owner, repo),
|
||||
).fetchone()
|
||||
if not board:
|
||||
raise HTTPException(status_code=404, detail="Board not found")
|
||||
board_id = board["id"]
|
||||
|
||||
conn.execute(
|
||||
"DELETE FROM col_mapping WHERE board_id=? AND column_name=?",
|
||||
(board_id, column),
|
||||
)
|
||||
conn.commit()
|
||||
|
||||
return {"status": "ok", "column": column}
|
||||
|
||||
|
||||
@router.get("/board-config/{owner}/{repo}")
|
||||
async def get_board_config(owner: str, repo: str):
|
||||
with get_conn() as conn:
|
||||
|
||||
Reference in New Issue
Block a user