first commit
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
import db
|
||||
|
||||
from .widget_meta import widget_meta
|
||||
from .control_value import _control_value
|
||||
from ..element_types.list_element_types import list_element_types
|
||||
|
||||
|
||||
def controls_with_values(slug, el):
|
||||
"""Pour le panneau de propriétés : la liste des réglages du widget de
|
||||
cet élément, chacun avec sa valeur actuelle déjà résolue. Le réglage
|
||||
"définition_id" du Répéteur de données a besoin du jeu courant pour
|
||||
lister les objets disponibles — d'où le paramètre slug."""
|
||||
meta = widget_meta(el.get("widget"))
|
||||
result = []
|
||||
for control in meta.get("controls", []):
|
||||
control = dict(control)
|
||||
if control["key"] == "definition_id":
|
||||
defs = db.list_definitions(slug)
|
||||
control["options"] = [("", "(sélectionner un objet)")] + [(str(d["id"]), d["name"]) for d in defs]
|
||||
if control["key"] == "template_type_id":
|
||||
types = list_element_types(slug)
|
||||
control["options"] = [("", "(aucun — utiliser le modèle de texte ci-dessous)")] + [(str(t["id"]), t["name"]) for t in types]
|
||||
result.append({**control, "value": _control_value(el, control)})
|
||||
return result
|
||||
Reference in New Issue
Block a user