kaori 4 лет назад
Родитель
Сommit
7e26029065

+ 2 - 1
resource/locales/en_US/translation.json

@@ -855,6 +855,7 @@
     "new_password": "New Password",
     "confirm_new_password": "Confirm the new password",
     "email_is_required": "Email is required",
-    "success_to_send_email": "Success to send email"
+    "success_to_send_email": "Success to send email",
+    "incorrect_token_or_expired_url":"The token is incorrect or the URL has expired. Please reissue the link from the password reset page."
   }
 }

+ 2 - 1
resource/locales/ja_JP/translation.json

@@ -849,6 +849,7 @@
     "new_password": "新しいパスワード",
     "confirm_new_password": "新しいパスワードの確認",
     "email_is_required": "メールを入力してください",
-    "success_to_send_email": "メールを送信しました"
+    "success_to_send_email": "メールを送信しました",
+    "incorrect_token_or_expired_url":"トークンが正しくないか、URLの期限が切れています。パスワードリセットページからリンクを再発行してください。"
   }
 }

+ 2 - 1
resource/locales/zh_CN/translation.json

@@ -860,6 +860,7 @@
     "new_password": "新密码",
     "confirm_new_password": "确认新密码",
     "email_is_required": "电子邮件是必需的",
-    "success_to_send_email": "我发了一封电子邮件"
+    "success_to_send_email": "我发了一封电子邮件",
+    "incorrect_token_or_expired_url":"令牌不正确或 URL 已过期。请重新发出密码重置页面中的链接"
   }
 }

+ 1 - 1
src/server/middlewares/password-reset.js

@@ -11,7 +11,7 @@ module.exports = (crowi, app) => {
     const passwordResetOrder = await PasswordResetOrder.findOne({ token });
     // check the oneTimeToken is valid
     if (passwordResetOrder == null || passwordResetOrder.isExpired()) {
-      return res.redirect('/login');
+      return res.redirect('/login/error/passwordResetOrder');
     }
 
     req.DataFromPasswordResetOrderMiddleware = passwordResetOrder;

+ 4 - 0
src/server/views/login/error.html

@@ -37,6 +37,10 @@
         <div class="alert alert-success">
           <h2>{{ t('login.Registration successful') }}</h2>
         </div>
+        {% elseif reason === 'passwordResetOrder' %}
+        <div class="alert alert-warning">
+            <h2>{{ t('forgot_password.incorrect_token_or_expired_url') }}</h2>
+        </div>
         {% else %}
         <div class="alert alert-warning">
             <h2>{{ t('login.Sign in error') }}</h2>