Add ability to create a new organization

This commit is contained in:
Joseph Schorr 2013-11-07 15:19:52 -05:00
parent 70c02eae16
commit 44f1ff0ef1
8 changed files with 373 additions and 62 deletions

View file

@ -282,6 +282,37 @@ def team_view(orgname, t):
}
@app.route('/api/organization/', methods=['POST'])
@required_json_args('name', 'email')
@api_login_required
def create_organization_api():
org_data = request.get_json()
existing = None
try:
existing = model.get_organization(org_data['name']) or model.get_user(org_data['name'])
except:
pass
if existing:
error_resp = jsonify({
'message': 'A user or organization with this name already exists'
})
error_resp.status_code = 400
return error_resp
try:
organization = model.create_organization(org_data['name'], org_data['email'],
current_user.db_user())
return make_response('Created', 201)
except model.DataModelException as ex:
error_resp = jsonify({
'message': ex.message,
})
error_resp.status_code = 400
return error_resp
@app.route('/api/organization/<orgname>', methods=['GET'])
@api_login_required
def get_organization(orgname):