Seiya Tashiro 7 лет назад
Родитель
Сommit
6c7acb2b75
2 измененных файлов с 11 добавлено и 3 удалено
  1. 7 2
      src/server/routes/admin.js
  2. 4 1
      src/server/views/admin/users.html

+ 7 - 2
src/server/routes/admin.js

@@ -469,10 +469,14 @@ module.exports = function(crowi, app) {
 
   actions.user = {};
   actions.user.index = function(req, res) {
-    const userUpperLimit = crowi.env['USER_UPPER_LIMIT'];
+    const userUpperLimit = Number(crowi.env['USER_UPPER_LIMIT']);
     User.findAllUsers({status: User.statusActivate})
     .then(userData => {
       const activeUsers = userData.length;
+      let isUserUpperLimitError = false;
+      if (userUpperLimit !== 0 && userUpperLimit <= activeUsers) {
+        isUserUpperLimitError = true;
+      }
       var page = parseInt(req.query.page) || 1;
 
       User.findUsersWithPagination({page: page}, function(err, result) {
@@ -482,7 +486,8 @@ module.exports = function(crowi, app) {
           users: result.docs,
           pager: pager,
           activeUsers: activeUsers,
-          userUpperLimit: userUpperLimit
+          userUpperLimit: userUpperLimit,
+          isUserUpperLimitError: isUserUpperLimitError
         });
       });
     });

+ 4 - 1
src/server/views/admin/users.html

@@ -33,7 +33,7 @@
 
     <div class="col-md-9">
       <p>
-        <button data-toggle="collapse" class="btn btn-default" href="#inviteUserForm">
+        <button data-toggle="collapse" class="btn btn-default" href="#inviteUserForm" {% if isUserUpperLimitError === true %}disabled{% endif %}>
           {{ t("user_management.invite_users") }}
         </button>
         <a class="btn btn-default btn-outline" href="/admin/users/external-accounts">
@@ -41,6 +41,9 @@
           {{ t("user_management.external_account") }}
         </a>
       </p>
+      {% if isUserUpperLimitError === true %}
+      <p>{{ t('user_management.cannot_invite_maximum_users') }}</p>
+      {% endif %}
       <form role="form" action="/admin/user/invite" method="post">
         <div id="inviteUserForm" class="collapse">
           <div class="form-group">