1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-13 13:50:07 +00:00

[api2] Added repowritable permission

This commit is contained in:
zhengxie
2012-12-19 16:39:50 +08:00
parent d7f2df823c
commit ff09fd07f6
2 changed files with 28 additions and 8 deletions

20
api2/permissions.py Normal file
View File

@@ -0,0 +1,20 @@
"""
Provides a set of pluggable permission policies.
"""
from rest_framework.permissions import BasePermission
from seaserv import check_permission
class IsRepoWritable(BasePermission):
"""
Allows access only for users who has write permission to the repo.
"""
def has_permission(self, request, view, obj=None):
repo_id = view.kwargs.get('repo_id', '')
user = request.user.username if request.user else ''
if user and check_permission(repo_id, user) == 'rw':
return True
return False