Feed error messages through a cors wrapper so that people on other domains can see what's happening.

This commit is contained in:
jakedt 2014-03-17 16:57:35 -04:00
parent 4673f40dd2
commit 3b3d71bfd7
18 changed files with 162 additions and 129 deletions

View file

@ -1,8 +1,7 @@
from flask import request
from flask.ext.restful import abort
from endpoints.api import (resource, nickname, ApiResource, validate_json_request, request_error,
log_action)
log_action, Unauthorized, NotFound)
from auth.permissions import AdministerOrganizationPermission, ViewTeamPermission
from auth.auth_context import get_authenticated_user
from data import model
@ -95,7 +94,7 @@ class OrganizationTeam(ApiResource):
return team_view(orgname, team), 200
abort(403)
raise Unauthorized()
@nickname('deleteOrganizationTeam')
def delete(self, orgname, teamname):
@ -106,7 +105,7 @@ class OrganizationTeam(ApiResource):
log_action('org_delete_team', orgname, {'team': teamname})
return 'Deleted', 204
abort(403)
raise Unauthorized()
@resource('/v1/organization/<orgname>/team/<teamname>/members')
@ -123,7 +122,7 @@ class TeamMemberList(ApiResource):
try:
team = model.get_organization_team(orgname, teamname)
except model.InvalidTeamException:
abort(404)
raise NotFound()
members = model.get_organization_team_members(team.id)
return {
@ -131,7 +130,7 @@ class TeamMemberList(ApiResource):
'can_edit': edit_permission.can()
}
abort(403)
raise Unauthorized()
@resource('/v1/organization/<orgname>/team/<teamname>/members/<membername>')
@ -149,19 +148,19 @@ class TeamMember(ApiResource):
try:
team = model.get_organization_team(orgname, teamname)
except model.InvalidTeamException:
abort(404)
raise NotFound()
# Find the user.
user = model.get_user(membername)
if not user:
return request_error(message='Unknown user')
raise request_error(message='Unknown user')
# Add the user to the team.
model.add_user_to_team(user, team)
log_action('org_add_team_member', orgname, {'member': membername, 'team': teamname})
return member_view(user)
abort(403)
raise Unauthorized()
@nickname('deleteOrganizationTeamMember')
def delete(self, orgname, teamname, membername):
@ -174,4 +173,4 @@ class TeamMember(ApiResource):
log_action('org_remove_team_member', orgname, {'member': membername, 'team': teamname})
return 'Deleted', 204
abort(403)
raise Unauthorized()