From c035f05efe86044a4011649abafe4a3acfedf268 Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Thu, 4 Apr 2024 22:12:25 +0200
Subject: [PATCH] Drop unused mutations due to security reasons

---
 aleksis/apps/alsijil/schema/__init__.py      |  9 ---
 aleksis/apps/alsijil/schema/documentation.py | 80 --------------------
 2 files changed, 89 deletions(-)

diff --git a/aleksis/apps/alsijil/schema/__init__.py b/aleksis/apps/alsijil/schema/__init__.py
index 8cffee5fd..d762a9874 100644
--- a/aleksis/apps/alsijil/schema/__init__.py
+++ b/aleksis/apps/alsijil/schema/__init__.py
@@ -14,11 +14,7 @@ from aleksis.core.util.core_helpers import has_person
 
 from ..models import Documentation
 from .documentation import (
-    DocumentationBatchCreateMutation,
     DocumentationBatchCreateOrUpdateMutation,
-    DocumentationBatchPatchMutation,
-    DocumentationCreateMutation,
-    DocumentationDeleteMutation,
     DocumentationType,
 )
 
@@ -122,9 +118,4 @@ class Query(graphene.ObjectType):
 
 
 class Mutation(graphene.ObjectType):
-    create_documentation = DocumentationCreateMutation.Field()
-    create_documentations = DocumentationBatchCreateMutation.Field()
-    delete_documentation = DocumentationDeleteMutation.Field()
-    update_documentations = DocumentationBatchPatchMutation.Field()
-
     create_or_update_documentations = DocumentationBatchCreateOrUpdateMutation.Field()
diff --git a/aleksis/apps/alsijil/schema/documentation.py b/aleksis/apps/alsijil/schema/documentation.py
index d5f798695..8ce3adb7b 100644
--- a/aleksis/apps/alsijil/schema/documentation.py
+++ b/aleksis/apps/alsijil/schema/documentation.py
@@ -5,11 +5,6 @@ from django.utils.timezone import localdate, localtime
 
 import graphene
 from graphene_django.types import DjangoObjectType
-from graphene_django_cud.mutations import (
-    DjangoBatchCreateMutation,
-    DjangoBatchPatchMutation,
-    DjangoCreateMutation,
-)
 from guardian.shortcuts import get_objects_for_user
 
 from aleksis.apps.alsijil.util.predicates import can_edit_documentation, is_in_allowed_time_range
@@ -18,9 +13,7 @@ from aleksis.apps.cursus.models import Subject
 from aleksis.apps.cursus.schema import CourseType, SubjectType
 from aleksis.core.models import Person
 from aleksis.core.schema.base import (
-    DeleteMutation,
     DjangoFilterMixin,
-    PermissionBatchPatchMixin,
     PermissionsTypeMixin,
 )
 from aleksis.core.util.core_helpers import get_site_preferences
@@ -75,79 +68,6 @@ class DocumentationType(PermissionsTypeMixin, DjangoFilterMixin, DjangoObjectTyp
         return get_objects_for_user(info.context.user, "alsijil.view_documentation", queryset)
 
 
-class DocumentationCreateMutation(DjangoCreateMutation):
-    class Meta:
-        model = Documentation
-        only_fields = (
-            "course",
-            "lesson_event",
-            "subject",
-            "topic",
-            "homework",
-            "group_note",
-            "datetime_start",
-            "datetime_end",
-            "date_start",
-            "date_end",
-        )
-        optional_fields = (
-            "course",
-            "lesson_event",
-            "subject",
-            "topic",
-            "homework",
-            "group_note",
-            "datetime_start",
-            "datetime_end",
-            "date_start",
-            "date_end",
-        )
-        permissions = ("alsijil.add_documentation",)  # FIXME
-
-
-class DocumentationBatchCreateMutation(DjangoBatchCreateMutation):
-    class Meta:
-        model = Documentation
-        only_fields = (
-            "id",
-            "course",
-            "lesson_event",
-            "subject",
-            "topic",
-            "homework",
-            "group_note",
-            "datetime_start",
-            "datetime_end",
-            "date_start",
-            "date_end",
-        )
-        permissions = ("alsijil.add_documentation",)  # FIXME
-
-
-class DocumentationDeleteMutation(DeleteMutation):
-    klass = Documentation
-    permission_required = "alsijil.delete_documentation_rule"  # FIXME
-
-
-class DocumentationBatchPatchMutation(PermissionBatchPatchMixin, DjangoBatchPatchMutation):
-    class Meta:
-        model = Documentation
-        only_fields = (
-            "id",
-            "course",
-            "lesson_event",
-            "subject",
-            "topic",
-            "homework",
-            "group_note",
-            "datetime_start",
-            "datetime_end",
-            "date_start",
-            "date_end",
-        )
-        permissions = ("alsijil.edit_documentation_rule",)  # FIXME
-
-
 class DocumentationInputType(graphene.InputObjectType):
     id = graphene.ID(required=True)
     course = graphene.ID(required=False)
-- 
GitLab