[FIX] Team creation not raising error if something unexpected happens (#3152)

* [IMPROVEMENT] Add error to AddExistingChannel

* Fix the alert error when create a channel

* Fix the error alert box when create channel and teams

Co-authored-by: Diego Mello <diegolmello@gmail.com>
This commit is contained in:
Reinaldo Neto 2021-05-27 14:27:24 -03:00 committed by GitHub
parent 0bbeb42271
commit 981b3688f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 12 additions and 7 deletions

View File

@ -14,9 +14,10 @@ export function createChannelSuccess(data) {
}; };
} }
export function createChannelFailure(err) { export function createChannelFailure(err, isTeam) {
return { return {
type: types.CREATE_CHANNEL.FAILURE, type: types.CREATE_CHANNEL.FAILURE,
err err,
isTeam
}; };
} }

View File

@ -61,6 +61,7 @@
"error-message-editing-blocked": "Message editing is blocked", "error-message-editing-blocked": "Message editing is blocked",
"error-message-size-exceeded": "Message size exceeds Message_MaxAllowedSize", "error-message-size-exceeded": "Message size exceeds Message_MaxAllowedSize",
"error-missing-unsubscribe-link": "You must provide the [unsubscribe] link.", "error-missing-unsubscribe-link": "You must provide the [unsubscribe] link.",
"error-no-owner-channel":"You don't own the channel",
"error-no-tokens-for-this-user": "There are no tokens for this user", "error-no-tokens-for-this-user": "There are no tokens for this user",
"error-not-allowed": "Not allowed", "error-not-allowed": "Not allowed",
"error-not-authorized": "Not authorized", "error-not-authorized": "Not authorized",

View File

@ -667,5 +667,6 @@
"Teams": "Times", "Teams": "Times",
"No_team_channels_found": "Nenhum canal encontrado", "No_team_channels_found": "Nenhum canal encontrado",
"Team_not_found": "Time não encontrado", "Team_not_found": "Time não encontrado",
"Private_Team": "Equipe Privada" "Private_Team": "Equipe Privada",
"Add_Existing_Channel": "Adicionar Canal Existente"
} }

View File

@ -96,7 +96,7 @@ const handleRequest = function* handleRequest({ data }) {
yield put(createChannelSuccess(sub)); yield put(createChannelSuccess(sub));
} catch (err) { } catch (err) {
logEvent(events[data.group ? 'SELECTED_USERS_CREATE_GROUP_F' : 'CR_CREATE_F']); logEvent(events[data.group ? 'SELECTED_USERS_CREATE_GROUP_F' : 'CR_CREATE_F']);
yield put(createChannelFailure(err)); yield put(createChannelFailure(err, data.isTeam));
} }
}; };
@ -108,10 +108,10 @@ const handleSuccess = function* handleSuccess({ data }) {
goRoom({ item: data, isMasterDetail }); goRoom({ item: data, isMasterDetail });
}; };
const handleFailure = function handleFailure({ err }) { const handleFailure = function handleFailure({ err, isTeam }) {
setTimeout(() => { setTimeout(() => {
const msg = err.data ? I18n.t(err.data.error) : err.reason || I18n.t('There_was_an_error_while_action', { action: I18n.t('creating_channel') }); const msg = err.data.errorType ? I18n.t(err.data.errorType, { room_name: err.data.details.channel_name }) : err.reason || I18n.t('There_was_an_error_while_action', { action: isTeam ? I18n.t('creating_team') : I18n.t('creating_channel') });
showErrorAlert(msg); showErrorAlert(msg, isTeam ? I18n.t('Create_Team') : I18n.t('Create_Channel'));
}, 300); }, 300);
}; };

View File

@ -20,6 +20,7 @@ import SafeAreaView from '../containers/SafeAreaView';
import Loading from '../containers/Loading'; import Loading from '../containers/Loading';
import { animateNextTransition } from '../utils/layoutAnimation'; import { animateNextTransition } from '../utils/layoutAnimation';
import { goRoom } from '../utils/goRoom'; import { goRoom } from '../utils/goRoom';
import { showErrorAlert } from '../utils/info';
import debounce from '../utils/debounce'; import debounce from '../utils/debounce';
const QUERY_SIZE = 50; const QUERY_SIZE = 50;
@ -125,6 +126,7 @@ class AddExistingChannelView extends React.Component {
goRoom({ item: result, isMasterDetail }); goRoom({ item: result, isMasterDetail });
} }
} catch (e) { } catch (e) {
showErrorAlert(I18n.t(e.data.error), I18n.t('Add_Existing_Channel'), () => {});
logEvent(events.CT_ADD_ROOM_TO_TEAM_F); logEvent(events.CT_ADD_ROOM_TO_TEAM_F);
this.setState({ loading: false }); this.setState({ loading: false });
} }