Team credentials listing.

This commit is contained in:
Michael DeHaan
2013-04-04 14:41:31 -04:00
parent 2c2c26860f
commit 0a306ee0ad
3 changed files with 8 additions and 9 deletions

View File

@@ -557,9 +557,8 @@ class Credential(CommonModelNameNotUnique):
user_obj = User.objects.get(pk=data['user']) user_obj = User.objects.get(pk=data['user'])
return UserHelper.can_user_administrate(user, user_obj) return UserHelper.can_user_administrate(user, user_obj)
if 'team' in data: if 'team' in data:
raise Exception("FIXME") team_obj = Team.objects.get(pk=data['team'])
#team_obj = Team.objects.get(pk=data['team']) return Team.can_user_administrate(user, team_obj)
#return team_obj.organization.users.filter(admins__in = [user]).count()
def get_absolute_url(self): def get_absolute_url(self):
import lib.urls import lib.urls

View File

@@ -308,15 +308,15 @@ class ProjectsTest(BaseTest):
self.post(team_creds, data=new_credentials, expect=401, auth=self.get_invalid_credentials()) self.post(team_creds, data=new_credentials, expect=401, auth=self.get_invalid_credentials())
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_super_credentials()) self.post(team_creds, data=new_credentials, expect=201, auth=self.get_super_credentials())
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_normal_credentials()) self.post(team_creds, data=new_credentials, expect=201, auth=self.get_normal_credentials())
self.post(team_creds, data=new_credentials, expect=201, auth=self.get_other_credentials()) self.post(team_creds, data=new_credentials, expect=403, auth=self.get_other_credentials())
self.post(team_creds, data=new_credentials, expect=403, auth=self.get_nobody_credentials()) self.post(team_creds, data=new_credentials, expect=403, auth=self.get_nobody_credentials())
# can list credentials on a user # can list credentials on a user
self.get(other_creds, expect=401) self.get(other_creds, expect=401)
self.get(other_creds, expect=401, auth=self.get_invalid_credentials()) self.get(other_creds, expect=401, auth=self.get_invalid_credentials())
self.get(other_creds, expect=201, auth=self.get_super_credentials()) self.get(other_creds, expect=200, auth=self.get_super_credentials())
self.get(other_creds, expect=201, auth=self.get_normal_credentials()) self.get(other_creds, expect=200, auth=self.get_normal_credentials())
self.get(other_creds, expect=201, auth=self.get_other_credentials()) self.get(other_creds, expect=200, auth=self.get_other_credentials())
self.get(other_creds, expect=403, auth=self.get_nobody_credentials()) self.get(other_creds, expect=403, auth=self.get_nobody_credentials())
# can list credentials on a team # can list credentials on a team

View File

@@ -229,7 +229,7 @@ class TeamsCredentialsList(BaseSubList):
if not Team.can_user_read(self.request.user, team): if not Team.can_user_read(self.request.user, team):
raise PermissionDenied() raise PermissionDenied()
project_credentials = Credential.objects.filter( project_credentials = Credential.objects.filter(
projects__teams__users__in = [ user ] projects__team__users__in = [ user ]
) )
return user.credentials.distinct() | project_credentials.distinct() return user.credentials.distinct() | project_credentials.distinct()
@@ -370,7 +370,7 @@ class UsersCredentialsList(BaseSubList):
if not UserHelper.can_user_administrate(self.request.user, user): if not UserHelper.can_user_administrate(self.request.user, user):
raise PermissionDenied() raise PermissionDenied()
project_credentials = Credential.objects.filter( project_credentials = Credential.objects.filter(
projects__teams__users__in = [ user ] team__users__in = [ user ]
) )
return user.credentials.distinct() | project_credentials.distinct() return user.credentials.distinct() | project_credentials.distinct()