diff --git a/seahub/base/management/commands/set_user_role_upload_download_rate_limit.py b/seahub/base/management/commands/set_user_role_upload_download_rate_limit.py new file mode 100644 index 0000000000..e6afdfa2e7 --- /dev/null +++ b/seahub/base/management/commands/set_user_role_upload_download_rate_limit.py @@ -0,0 +1,24 @@ +# Copyright (c) 2012-2016 Seafile Ltd. + +from django.core.management.base import BaseCommand +from seaserv import seafile_api +from seahub.role_permissions.settings import ENABLED_ROLE_PERMISSIONS + + +class Command(BaseCommand): + + help = "Set upload/download rate limit via user role." + + def handle(self, *args, **options): + + for role, permissions in ENABLED_ROLE_PERMISSIONS.items(): + + upload_rate_limit = permissions.get('upload_rate_limit', 0) + if upload_rate_limit >= 0: + seafile_api.set_role_upload_rate_limit(role, upload_rate_limit * 1000) + + download_rate_limit = permissions.get('download_rate_limit', 0) + if download_rate_limit >= 0: + seafile_api.set_role_download_rate_limit(role, download_rate_limit * 1000) + + print("Done") diff --git a/seahub/role_permissions/settings.py b/seahub/role_permissions/settings.py index ad0c01c112..57d846fff4 100644 --- a/seahub/role_permissions/settings.py +++ b/seahub/role_permissions/settings.py @@ -2,10 +2,7 @@ from copy import deepcopy import logging -from seaserv import seafile_api - from django.conf import settings -from seahub.utils import is_pro_version from seahub.constants import DEFAULT_USER, GUEST_USER, \ DEFAULT_ADMIN, SYSTEM_ADMIN, DAILY_ADMIN, AUDIT_ADMIN @@ -81,17 +78,6 @@ ENABLED_ROLE_PERMISSIONS = merge_roles( DEFAULT_ENABLED_ROLE_PERMISSIONS, custom_role_permissions ) -if is_pro_version(): - for role, permissions in ENABLED_ROLE_PERMISSIONS.items(): - - upload_rate_limit = permissions.get('upload_rate_limit', 0) - if upload_rate_limit >= 0: - seafile_api.set_role_upload_rate_limit(role, upload_rate_limit * 1000) - - download_rate_limit = permissions.get('download_rate_limit', 0) - if download_rate_limit >= 0: - seafile_api.set_role_download_rate_limit(role, download_rate_limit * 1000) - # role permission for administraror