File tree 3 files changed +4
-5
lines changed
3 files changed +4
-5
lines changed Original file line number Diff line number Diff line change 14
14
from readthedocs .redirects .models import Redirect
15
15
from readthedocs .projects import constants
16
16
from readthedocs .projects .models import Project , EmailHook , WebHook
17
+ from readthedocs .privacy .loader import AdminPermission
17
18
18
19
19
20
class ProjectForm (forms .ModelForm ):
@@ -320,7 +321,7 @@ def clean_subproject(self):
320
321
raise forms .ValidationError ((_ ("Project %(name)s does not exist" )
321
322
% {'name' : subproject_name }))
322
323
subproject = subproject_qs .first ()
323
- if not subproject . user_is_admin (self .user ):
324
+ if not AdminPermission . is_admin (self .user , subproject ):
324
325
raise forms .ValidationError (_ (
325
326
'You need to be admin of {name} in order to add it as '
326
327
'a subproject.' .format (name = subproject_name )))
Original file line number Diff line number Diff line change @@ -253,9 +253,6 @@ def sync_supported_versions(self):
253
253
verbose_name__in = supported ).update (supported = False )
254
254
self .versions .filter (verbose_name = LATEST_VERBOSE_NAME ).update (supported = True )
255
255
256
- def user_is_admin (self , user ):
257
- return user in self .users .all ()
258
-
259
256
def save (self , * args , ** kwargs ):
260
257
first_save = self .pk is None
261
258
if not self .slug :
Original file line number Diff line number Diff line change 8
8
from readthedocs .builds .constants import LATEST
9
9
from readthedocs .projects .models import Project
10
10
from readthedocs .projects .forms import UpdateProjectForm
11
+ from readthedocs .privacy .loader import AdminPermission
11
12
12
13
13
14
class Testmaker (TestCase ):
@@ -200,7 +201,7 @@ def test_admins_can_delete_subprojects(self):
200
201
201
202
def test_project_admins_can_delete_subprojects_that_they_are_not_admin_of (self ):
202
203
self .project .users .add (self .user )
203
- self .assertFalse (self . subproject . user_is_admin (self .user ))
204
+ self .assertFalse (AdminPermission . is_admin (self .user , self . subproject ))
204
205
205
206
response = self .client .get ('/dashboard/my-mainproject/subprojects/delete/my-subproject/' )
206
207
self .assertEqual (response .status_code , 302 )
You can’t perform that action at this time.
0 commit comments