passwordReset.pug 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. extends ../layout-marketing
  2. include ../_mixins/recaptcha
  3. block vars
  4. - metadata = { viewport: true }
  5. block content
  6. - var showCaptcha = settings.recaptcha && settings.recaptcha.siteKey && !(settings.recaptcha.disabled && settings.recaptcha.disabled.passwordReset)
  7. if showCaptcha
  8. script(type="text/javascript", nonce=scriptNonce, src="https://www.recaptcha.net/recaptcha/api.js?render=explicit")
  9. div(
  10. id="recaptcha"
  11. class="g-recaptcha"
  12. data-sitekey=settings.recaptcha.siteKey
  13. data-size="invisible"
  14. data-badge="inline"
  15. )
  16. main.content.content-alt#main-content
  17. .container
  18. .row
  19. .col-md-6.col-md-offset-3.col-lg-4.col-lg-offset-4
  20. .card
  21. .page-header
  22. h1 #{translate("password_reset")}
  23. .messageArea
  24. form(
  25. data-ol-async-form
  26. name="passwordResetForm"
  27. action="/user/password/reset",
  28. method="POST",
  29. captcha=(showCaptcha ? '' : false),
  30. captcha-action-name=(showCaptcha ? "passwordReset" : false),
  31. )
  32. +formMessages()
  33. input(type="hidden", name="_csrf", value=csrfToken)
  34. .form-group
  35. label(for='email') #{translate("please_enter_email")}
  36. input.form-control#email(
  37. aria-label="email"
  38. type='email',
  39. name='email',
  40. placeholder='email@example.com',
  41. required,
  42. autocomplete="username",
  43. autofocus
  44. )
  45. .actions
  46. button.btn.btn-primary(
  47. type='submit',
  48. data-ol-disabled-inflight,
  49. aria-label=translate('request_password_reset_to_reconfirm')
  50. )
  51. span(data-ol-inflight="idle")
  52. | #{translate("request_password_reset")}
  53. span(hidden data-ol-inflight="pending")
  54. | #{translate("requesting_password_reset")}…
  55. .row
  56. .col-md-6.col-md-offset-3.col-lg-4.col-lg-offset-4
  57. if showCaptcha
  58. +recaptchaConditions