From 52d5b8204f2bc090340a0bee5b2bf6b9241e4660 Mon Sep 17 00:00:00 2001
From: Sylvain Le Bon <sylvain@happy-dev.fr>
Date: Sun, 25 Nov 2018 12:43:39 +0100
Subject: [PATCH] bugfix: return 200 on OPTIONS (fix #59)

---
 djangoldp/views.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/djangoldp/views.py b/djangoldp/views.py
index f4b344b7..f6eadb7d 100644
--- a/djangoldp/views.py
+++ b/djangoldp/views.py
@@ -37,13 +37,17 @@ class NoCSRFAuthentication(SessionAuthentication):
 class WACPermissions(DjangoObjectPermissions):
     perms_map = {
         'GET': ['%(app_label)s.view_%(model_name)s'],
-        'OPTIONS': ['%(app_label)s.view_%(model_name)s'],
+        'OPTIONS': [],
         'HEAD': ['%(app_label)s.view_%(model_name)s'],
         'POST': ['%(app_label)s.add_%(model_name)s'],
         'PUT': ['%(app_label)s.change_%(model_name)s'],
         'PATCH': ['%(app_label)s.change_%(model_name)s'],
         'DELETE': ['%(app_label)s.delete_%(model_name)s'],
     }
+    def has_permission(self, request, view):
+        if request.method == 'OPTIONS':
+            return True
+        return super().has_permission(request, view)
 
 class AnnonReadOnly(WACPermissions):
     authenticated_users_only = False
-- 
GitLab