TsuyoshiSuzukief пре 7 година
родитељ
комит
05a8c65ea8

+ 1 - 1
config/env.dev.js

@@ -9,5 +9,5 @@ module.exports = {
     // 'growi-plugin-pukiwiki-like-linker',
   ],
   // DEV_HTTPS: true,
-  ACL_ENABLE: true,
+  // PUBLIC_WIKI_ONLY: true,
 };

+ 0 - 1
config/env.prod.js

@@ -1,5 +1,4 @@
 module.exports = {
   NODE_ENV: 'production',
   // FORMAT_NODE_LOG: false,
-  ACL_ENABLE: true,
 };

+ 2 - 2
src/client/js/components/SavePageControls.jsx

@@ -43,7 +43,7 @@ class SavePageControls extends React.PureComponent {
     const { t } = this.props;
 
     const config = this.props.crowi.getConfig();
-    const aclEnable = config.isEnabledAcl;
+    const isAclEnabled = config.isAclEnabled;
     const label = this.state.pageId == null ? t('Create') : t('Update');
 
     return (
@@ -59,7 +59,7 @@ class SavePageControls extends React.PureComponent {
         </div>
 
 
-        {aclEnable &&
+        {isAclEnabled &&
           <div className="mr-2">
             <GrantSelector crowi={this.props.crowi}
                 ref={(elem) => {

+ 8 - 6
src/server/models/config.js

@@ -330,7 +330,7 @@ module.exports = function(crowi) {
 
   configSchema.statics.isGuesstAllowedToRead = function(config) {
     // return true if puclic wiki mode
-    if (process.env.ACL_ENABLE === 'false') {
+    if (Config.isPublicWikiOnly(config)) {
       return true;
     }
 
@@ -368,9 +368,12 @@ module.exports = function(crowi) {
 
     return config.markdown[key];
   };
-  configSchema.statics.isEnabledAcl = function(config) {
-    const aclEnable = !(process.env.ACL_ENABLE === 'false');
-    return aclEnable;
+  configSchema.statics.isPublicWikiOnly = function(config) {
+    const publicWikiOnly = process.env.PUBLIC_WIKI_ONLY;
+    if ( publicWikiOnly === 'true' || publicWikiOnly == 1) {
+      return true;
+    }
+    return false;
   };
 
   configSchema.statics.pageBreakSeparator = function(config) {
@@ -636,10 +639,9 @@ module.exports = function(crowi) {
         BLOCKDIAG_URI: env.BLOCKDIAG_URI || null,
         HACKMD_URI: env.HACKMD_URI || null,
         MATHJAX: env.MATHJAX || null,
-        ACL_ENABLE: env.ACL_ENABLE || null,
       },
       recentCreatedLimit: Config.showRecentCreatedNumber(config),
-      isEnabledAcl: Config.isEnabledAcl(config),
+      isAclEnabled: !Config.isPublicWikiOnly(config),
     };
 
     return local_config;

+ 6 - 6
src/server/routes/admin.js

@@ -104,8 +104,8 @@ module.exports = function(crowi, app) {
   actions.security = {};
   actions.security.index = function(req, res) {
     const settingForm = Config.setupCofigFormData('crowi', req.config);
-    const aclEnable = Config.isEnabledAcl(req.config);
-    return res.render('admin/security', { settingForm, aclEnable });
+    const isAclEnabled = !Config.isPublicWikiOnly(req.config);
+    return res.render('admin/security', { settingForm, isAclEnabled });
   };
 
   // app.get('/admin/markdown'                  , admin.markdown.index);
@@ -670,12 +670,12 @@ module.exports = function(crowi, app) {
   actions.userGroup = {};
   actions.userGroup.index = function(req, res) {
     var page = parseInt(req.query.page) || 1;
-    const aclEnable = Config.isEnabledAcl(req.config);
+    const isAclEnabled = !Config.isPublicWikiOnly(req.config);
     var renderVar = {
       userGroups: [],
       userGroupRelations: new Map(),
       pager: null,
-      aclEnable,
+      isAclEnabled,
     };
 
     UserGroup.findUserGroupsWithPagination({ page: page })
@@ -1034,8 +1034,8 @@ module.exports = function(crowi, app) {
   actions.api.securitySetting = function(req, res) {
     const form = req.form.settingForm;
     const config = crowi.getConfig();
-    const aclEnable = Config.isEnabledAcl(config);
-    if (!aclEnable) {
+    const isPublicWikiOnly = Config.isPublicWikiOnly(config);
+    if (isPublicWikiOnly) {
       const basicName = form['security:basicName'];
       const basicSecret = form['security:basicSecret'];
       if (basicName != '' || basicSecret != '') {

+ 3 - 3
src/server/views/admin/security.html

@@ -44,15 +44,15 @@
             <label for="settingForm[security:registrationMode]" class="col-xs-3 control-label">{{ t('Basic authentication') }}</label>
             <div class="col-xs-3">
               <label for="">ID</label>
-              <input class="form-control" type="text" name="settingForm[security:basicName]"   value="{{ settingForm['security:basicName']|default('') }}" {% if not aclEnable  %}readonly{% endif%}>
+              <input class="form-control" type="text" name="settingForm[security:basicName]"   value="{{ settingForm['security:basicName']|default('') }}" {% if not isAclEnabled  %}readonly{% endif%}>
             </div>
             <div class="col-xs-3">
               <label for="">{{ t('Password') }}</label>
-              <input class="form-control" type="text" name="settingForm[security:basicSecret]" value="{{ settingForm['security:basicSecret']|default('') }}" {% if not aclEnable  %}readonly{% endif%}>
+              <input class="form-control" type="text" name="settingForm[security:basicSecret]" value="{{ settingForm['security:basicSecret']|default('') }}" {% if not isAclEnabled  %}readonly{% endif%}>
             </div>
             <div class="col-xs-offset-3 col-xs-9">
               <p class="help-block">
-                {% if not aclEnable %}
+                {% if not isAclEnabled %}
                   {{ t("security_setting.basic_acl_disable") }}<br>
                 {% else %}
                   {{ t("security_setting.common_authentication") }}<br>

+ 2 - 2
src/server/views/admin/user-groups.html

@@ -33,7 +33,7 @@
 
     <div class="col-md-9">
       <p>
-        {% if aclEnable %}
+        {% if isAclEnabled %}
           <button  data-toggle="collapse" class="btn btn-default" href="#createGroupForm">新規グループの作成</button>
         {% else %}
           現在の設定では新規グループの作成はできません。
@@ -135,7 +135,7 @@
               {% endfor %}
             </ul></td>
             <td>{{ sGroup.createdAt|date('Y-m-d', sGroup.createdAt.getTimezoneOffset()) }}</td>
-            {% if aclEnable %}
+            {% if isAclEnabled %}
             <td>
               <div class="btn-group admin-group-menu">
                 <button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown">