From 6276321f45c9aceefbb3373b91c56c332779ba18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Mungu=C3=ADa?= Date: Tue, 20 Feb 2018 05:59:00 -0600 Subject: [PATCH] feat(challenges): Call updateSuccessMessage action (#16742) Called updateSuccessMessage passing it a random compliment each time the challenge is mounted/updated Closes #16738 --- common/app/routes/Challenges/Show.jsx | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/common/app/routes/Challenges/Show.jsx b/common/app/routes/Challenges/Show.jsx index a4741a9dfbc..b203a817052 100644 --- a/common/app/routes/Challenges/Show.jsx +++ b/common/app/routes/Challenges/Show.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { connect } from 'react-redux'; import { createSelector } from 'reselect'; -import { challengeMetaSelector } from './redux'; +import { challengeMetaSelector, updateSuccessMessage } from './redux'; import Classic from './views/classic'; import Step from './views/step'; @@ -19,6 +19,7 @@ import { } from '../../redux'; import { makeToast } from '../../Toasts/redux'; import { paramsSelector } from '../../Router/redux'; +import { randomCompliment } from '../../utils/get-words'; const views = { backend: BackEnd, @@ -33,7 +34,8 @@ const views = { const mapDispatchToProps = { fetchChallenge, makeToast, - updateTitle + updateTitle, + updateSuccessMessage }; const mapStateToProps = createSelector( @@ -66,6 +68,7 @@ const propTypes = { lang: PropTypes.string.isRequired }), title: PropTypes.string, + updateSuccessMessage: PropTypes.func.isRequired, updateTitle: PropTypes.func.isRequired, viewType: PropTypes.string }; @@ -86,6 +89,7 @@ export class Show extends PureComponent { componentDidMount() { this.props.updateTitle(this.props.title); + this.props.updateSuccessMessage(randomCompliment()); if (this.isNotTranslated(this.props)) { this.makeTranslateToast(); } @@ -96,11 +100,11 @@ export class Show extends PureComponent { this.props.updateTitle(nextProps.title); } const { params: { dashedName } } = nextProps; - if ( - this.props.params.dashedName !== dashedName && - this.isNotTranslated(nextProps) - ) { - this.makeTranslateToast(); + if (this.props.params.dashedName !== dashedName) { + this.props.updateSuccessMessage(randomCompliment()); + if (this.isNotTranslated(nextProps)) { + this.makeTranslateToast(); + } } }