Wizards bieten die Möglichkeit Datensätze aus unterschiedlichen Quellen (XML, Tabellen) in einem geführten Prozess zu bearbeiten und zu importieren.
Um das zu ermöglichen können Wizards in jeder App im Verzeichnis resources/wizards
angelegt werden. Ein Wizards besteht aus einer JSON-Datei (siehe nachfolgendes Beispiel).
{ "name": { "de": "NAME DES WIZARDS", "en": "NAME DES WIZARDS" }, "icon": "fas fa-vial", "steps": [ { "repository": "shopGroup", "handler": "PresetList", "name": { "de": "Step 1", "en": "Step 1" }, "configuration": { "file": "plugin/remote/brandbox/framework/resources/presets/presetXyz.xml", "allowMultiple": true, "forceRelations": [ ] } } ] }
Der Wizard ist nach löschen des Caches in der Liste aller Wizards erreichbar. Diese Liste erreichen Sie über die Toolbar der Dashboards.
Preset
Im o.g. Wizard wird ein Preset referenziert. Das Preset lässt sich automatisiert über den Standard-Export in brandbox erzeugen. Weitere Informationen finden Sie auf der Seite Exportprofil erstellen. Ein Preset ist demnach eine XML-Datei in einem normierten Format.
<?xml version="1.0" encoding="UTF-8"?> <root> <repositories> <repository name="shopGroup"> <entity reference="1"> <column name="id">1</column> <column name="shopGroupActive">1</column> <column name="shopGroupVisibilityMainMenu">1</column> <column name="shopGroupVisibilityHome">1</column> <column name="shopGroupVisibilitySidebar">1</column> <column name="shopGroupName">Befestigung</column> <column name="shopGroupShortText"/> <column name="shopGroupDescription"><![CDATA[<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. </p>]]> </column> <column name="shopGroupImage">plugin/remote/bundle/shop/images/eyecatcher/shutterstock_670360852.jpg</column> <column name="sortNumber">1</column> <column name="shopGroupArticleFinderConfigID">0</column> <column name="shopGroupMetaTitle"/> <column name="shopGroupMetaKeywords"/> <column name="shopGroupMetaDescription"/> <column name="shopGroupMetaRobots"/> </entity> </repository> </repositories> </root>
Handler
Der Wizard liest Presets aus und importiert dessen Daten. Der Wizards stellt unterschiedliche Handler zur Verfügung, sodass sich unterschiedliche Anforderungen erfüllen lassen. Folgende Handler stehen zur Verfügung:
PresetList
EntityList
EntityForm
PresetList
Verwenden Sie diesen Handler, um Presets (wie oben beschrieben) zu verarbeiten.
EntityList
Verwenden Sie diesen Handler, um Datentabellen zu verarbeiten.
EntityForm
Verwenden Sie diesen Handler, um einen Datensatz (aus einem Preset oder einer Datentabelle) nach Auswahl zu bearbeiten.