mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-26 07:22:34 +00:00
add set_user_role_upload_download_rate_limit.py (#5407)
This commit is contained in:
@@ -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")
|
@@ -2,10 +2,7 @@
|
|||||||
from copy import deepcopy
|
from copy import deepcopy
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from seaserv import seafile_api
|
|
||||||
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from seahub.utils import is_pro_version
|
|
||||||
from seahub.constants import DEFAULT_USER, GUEST_USER, \
|
from seahub.constants import DEFAULT_USER, GUEST_USER, \
|
||||||
DEFAULT_ADMIN, SYSTEM_ADMIN, DAILY_ADMIN, AUDIT_ADMIN
|
DEFAULT_ADMIN, SYSTEM_ADMIN, DAILY_ADMIN, AUDIT_ADMIN
|
||||||
|
|
||||||
@@ -81,17 +78,6 @@ ENABLED_ROLE_PERMISSIONS = merge_roles(
|
|||||||
DEFAULT_ENABLED_ROLE_PERMISSIONS, custom_role_permissions
|
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
|
# role permission for administraror
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user