更新
This commit is contained in:
@@ -19,7 +19,8 @@ from fastapi.responses import FileResponse
|
||||
from pydantic import BaseModel, Field
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
from auth.dependencies import require_admin
|
||||
from auth.dependencies import require_permission
|
||||
from auth.permissions import DESKTOP_MANAGE
|
||||
from auth.system_settings import get_cached_settings
|
||||
from desktop_release import (
|
||||
INSTALLER_DIR,
|
||||
@@ -120,7 +121,7 @@ async def desktop_download(db: AsyncSession = Depends(get_db)):
|
||||
async def get_release(
|
||||
request: Request,
|
||||
db: AsyncSession = Depends(get_db),
|
||||
_: User = Depends(require_admin),
|
||||
_: User = Depends(require_permission(DESKTOP_MANAGE)),
|
||||
):
|
||||
data = await load_release(db)
|
||||
return _to_response(data, request)
|
||||
@@ -131,7 +132,7 @@ async def update_release(
|
||||
body: DesktopReleaseUpdate,
|
||||
request: Request,
|
||||
db: AsyncSession = Depends(get_db),
|
||||
_: User = Depends(require_admin),
|
||||
_: User = Depends(require_permission(DESKTOP_MANAGE)),
|
||||
):
|
||||
updates = body.model_dump(exclude_unset=True)
|
||||
if "version" in updates and updates["version"] is not None:
|
||||
@@ -152,7 +153,7 @@ async def upload_installer(
|
||||
request: Request,
|
||||
file: UploadFile = File(...),
|
||||
db: AsyncSession = Depends(get_db),
|
||||
_: User = Depends(require_admin),
|
||||
_: User = Depends(require_permission(DESKTOP_MANAGE)),
|
||||
):
|
||||
filename = (file.filename or "").strip()
|
||||
if not filename.lower().endswith(".exe"):
|
||||
@@ -194,7 +195,7 @@ async def upload_installer(
|
||||
async def delete_installer(
|
||||
request: Request,
|
||||
db: AsyncSession = Depends(get_db),
|
||||
_: User = Depends(require_admin),
|
||||
_: User = Depends(require_permission(DESKTOP_MANAGE)),
|
||||
):
|
||||
remove_installer()
|
||||
data = await save_release(db, {"installer_name": "", "installer_size": 0})
|
||||
|
||||
Reference in New Issue
Block a user