setPassword.pug 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. extends ../layout-marketing
  2. block content
  3. main.content.content-alt#main-content
  4. .container
  5. .row
  6. .col-md-6.col-md-offset-3.col-lg-4.col-lg-offset-4
  7. .card
  8. .page-header
  9. h1 #{translate("reset_your_password")}
  10. form(
  11. data-ol-async-form,
  12. name="passwordResetForm",
  13. action="/user/password/set",
  14. method="POST",
  15. )
  16. div(data-ol-not-sent)
  17. +formMessages()
  18. +customFormMessage('token-expired', 'danger')
  19. | #{translate('password_reset_token_expired')}
  20. br
  21. a(href="/user/password/reset")
  22. | #{translate('request_new_password_reset_email')}
  23. +customFormMessage('invalid-password', 'danger')
  24. | #{translate('invalid_password')}
  25. div.alert.alert-success(
  26. hidden
  27. role="alert"
  28. aria-live="assertive"
  29. data-ol-sent
  30. )
  31. | #{translate("password_has_been_reset")}.
  32. br
  33. a(href='/login') #{translate("login_here")}
  34. input(type="hidden", name="_csrf", value=csrfToken)
  35. input(type="hidden", name="email", value=email)
  36. .form-group
  37. input.form-control#passwordField(
  38. type='password',
  39. name='password',
  40. placeholder='new password',
  41. autocomplete="new-password",
  42. autofocus,
  43. required,
  44. minlength=settings.passwordStrengthOptions.length.min,
  45. maxlength=settings.passwordStrengthOptions.length.max
  46. )
  47. input(
  48. type="hidden",
  49. name="passwordResetToken",
  50. value=passwordResetToken
  51. )
  52. .actions
  53. button.btn.btn-primary(
  54. type='submit',
  55. data-ol-disabled-inflight
  56. aria-label=translate('set_new_password')
  57. )
  58. span(data-ol-inflight="idle")
  59. | #{translate('set_new_password')}
  60. span(hidden data-ol-inflight="pending")
  61. | #{translate('set_new_password')}…