extends ../layout block content main.content.content-alt .container .row .col-md-6.col-md-offset-3.col-lg-4.col-lg-offset-4 .card .page-header h1 #{translate("reset_your_password")} form( async-form="password-reset", name="passwordResetForm", action="/user/password/set", method="POST", ng-cloak ) input(type="hidden", name="_csrf", value=csrfToken) .alert.alert-success(ng-show="passwordResetForm.response.success") | #{translate("password_has_been_reset")}. a(href='/login') #{translate("login_here")} div(ng-show="passwordResetForm.response.error == true") div(ng-switch="passwordResetForm.response.status") .alert.alert-danger(ng-switch-when="404") | #{translate('password_reset_token_expired')} br a(href="/user/password/reset") | Request a new password reset email .alert.alert-danger(ng-switch-when="400") | #{translate('invalid_password')} .alert.alert-danger(ng-switch-default) | #{translate('error_performing_request')} .form-group input.form-control#passwordField( type='password', name='password', placeholder='new password', required, ng-model="password", autofocus, complex-password ) span.small.text-primary(ng-show="passwordResetForm.password.$error.complexPassword", ng-bind-html="complexPasswordErrorMessage") input( type="hidden", name="passwordResetToken", value=passwordResetToken ng-non-bindable ) .actions button.btn.btn-primary( type='submit', ng-disabled="passwordResetForm.$invalid" ) #{translate("set_new_password")} script(type='text/javascript'). window.usersEmail = "#{getReqQueryParam('email')}" window.passwordStrengthOptions = !{StringHelper.stringifyJsonForScript(settings.passwordStrengthOptions || {})}