1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-25 14:50:29 +00:00

add set_user_role_upload_download_rate_limit.py (#5407)

This commit is contained in:
lian
2023-03-21 16:29:13 +08:00
committed by GitHub
parent 69387505d2
commit 8dd2374e08
2 changed files with 24 additions and 14 deletions

View File

@@ -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")

View File

@@ -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