diff --git a/backend/routers/projects.py b/backend/routers/projects.py index 53a4bf5..bc40b1b 100644 --- a/backend/routers/projects.py +++ b/backend/routers/projects.py @@ -654,6 +654,40 @@ async def create_project(request: Request, db: Session = Depends(get_db)): }) +@router.get("/deleted") +async def list_deleted_projects(db: Session = Depends(get_db)): + """List all soft-deleted projects.""" + projects = ( + db.query(Project) + .filter(Project.status == "deleted") + .order_by(Project.deleted_at.desc()) + .all() + ) + return JSONResponse([ + { + "id": p.id, + "name": p.name, + "client_name": p.client_name, + "deleted_at": p.deleted_at.isoformat() if p.deleted_at else None, + } + for p in projects + ]) + + +@router.post("/{project_id}/restore") +async def restore_project(project_id: str, db: Session = Depends(get_db)): + """Restore a soft-deleted project back to active.""" + project = db.query(Project).filter_by(id=project_id).first() + if not project: + raise HTTPException(status_code=404, detail="Project not found") + if project.status != "deleted": + raise HTTPException(status_code=400, detail="Project is not deleted") + project.status = "active" + project.deleted_at = None + db.commit() + return {"success": True, "message": f"Project '{project.name}' restored."} + + @router.get("/{project_id}") async def get_project(project_id: str, db: Session = Depends(get_db)): """ diff --git a/templates/partials/projects/location_list.html b/templates/partials/projects/location_list.html index c455927..9c8219a 100644 --- a/templates/partials/projects/location_list.html +++ b/templates/partials/projects/location_list.html @@ -10,11 +10,6 @@ class="font-semibold text-gray-900 dark:text-white hover:text-seismo-orange truncate"> {{ item.location.name }} - {% if item.location.location_type %} - - {{ item.location.location_type|capitalize }} - - {% endif %} {% if item.location.description %}

{{ item.location.description }}

diff --git a/templates/projects/detail.html b/templates/projects/detail.html index 9e42246..6cc60ed 100644 --- a/templates/projects/detail.html +++ b/templates/projects/detail.html @@ -35,30 +35,21 @@ class="tab-button px-4 py-3 border-b-2 font-medium text-sm transition-colors border-seismo-orange text-seismo-orange whitespace-nowrap"> Overview - - - - - - + +