setPassword.pug 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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. )
  46. input(
  47. type="hidden",
  48. name="passwordResetToken",
  49. value=passwordResetToken
  50. )
  51. .actions
  52. button.btn.btn-primary(
  53. type='submit',
  54. data-ol-disabled-inflight
  55. aria-label=translate('set_new_password')
  56. )
  57. span(data-ol-inflight="idle")
  58. | #{translate('set_new_password')}
  59. span(hidden data-ol-inflight="pending")
  60. | #{translate('set_new_password')}…