diff --git a/frontend/src/components/main-side-nav.js b/frontend/src/components/main-side-nav.js index 2a3b57d5cd..bb5d3cfe78 100644 --- a/frontend/src/components/main-side-nav.js +++ b/frontend/src/components/main-side-nav.js @@ -2,7 +2,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { Link } from '@reach/router'; import { Badge } from 'reactstrap'; -import { gettext, siteRoot, enableWiki, canAddRepo, canGenerateShareLink, canGenerateUploadLink, canInvitePeople } from '../utils/constants'; +import { gettext, siteRoot, canPublishRepo, canAddRepo, canGenerateShareLink, canGenerateUploadLink, canInvitePeople } from '../utils/constants'; import { seafileAPI } from '../utils/seafile-api'; import { Utils } from '../utils/utils'; import toaster from './toast'; @@ -229,7 +229,7 @@ class MainSideNav extends React.Component { } - {enableWiki && + {canPublishRepo &&
  • this.tabItemClick(e, 'published')}> diff --git a/frontend/src/pages/wikis/wikis.js b/frontend/src/pages/wikis/wikis.js index 09cc2012e8..2eed5ad851 100644 --- a/frontend/src/pages/wikis/wikis.js +++ b/frontend/src/pages/wikis/wikis.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { Button } from 'reactstrap'; import MediaQuery from 'react-responsive'; import { seafileAPI } from '../../utils/seafile-api'; -import { gettext, loginUrl, canPublishRepo } from '../../utils/constants'; +import { gettext, loginUrl } from '../../utils/constants'; import toaster from '../../components/toast'; import ModalPortal from '../../components/modal-portal'; import EmptyTip from '../../components/empty-tip'; @@ -130,14 +130,14 @@ class Wikis extends Component {
    - {canPublishRepo && + - } +
    diff --git a/frontend/src/utils/constants.js b/frontend/src/utils/constants.js index e303f42ee4..254d8f48d9 100644 --- a/frontend/src/utils/constants.js +++ b/frontend/src/utils/constants.js @@ -44,7 +44,6 @@ export const shareLinkExpireDaysMin = window.app.pageOptions.shareLinkExpireDays export const shareLinkExpireDaysMax = window.app.pageOptions.shareLinkExpireDaysMax; export const shareLinkExpireDaysDefault = window.app.pageOptions.shareLinkExpireDaysDefault; export const maxFileName = window.app.pageOptions.maxFileName; -export const enableWiki = window.app.pageOptions.enableWiki; export const canPublishRepo = window.app.pageOptions.canPublishRepo; export const enableEncryptedLibrary = window.app.pageOptions.enableEncryptedLibrary; export const enableRepoHistorySetting = window.app.pageOptions.enableRepoHistorySetting; diff --git a/seahub/base/accounts.py b/seahub/base/accounts.py index 4ebbb98c4d..04d18b606d 100644 --- a/seahub/base/accounts.py +++ b/seahub/base/accounts.py @@ -216,14 +216,8 @@ class UserPermissions(object): def storage_ids(self): return self._get_perm_by_roles('storage_ids') - def can_use_wiki(self): - if not settings.ENABLE_WIKI: - return False - - return self._get_perm_by_roles('can_use_wiki') - def can_publish_repo(self): - if not self.can_use_wiki(): + if not settings.ENABLE_WIKI: return False return self._get_perm_by_roles('can_publish_repo') diff --git a/seahub/role_permissions/settings.py b/seahub/role_permissions/settings.py index b651329df6..7d1978fde1 100644 --- a/seahub/role_permissions/settings.py +++ b/seahub/role_permissions/settings.py @@ -40,7 +40,6 @@ DEFAULT_ENABLED_ROLE_PERMISSIONS = { 'can_export_files_via_mobile_client': True, 'storage_ids': [], 'role_quota': '', - 'can_use_wiki': True, 'can_publish_repo': True, }, GUEST_USER: { @@ -60,7 +59,6 @@ DEFAULT_ENABLED_ROLE_PERMISSIONS = { 'can_export_files_via_mobile_client': False, 'storage_ids': [], 'role_quota': '', - 'can_use_wiki': False, 'can_publish_repo': False, }, } diff --git a/seahub/templates/base_for_react.html b/seahub/templates/base_for_react.html index 8f1349df23..189810a25e 100644 --- a/seahub/templates/base_for_react.html +++ b/seahub/templates/base_for_react.html @@ -82,7 +82,6 @@ shareLinkExpireDaysMin: "{{ share_link_expire_days_min }}", shareLinkExpireDaysMax: "{{ share_link_expire_days_max }}", maxFileName: "{{ max_file_name }}", - enableWiki: {% if user.permissions.can_use_wiki %} true {% else %} false {% endif %}, canPublishRepo: {% if user.permissions.can_publish_repo %} true {% else %} false {% endif %}, enableEncryptedLibrary: {% if enable_encrypted_library %} true {% else %} false {% endif %}, enableRepoHistorySetting: {% if enable_repo_history_setting %} true {% else %} false {% endif %}, diff --git a/seahub/views/__init__.py b/seahub/views/__init__.py index 5280842601..3a836023d1 100644 --- a/seahub/views/__init__.py +++ b/seahub/views/__init__.py @@ -747,7 +747,6 @@ def libraries(request): "allow_public_share": allow_public_share, "guide_enabled": guide_enabled, "sub_lib_enabled": sub_lib_enabled, - 'enable_wiki': request.user.permissions.can_use_wiki(), 'enable_upload_folder': settings.ENABLE_UPLOAD_FOLDER, 'enable_resumable_fileupload': settings.ENABLE_RESUMABLE_FILEUPLOAD, 'resumable_upload_file_block_size': settings.RESUMABLE_UPLOAD_FILE_BLOCK_SIZE, diff --git a/tests/api/endpoints/test_wikis.py b/tests/api/endpoints/test_wikis.py index 249f5783a0..8188483798 100644 --- a/tests/api/endpoints/test_wikis.py +++ b/tests/api/endpoints/test_wikis.py @@ -13,9 +13,6 @@ from seahub.wiki.models import Wiki from seahub.role_permissions.settings import ENABLED_ROLE_PERMISSIONS from seahub.test_utils import BaseTestCase -TEST_CAN_USE_WIKI_FALSE = copy.deepcopy(ENABLED_ROLE_PERMISSIONS) -TEST_CAN_USE_WIKI_FALSE['default']['can_use_wiki'] = False - TEST_CAN_PUBLISH_REPO_FALSE = copy.deepcopy(ENABLED_ROLE_PERMISSIONS) TEST_CAN_PUBLISH_REPO_FALSE['default']['can_publish_repo'] = False @@ -96,13 +93,6 @@ class WikisViewTest(BaseTestCase): }) self.assertEqual(403, resp.status_code) - def test_403_when_add_wiki_with_can_use_wiki_false(self): - with patch('seahub.role_permissions.utils.ENABLED_ROLE_PERMISSIONS', TEST_CAN_USE_WIKI_FALSE): - resp = self.client.post(self.url, { - 'repo_id': self.repo.id, - }) - self.assertEqual(403, resp.status_code) - def test_403_when_add_wiki_with_can_generate_share_link_false(self): with patch('seahub.role_permissions.utils.ENABLED_ROLE_PERMISSIONS', TEST_CAN_GENERATE_SHARE_LINK): resp = self.client.post(self.url, { diff --git a/tests/seahub/base/test_accounts.py b/tests/seahub/base/test_accounts.py index 591347e2cf..394f942c38 100644 --- a/tests/seahub/base/test_accounts.py +++ b/tests/seahub/base/test_accounts.py @@ -13,8 +13,8 @@ from mock import patch TEST_CAN_ADD_PUBLICK_REPO_TRUE = copy.deepcopy(ENABLED_ROLE_PERMISSIONS) TEST_CAN_ADD_PUBLICK_REPO_TRUE['default']['can_add_public_repo'] = True -TEST_PUBLISH_REPO_CAN_USE_WIKI_FALSE = copy.deepcopy(ENABLED_ROLE_PERMISSIONS) -TEST_PUBLISH_REPO_CAN_USE_WIKI_FALSE['default']['can_use_wiki'] = False +TEST_PUBLISH_REPO_CAN_PUBLISH_REPO_FALSE = copy.deepcopy(ENABLED_ROLE_PERMISSIONS) +TEST_PUBLISH_REPO_CAN_PUBLISH_REPO_FALSE['default']['can_publish_repo'] = False CLOUD_MODE_TRUE = True MULTI_TENANCY_TRUE = True @@ -108,20 +108,20 @@ class UserPermissionsTest(BaseTestCase): assert self.user.permissions.can_add_public_repo() is False def test_can_publish_repo_permission(self): - # enableWIKI = True, and can_use_wiki = True + # enableWIKI = True, and can_publish_repo = True assert self.user.permissions._get_perm_by_roles('can_publish_repo') is True assert self.user.permissions.can_publish_repo() is True @override_settings(ENABLE_WIKI=False) def test_can_publish_repo_permission_with_enable_wiki_False(self): - # enableWIKI = False, and can_use_wiki = True + # enableWIKI = False, and can_publish_repo = True assert self.user.permissions._get_perm_by_roles('can_publish_repo') is True assert self.user.permissions.can_publish_repo() is False - def test_can_publish_repo_permission_with_can_use_wiki_False(self): - # enableWIKI = True, and can_use_wiki = False - with patch('seahub.role_permissions.utils.ENABLED_ROLE_PERMISSIONS', TEST_PUBLISH_REPO_CAN_USE_WIKI_FALSE): - assert self.user.permissions._get_perm_by_roles('can_publish_repo') is True + def test_can_publish_repo_permission_with_can_publish_repo_False(self): + # enableWIKI = True, and can_publish_repo = False + with patch('seahub.role_permissions.utils.ENABLED_ROLE_PERMISSIONS', TEST_PUBLISH_REPO_CAN_PUBLISH_REPO_FALSE): + assert self.user.permissions._get_perm_by_roles('can_publish_repo') is False assert self.user.permissions.can_publish_repo() is False diff --git a/tests/seahub/role_permissions/test_utils.py b/tests/seahub/role_permissions/test_utils.py index 54ea696ffd..597c178474 100644 --- a/tests/seahub/role_permissions/test_utils.py +++ b/tests/seahub/role_permissions/test_utils.py @@ -11,4 +11,4 @@ class UtilsTest(BaseTestCase): assert DEFAULT_USER in get_available_roles() def test_get_enabled_role_permissions_by_role(self): - assert len(get_enabled_role_permissions_by_role(DEFAULT_USER).keys()) == 18 + assert len(get_enabled_role_permissions_by_role(DEFAULT_USER).keys()) == 17