mirror of
https://github.com/i701/sarlink-portal-api.git
synced 2025-06-28 22:03:59 +00:00
Refactor Omada class methods for clarity; update device blocking logic in DeviceBlockAPIView and improve user verification error handling
Some checks failed
Build and Push Docker Images / Build and Push Docker Images (push) Failing after 3m14s
Some checks failed
Build and Push Docker Images / Build and Push Docker Images (push) Failing after 3m14s
This commit is contained in:
@ -11,6 +11,7 @@ from .serializers import (
|
||||
BlockDeviceSerializer,
|
||||
)
|
||||
from api.mixins import StaffEditorPermissionMixin
|
||||
from api.omada import Omada
|
||||
from .filters import DeviceFilter
|
||||
import re
|
||||
import requests
|
||||
@ -127,6 +128,10 @@ class DeviceBlockAPIView(StaffEditorPermissionMixin, generics.UpdateAPIView):
|
||||
if not isinstance(blocked, bool):
|
||||
return Response({"message": "Blocked field must be a boolean."}, status=400)
|
||||
instance.blocked = blocked
|
||||
omada_client = Omada()
|
||||
omada_client.block_device(
|
||||
instance.mac, operation="block" if blocked else "unblock"
|
||||
)
|
||||
instance.save()
|
||||
serializer = self.get_serializer(instance, data=request.data, partial=False)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
|
Reference in New Issue
Block a user