Merge pull request #739 from rgarmsen2295/plt-39
PLT-39 Clicking "Resend email" on the verification page now confirms email was sent
Этот коммит содержится в:
@@ -10,12 +10,14 @@ export default class EmailVerify extends React.Component {
|
|||||||
this.state = {};
|
this.state = {};
|
||||||
}
|
}
|
||||||
handleResend() {
|
handleResend() {
|
||||||
window.location.href = window.location.href + '&resend=true';
|
const newAddress = window.location.href.replace('&resend_success=true', '');
|
||||||
|
window.location.href = newAddress + '&resend=true';
|
||||||
}
|
}
|
||||||
render() {
|
render() {
|
||||||
var title = '';
|
var title = '';
|
||||||
var body = '';
|
var body = '';
|
||||||
var resend = '';
|
var resend = '';
|
||||||
|
var resendConfirm = '';
|
||||||
if (this.props.isVerified === 'true') {
|
if (this.props.isVerified === 'true') {
|
||||||
title = global.window.config.SiteName + ' Email Verified';
|
title = global.window.config.SiteName + ' Email Verified';
|
||||||
body = <p>Your email has been verified! Click <a href={this.props.teamURL + '?email=' + this.props.userEmail}>here</a> to log in.</p>;
|
body = <p>Your email has been verified! Click <a href={this.props.teamURL + '?email=' + this.props.userEmail}>here</a> to log in.</p>;
|
||||||
@@ -30,6 +32,9 @@ export default class EmailVerify extends React.Component {
|
|||||||
Resend Email
|
Resend Email
|
||||||
</button>
|
</button>
|
||||||
);
|
);
|
||||||
|
if (this.props.resendSuccess) {
|
||||||
|
resendConfirm = <div><br /><p className='alert alert-success'><i className='fa fa-check'></i>{' Verification email sent.'}</p></div>;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -41,6 +46,7 @@ export default class EmailVerify extends React.Component {
|
|||||||
<div className='panel-body'>
|
<div className='panel-body'>
|
||||||
{body}
|
{body}
|
||||||
{resend}
|
{resend}
|
||||||
|
{resendConfirm}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -51,10 +57,12 @@ export default class EmailVerify extends React.Component {
|
|||||||
EmailVerify.defaultProps = {
|
EmailVerify.defaultProps = {
|
||||||
isVerified: 'false',
|
isVerified: 'false',
|
||||||
teamURL: '',
|
teamURL: '',
|
||||||
userEmail: ''
|
userEmail: '',
|
||||||
|
resendSuccess: 'false'
|
||||||
};
|
};
|
||||||
EmailVerify.propTypes = {
|
EmailVerify.propTypes = {
|
||||||
isVerified: React.PropTypes.string,
|
isVerified: React.PropTypes.string,
|
||||||
teamURL: React.PropTypes.string,
|
teamURL: React.PropTypes.string,
|
||||||
userEmail: React.PropTypes.string
|
userEmail: React.PropTypes.string,
|
||||||
|
resendSuccess: React.PropTypes.string
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ global.window.setupVerifyPage = function setupVerifyPage(props) {
|
|||||||
isVerified={props.IsVerified}
|
isVerified={props.IsVerified}
|
||||||
teamURL={props.TeamURL}
|
teamURL={props.TeamURL}
|
||||||
userEmail={props.UserEmail}
|
userEmail={props.UserEmail}
|
||||||
|
resendSuccess={props.ResendSuccess}
|
||||||
/>,
|
/>,
|
||||||
document.getElementById('verify')
|
document.getElementById('verify')
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -359,6 +359,7 @@ func getChannel(c *api.Context, w http.ResponseWriter, r *http.Request) {
|
|||||||
|
|
||||||
func verifyEmail(c *api.Context, w http.ResponseWriter, r *http.Request) {
|
func verifyEmail(c *api.Context, w http.ResponseWriter, r *http.Request) {
|
||||||
resend := r.URL.Query().Get("resend")
|
resend := r.URL.Query().Get("resend")
|
||||||
|
resendSuccess := r.URL.Query().Get("resend_success")
|
||||||
name := r.URL.Query().Get("teamname")
|
name := r.URL.Query().Get("teamname")
|
||||||
email := r.URL.Query().Get("email")
|
email := r.URL.Query().Get("email")
|
||||||
hashedId := r.URL.Query().Get("hid")
|
hashedId := r.URL.Query().Get("hid")
|
||||||
@@ -379,7 +380,9 @@ func verifyEmail(c *api.Context, w http.ResponseWriter, r *http.Request) {
|
|||||||
} else {
|
} else {
|
||||||
user := result.Data.(*model.User)
|
user := result.Data.(*model.User)
|
||||||
api.FireAndForgetVerifyEmail(user.Id, user.Email, team.Name, team.DisplayName, c.GetSiteURL(), c.GetTeamURLFromTeam(team))
|
api.FireAndForgetVerifyEmail(user.Id, user.Email, team.Name, team.DisplayName, c.GetSiteURL(), c.GetTeamURLFromTeam(team))
|
||||||
http.Redirect(w, r, "/", http.StatusFound)
|
|
||||||
|
newAddress := strings.Replace(r.URL.String(), "&resend=true", "&resend_success=true", -1)
|
||||||
|
http.Redirect(w, r, newAddress, http.StatusFound)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -404,6 +407,7 @@ func verifyEmail(c *api.Context, w http.ResponseWriter, r *http.Request) {
|
|||||||
page.Props["IsVerified"] = isVerified
|
page.Props["IsVerified"] = isVerified
|
||||||
page.Props["TeamURL"] = c.GetTeamURLFromTeam(team)
|
page.Props["TeamURL"] = c.GetTeamURLFromTeam(team)
|
||||||
page.Props["UserEmail"] = email
|
page.Props["UserEmail"] = email
|
||||||
|
page.Props["ResendSuccess"] = resendSuccess
|
||||||
page.Render(c, w)
|
page.Render(c, w)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user