From 091e5b8e03d6e0f107a0f70e1d918b753c52ae20 Mon Sep 17 00:00:00 2001 From: Carlos Tadeu Panato Junior Date: Thu, 17 Nov 2016 15:25:11 +0100 Subject: PLT-4572 - Move instances of Client.updateUser() in components to an action (#4571) * Move instances of Client.updateUser() in components to an action --- webapp/actions/user_actions.jsx | 18 ++++++++++++++++++ webapp/components/user_settings/manage_languages.jsx | 5 ++--- .../components/user_settings/user_settings_general.jsx | 3 ++- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/webapp/actions/user_actions.jsx b/webapp/actions/user_actions.jsx index 304d36a62..5d07bed14 100644 --- a/webapp/actions/user_actions.jsx +++ b/webapp/actions/user_actions.jsx @@ -317,6 +317,24 @@ export function autocompleteUsersInTeam(username, success, error) { ); } +export function updateUser(username, success, error) { + Client.updateUser( + username, + (data) => { + if (success) { + success(data); + } + }, + (err) => { + AsyncClient.dispatchError(err, 'updateUser'); + + if (error) { + error(err); + } + } + ); +} + export function generateMfaSecret(success, error) { Client.generateMfaSecret( (data) => { diff --git a/webapp/components/user_settings/manage_languages.jsx b/webapp/components/user_settings/manage_languages.jsx index f4ae79088..4f5eb223d 100644 --- a/webapp/components/user_settings/manage_languages.jsx +++ b/webapp/components/user_settings/manage_languages.jsx @@ -3,13 +3,12 @@ import SettingItemMax from '../setting_item_max.jsx'; -import Client from 'client/web_client.jsx'; import * as I18n from 'i18n/i18n.jsx'; import * as GlobalActions from 'actions/global_actions.jsx'; import Constants from 'utils/constants.jsx'; import {FormattedMessage, FormattedHTMLMessage} from 'react-intl'; - +import {updateUser} from 'actions/user_actions.jsx'; import React from 'react'; export default class ManageLanguage extends React.Component { @@ -42,7 +41,7 @@ export default class ManageLanguage extends React.Component { this.submitUser(user); } submitUser(user) { - Client.updateUser(user, Constants.UserUpdateEvents.LANGUAGE, + updateUser(user, Constants.UserUpdateEvents.LANGUAGE, () => { GlobalActions.newLocalizationSelected(user.locale); }, diff --git a/webapp/components/user_settings/user_settings_general.jsx b/webapp/components/user_settings/user_settings_general.jsx index e794c4d4b..b99ddd16e 100644 --- a/webapp/components/user_settings/user_settings_general.jsx +++ b/webapp/components/user_settings/user_settings_general.jsx @@ -15,6 +15,7 @@ import * as AsyncClient from 'utils/async_client.jsx'; import * as Utils from 'utils/utils.jsx'; import {intlShape, injectIntl, defineMessages, FormattedMessage, FormattedHTMLMessage, FormattedDate} from 'react-intl'; +import {updateUser} from 'actions/user_actions.jsx'; const holders = defineMessages({ usernameReserved: { @@ -187,7 +188,7 @@ class UserSettingsGeneralTab extends React.Component { } submitUser(user, type, emailUpdated) { - Client.updateUser(user, type, + updateUser(user, type, () => { this.updateSection(''); AsyncClient.getMe(); -- cgit v1.2.3-1-g7c22