Add ability for users to change their name and company information

This commit is contained in:
Joseph Schorr 2017-09-26 16:58:04 -04:00
parent ad61df66c5
commit 82ff85b125
3 changed files with 67 additions and 10 deletions

View file

@ -132,6 +132,9 @@ def user_view(user, previous_username=None):
'preferred_namespace': not (user.stripe_id is None),
'tag_expiration_s': user.removed_tag_expiration_s,
'prompts': model.user.get_user_prompts(user),
'company': user.company,
'family_name': user.family_name,
'given_name': user.given_name,
})
analytics_metadata = user_analytics.get_user_analytics_metadata(user)
@ -358,16 +361,17 @@ class User(ApiResource):
ua_future.add_done_callback(build_error_callback('Change email failed'))
model.user.update_email(user, new_email, auto_verify=not features.MAILING)
if 'given_name' in user_data or 'family_name' in user_data or 'company' in user_data:
model.user.update_user_metadata(user, user_data.get('given_name'),
user_data.get('family_name'), user_data.get('company'))
ua_mdata_future = user_analytics.change_metadata(
user.email,
user_data.get('given_name'),
user_data.get('family_name'),
user_data.get('company'),
)
ua_mdata_future.add_done_callback(build_error_callback('Change metadata failed'))
if features.USER_METADATA:
if 'given_name' in user_data or 'family_name' in user_data or 'company' in user_data:
model.user.update_user_metadata(user, user_data.get('given_name'),
user_data.get('family_name'), user_data.get('company'))
ua_mdata_future = user_analytics.change_metadata(
user.email,
user_data.get('given_name'),
user_data.get('family_name'),
user_data.get('company'),
)
ua_mdata_future.add_done_callback(build_error_callback('Change metadata failed'))
# Check for username rename. A username can be renamed if the feature is enabled OR the user
# currently has a confirm_username prompt.