extends ../layout include ../_mixins/recaptcha block vars - metadata = { viewport: true } block content - 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 .container .row .col-md-6.col-md-offset-3.col-lg-4.col-lg-offset-4 .card .page-header h1 #{translate("password_reset")} .messageArea form( async-form="password-reset-request", name="passwordResetForm" action="/user/password/reset", method="POST", captcha=(showCaptcha ? '' : false), captcha-action-name=(showCaptcha ? "passwordReset" : false), ng-cloak ) input(type="hidden", name="_csrf", value=csrfToken) form-messages(for="passwordResetForm" role="alert") .form-group label(for='email') #{translate("please_enter_email")} input.form-control#email( type='email', name='email', placeholder='email@example.com', required, autocomplete="username", ng-model="email", autofocus ) span.small.text-primary( ng-show="passwordResetForm.email.$invalid && passwordResetForm.email.$dirty" ) #{translate("must_be_email_address")} .actions button.btn.btn-primary( type='submit', ng-disabled="passwordResetForm.$invalid || passwordResetForm.inflight" ) span(ng-hide="passwordResetForm.inflight") #{translate("request_password_reset")} span(ng-show="passwordResetForm.inflight") #{translate("requesting_password_reset")}… .row .col-md-6.col-md-offset-3.col-lg-4.col-lg-offset-4 if showCaptcha +recaptchaConditions