Label editing
This commit is contained in:
@@ -6,6 +6,7 @@ from pydantic import BaseModel
|
||||
|
||||
from backend.app.api.dependencies import require_admin
|
||||
from backend.app.database import get_connection, hash_password
|
||||
from backend.app.services.link_service import delete_label
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@@ -127,6 +128,26 @@ def delete_user(user_id: str, current_user: dict = Depends(require_admin)):
|
||||
return {'status': 'deleted', 'id': user_id}
|
||||
|
||||
|
||||
@router.delete('/labels/{label_id}')
|
||||
def admin_delete_label(label_id: str, _: dict = Depends(require_admin)):
|
||||
if not delete_label(label_id, is_admin=True):
|
||||
raise HTTPException(status_code=404, detail='Label not found')
|
||||
return {'status': 'deleted', 'id': label_id}
|
||||
|
||||
|
||||
@router.get('/labels')
|
||||
def admin_list_labels(_: dict = Depends(require_admin)):
|
||||
with get_connection() as conn:
|
||||
rows = conn.execute(
|
||||
'''
|
||||
SELECT tags.id, tags.name, tags.created_by, users.username AS creator
|
||||
FROM tags LEFT JOIN users ON users.id = tags.created_by
|
||||
ORDER BY tags.name
|
||||
'''
|
||||
).fetchall()
|
||||
return [dict(row) for row in rows]
|
||||
|
||||
|
||||
@router.get('/plugins')
|
||||
def list_plugins(_: dict = Depends(require_admin)):
|
||||
with get_connection() as conn:
|
||||
|
||||
Reference in New Issue
Block a user