itizawa 6 лет назад
Родитель
Сommit
49fbf1d75e

+ 1 - 0
resource/locales/en-US/translation.json

@@ -498,6 +498,7 @@
       "enable_local": "enable ID/Password"
     },
     "ldap": {
+      "enable_ldap": "enable LDAP",
       "server_url_detail": "The LDAP URL of the directory service in the format <code>ldap://host:port/DN</code> or <code>ldaps://host:port/DN</code>.",
       "bind_mode": "Binding Mode",
       "bind_manager": "Manager Bind",

+ 1 - 0
resource/locales/ja/translation.json

@@ -493,6 +493,7 @@
       "enable_local": "ID/Password を有効にする"
     },
     "ldap": {
+      "enable_ldap": "LDAP を有効にする",
       "server_url_detail": "LDAP URLを <code>ldap://host:port/DN</code> または <code>ldaps://host:port/DN</code> の形式で入力してください。",
       "bind_mode": "Bind モード",
       "bind_manager": "管理者 Bind",

+ 18 - 1
src/client/js/components/Admin/Security/SecurityLdapSetting.jsx

@@ -10,7 +10,7 @@ import AdminSecurityContainer from '../../../services/AdminSecurityContainer';
 class SecurityLdapSetting extends React.Component {
 
   render() {
-    const { t } = this.props;
+    const { t, adminSecurityContainer } = this.props;
 
     return (
       <React.Fragment>
@@ -19,6 +19,23 @@ class SecurityLdapSetting extends React.Component {
           LDAP { t('security_setting.configuration') }
         </h2>
 
+        <div className="row mb-5">
+          <strong className="col-xs-3 text-right">Use LDAP</strong>
+          <div className="col-xs-6 text-left">
+            <div className="checkbox checkbox-success">
+              <input
+                id="isLdapEnabled"
+                type="checkbox"
+                checked={adminSecurityContainer.state.isLdapEnabled}
+                onChange={() => { adminSecurityContainer.switchIsLdapEnabled() }}
+              />
+              <label htmlFor="isLdapEnabled">
+                { t('security_setting.ldap.enable_ldap') }
+              </label>
+            </div>
+          </div>
+        </div>
+
       </React.Fragment>
     );
   }

+ 9 - 0
src/client/js/services/AdminSecurityContainer.js

@@ -22,12 +22,14 @@ export default class AdminSecurityContainer extends Container {
       isLocalEnabled: true,
       registrationMode: 'open',
       registrationWhiteList: '',
+      isLdapEnabled: true,
     };
 
     this.init();
 
     this.switchIsLocalEnabled = this.switchIsLocalEnabled.bind(this);
     this.changeRegistrationMode = this.changeRegistrationMode.bind(this);
+    this.switchIsLdapEnabled = this.switchIsLdapEnabled.bind(this);
   }
 
   init() {
@@ -56,4 +58,11 @@ export default class AdminSecurityContainer extends Container {
     this.setState({ registrationMode: value });
   }
 
+  /**
+   * Switch local enabled
+   */
+  switchIsLdapEnabled() {
+    this.setState({ isLdapEnabled: !this.state.isLdapEnabled });
+  }
+
 }