From 3c12c4f7975fee760ef94573f55bb7191bc8dce3 Mon Sep 17 00:00:00 2001 From: Goffi Date: Wed, 5 May 2021 15:37:33 +0200 Subject: [PATCH] component file sharing (management): add values of `quota` and `used` size on result form --- sat/plugins/plugin_comp_file_sharing_management.py | 13 +++++++------ sat/tools/xml_tools.py | 3 ++- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/sat/plugins/plugin_comp_file_sharing_management.py b/sat/plugins/plugin_comp_file_sharing_management.py index 98a29e87..2a64cd6d 100644 --- a/sat/plugins/plugin_comp_file_sharing_management.py +++ b/sat/plugins/plugin_comp_file_sharing_management.py @@ -1,7 +1,6 @@ #!/usr/bin/env python3 - -# SAT plugin to detect language (experimental) +# Libervia plugin to manage file sharing component through ad-hoc commands # Copyright (C) 2009-2021 Jérôme Poisson (goffi@goffi.org) # This program is free software: you can redistribute it and/or modify @@ -19,14 +18,14 @@ import os.path from functools import partial +from wokkel import data_form +from twisted.internet import defer +from twisted.words.protocols.jabber import jid from sat.core.i18n import _, D_ from sat.core import exceptions from sat.core.constants import Const as C from sat.core.log import getLogger from sat.tools.common import utils -from wokkel import data_form -from twisted.internet import defer -from twisted.words.protocols.jabber import jid log = getLogger(__name__) @@ -474,7 +473,9 @@ class FileSharingManagement(object): except exceptions.PermissionError: raise WorkflowError(self._err(_("forbidden"))) status = self._c.STATUS.COMPLETED - payload = None + form = data_form.Form("result") + form.makeFields({"quota": quota, "user": size_used}) + payload = form.toElement() note = ( self._c.NOTE.INFO, _("You are currently using {size_used} on {size_quota}").format( diff --git a/sat/tools/xml_tools.py b/sat/tools/xml_tools.py index e21e219e..17cb11ab 100644 --- a/sat/tools/xml_tools.py +++ b/sat/tools/xml_tools.py @@ -245,7 +245,8 @@ def dataDict2dataForm(data_dict): - an optional "namespace" key with form namespace - a mandatory "fields" key with list of fields as follow: - "type" is mostly the same as data_form.Field.fieldType - - "var", "label", and "value" follow same attribude in data_form.Field + - "name" is used to set the "var" attribute of data_form.Field + - "label", and "value" follow same attribude in data_form.Field - "xhtml" is used for "xml" fields with child in the C.NS_XHTML namespace - "options" are list of dict with optional "label" and mandatory "value" following suitable attributes from data_form.Option