overleaf/services/web/app/views/user/reconfirm.pug
Jessica Lawshe d812a73d93 Merge pull request #16656 from overleaf/mf-fix-recaptcha-reconfirm-password-reset
[web] Fix recaptcha flow on reconfirm page and password reset page

GitOrigin-RevId: 45e07a283d6f978c808a7785cf21487b8a7f6ada
2024-01-24 09:04:31 +00:00

70 lines
2.3 KiB
Text

extends ../layout-marketing
include ../_mixins/recaptcha
block content
- var email = reconfirm_email ? reconfirm_email : ""
- var showCaptcha = settings.recaptcha && settings.recaptcha.siteKey && !(settings.recaptcha.disabled && settings.recaptcha.disabled.passwordReset)
if showCaptcha
script(type="text/javascript", nonce=scriptNonce, src="https://www.recaptcha.net/recaptcha/api.js?render=explicit")
div(
id="recaptcha"
class="g-recaptcha"
data-sitekey=settings.recaptcha.siteKey
data-size="invisible"
data-badge="inline"
)
main.content.content-alt#main-content(data-ol-captcha-retry-trigger-area="")
.container
.row
.col-sm-12.col-md-6.col-md-offset-3
.card
h1.card-header.text-capitalize #{translate("reconfirm")} #{translate("Account")}
p #{translate('reconfirm_explained')} 
a(href=`mailto:${settings.adminEmail}`, ng-non-bindable) #{settings.adminEmail}
| .
form(
data-ol-async-form
name="reconfirmAccountForm"
action="/user/reconfirm",
method="POST",
aria-label=translate('request_reconfirmation_email')
captcha=(showCaptcha ? '' : false),
captcha-action-name=(showCaptcha ? "passwordReset" : false)
)
div(data-ol-not-sent)
+formMessages()
input(type="hidden", name="_csrf", value=csrfToken)
.form-group
label(for='email') #{translate("please_enter_email")}
input.form-control(
aria-label="email"
type='email',
name='email',
placeholder='email@example.com',
required,
autofocus
value=email
)
.actions
button.btn.btn-primary(
type='submit',
data-ol-disabled-inflight,
aria-label=translate('request_password_reset_to_reconfirm')
)
span(data-ol-inflight="idle")
| #{translate('request_password_reset_to_reconfirm')}
span(hidden data-ol-inflight="pending")
| #{translate('request_password_reset_to_reconfirm')}…
div(hidden data-ol-sent)
div.alert.alert-success(
role="alert"
aria-live="polite"
)
span #{translate('password_reset_email_sent')}
.row
.col-sm-12.col-md-6.col-md-offset-3
if showCaptcha
+recaptchaConditions