fix: revert back home prefernces endpoint changes

This commit is contained in:
sangeethailango
2025-11-21 19:37:01 +05:30
parent 9b2c66afbe
commit ac353f35c6
2 changed files with 14 additions and 20 deletions

View File

@@ -227,6 +227,11 @@ urlpatterns = [
WorkspaceHomePreferenceViewSet.as_view(),
name="workspace-home-preference",
),
path(
"workspaces/<str:slug>/home-preferences/<str:key>/",
WorkspaceHomePreferenceViewSet.as_view(),
name="workspace-home-preference",
),
path(
"workspaces/<str:slug>/recent-visits/",
UserRecentVisitViewSet.as_view({"get": "list"}),

View File

@@ -61,26 +61,15 @@ class WorkspaceHomePreferenceViewSet(BaseAPIView):
)
@allow_permission([ROLE.ADMIN, ROLE.MEMBER, ROLE.GUEST], level="WORKSPACE")
def patch(self, request, slug):
for data in request.data:
key = data.pop("key", None)
if not key:
continue
def patch(self, request, slug, key):
preference = WorkspaceHomePreference.objects.filter(key=key, workspace__slug=slug, user=request.user).first()
preference = WorkspaceHomePreference.objects.filter(key=key, workspace__slug=slug).first()
if preference:
serializer = WorkspaceHomePreferenceSerializer(preference, data=request.data, partial=True)
if not preference:
continue
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_200_OK)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
if "is_enabled" in data:
preference.is_enabled = data["is_enabled"]
if "sort_order" in data:
preference.sort_order = data["sort_order"]
if "config" in data:
preference.config = data["config"]
preference.save(update_fields=["is_enabled", "sort_order", "config"])
return Response({"message": "Successfully updated"}, status=status.HTTP_200_OK)
return Response({"detail": "Preference not found"}, status=status.HTTP_400_BAD_REQUEST)