MCPcopy
hub / github.com/diffgram/diffgram / builder_enable_api

Function builder_enable_api

default/methods/user/builder/builder_signup.py:18–90  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

16@limiter.limit("10 per day")
17@General_permissions.grant_permission_for(['normal_user'])
18def builder_enable_api():
19 user_email = None
20
21 with sessionMaker.session_scope() as session:
22
23 log = {}
24 log['success'] = False
25 log['error'] = {}
26
27 data = request.get_json(force = True) # Force = true if not set as application/json'
28
29 user = User.get(session)
30
31 # TODO test mode to disable this check
32
33 # if user.api_enabled_builder is True:
34 # log['error']['general'] = "Already enabled."
35 # return jsonify(log = log), 200
36
37 first_name = data.get('first_name', None)
38 last_name = data.get('last_name', None)
39 # phone_number = data.get('phone_number', None)
40 how_hear_about_us = data.get('how_hear_about_us', None)
41 city = data.get('city', None)
42 company = data.get('company', None)
43 how_many_data_labelers = data.get('how_many_data_labelers')
44
45
46 # TODO shared validation with update / edit methods
47 # if not account_edit.valid_name()
48
49 if not first_name:
50 log['error']['first_name'] = "Please provide your first name"
51
52 if not last_name:
53 log['error']['last_name'] = "Please provide your last name"
54
55 # if not phone_number:
56 # log['error']['phone_number'] = "Please provide your phone number"
57
58 if not city:
59 log['error']['city'] = "Please provide your city"
60
61 if not company:
62 log['error']['company'] = "Please provide your company name"
63
64 if not first_name or not last_name or not city or not company:
65 return jsonify(log = log), 200
66
67 # TODO validation
68
69 session.add(user)
70
71 # User update
72 user.first_name = first_name
73 user.last_name = last_name
74 # user.phone_number = phone_number
75 user.how_hear_about_us = how_hear_about_us

Callers

nothing calls this directly

Calls 4

builder_enable_coreFunction · 0.85
getMethod · 0.45
addMethod · 0.45
serializeMethod · 0.45

Tested by

no test coverage detected