diff --git a/server/src/uds/core/util/config.py b/server/src/uds/core/util/config.py index f67fb3fe8..81c70b9a3 100644 --- a/server/src/uds/core/util/config.py +++ b/server/src/uds/core/util/config.py @@ -287,7 +287,7 @@ class Config: @staticmethod def enumerate() -> collections.abc.Iterable['Config.Value']: GlobalConfig.initialize() # Ensures DB contains all values - for cfg in DBConfig.objects.all().order_by('key'): # @UndefinedVariable + for cfg in DBConfig.objects.all().order_by('key'): # Skip sections with name starting with "__" (not to be editted on configuration) if cfg.section.startswith('__'): # Hidden section: continue diff --git a/server/src/uds/transports/HTML5RDP/html5rdp.py b/server/src/uds/transports/HTML5RDP/html5rdp.py index d2c5db282..e745165f7 100644 --- a/server/src/uds/transports/HTML5RDP/html5rdp.py +++ b/server/src/uds/transports/HTML5RDP/html5rdp.py @@ -303,6 +303,13 @@ class HTML5RDPTransport(transports.Transport): old_field_name='customGEPath', ) + support_params = ui.gui.TextField( + label=_('Support parameters'), + order=999, + tooltip=_('Support provided parameters. Do not modify'), + tab=types.ui.Tab.ADVANCED, + ) + def initialize(self, values: 'types.core.ValuesType') -> None: if not values: return @@ -491,6 +498,14 @@ class HTML5RDPTransport(transports.Transport): if self.smooth.as_bool(): params['enable-font-smoothing'] = 'true' + # if support_params is not empty, add it to the params + # a comma separated list of key=value pairs + if self.support_params.value.strip(): + for param in self.support_params.value.split(','): + if '=' in param: + key, value = param.split('=', 1) + params[key.strip()] = value.strip() + logger.debug('RDP Params: %s', params) ticket = models.TicketStore.create(params, validity=self.ticket_validity.as_int()) diff --git a/server/src/uds/web/views/download.py b/server/src/uds/web/views/download.py index 31d641428..72a152b57 100644 --- a/server/src/uds/web/views/download.py +++ b/server/src/uds/web/views/download.py @@ -31,8 +31,6 @@ Author: Adolfo Gómez, dkmaster at dkmon dot com import logging import typing -from uds.core import consts -from uds.core.auths.auth import weblogin_required from uds.core.managers import downloads_manager from .main import index @@ -46,7 +44,6 @@ if typing.TYPE_CHECKING: logger = logging.getLogger(__name__) -@weblogin_required(role=consts.UserRole.STAFF) def download(request: 'HttpRequest', download_id: str) -> 'HttpResponse': """ Downloadables management