diff --git a/frontend/src/components/dialog/sysadmin-dialog/sysadmin-unlink-device-dialog.js b/frontend/src/components/dialog/sysadmin-dialog/sysadmin-unlink-device-dialog.js index d95952a431..11417db426 100644 --- a/frontend/src/components/dialog/sysadmin-dialog/sysadmin-unlink-device-dialog.js +++ b/frontend/src/components/dialog/sysadmin-dialog/sysadmin-unlink-device-dialog.js @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { gettext } from '../../../utils/constants'; +import { gettext, isPro } from '../../../utils/constants'; import { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap'; const propTypes = { @@ -36,10 +36,12 @@ class SysAdminUnlinkDevice extends React.Component { {gettext('Unlink device')}

{gettext('Are you sure you want to unlink this device?')}

+ {isPro &&
+ }
diff --git a/frontend/src/pages/sys-admin/devices/devices-by-platform.js b/frontend/src/pages/sys-admin/devices/devices-by-platform.js index 25607c44ad..068a2eb2fb 100644 --- a/frontend/src/pages/sys-admin/devices/devices-by-platform.js +++ b/frontend/src/pages/sys-admin/devices/devices-by-platform.js @@ -1,6 +1,6 @@ import React, { Component, Fragment } from 'react'; import { seafileAPI } from '../../../utils/seafile-api'; -import { gettext, isPro } from '../../../utils/constants'; +import { gettext } from '../../../utils/constants'; import toaster from '../../../components/toast'; import { Utils } from '../../../utils/utils'; import EmptyTip from '../../../components/empty-tip'; @@ -133,9 +133,7 @@ class Item extends Component { {moment(item.last_accessed).fromNow()} - {isPro && - } {isUnlinkDeviceDialogOpen && diff --git a/seahub/api2/endpoints/admin/devices.py b/seahub/api2/endpoints/admin/devices.py index 5117c2cf41..f908993887 100644 --- a/seahub/api2/endpoints/admin/devices.py +++ b/seahub/api2/endpoints/admin/devices.py @@ -9,6 +9,7 @@ from rest_framework import status from pysearpc import SearpcError +from seahub.utils import is_pro_version from seahub.utils.devices import do_unlink_device from seahub.utils.timeutils import datetime_to_isoformat_timestr @@ -20,6 +21,7 @@ from seahub.base.templatetags.seahub_tags import email2nickname logger = logging.getLogger(__name__) + class AdminDevices(APIView): authentication_classes = (TokenAuthentication, SessionAuthentication) throttle_classes = (UserRateThrottle,) @@ -75,7 +77,7 @@ class AdminDevices(APIView): def delete(self, request, format=None): - if not request.user.admin_permissions.other_permission(): + if is_pro_version() and not request.user.admin_permissions.other_permission(): return api_error(status.HTTP_403_FORBIDDEN, 'Permission denied.') platform = request.data.get('platform', '')