Search the FirstSpirit Knowledge Base
Hallo Ana,
du hast schon den richtigen Einstieg gefunden.
IDProvider#getMetaFormData() -> das komplette FormData der Metadaten für dieses Element.
Ich gehe mal davon aus, dass es sich bei der Komponente "meta_permission_groups" um eine CMS_INPUT_PERMISSION handelt.
Dann liefert dein Aufruf ein FormField mit Wert Permissions.
FormField<Permissions> permField = metaFormData.get(null, "meta_permission_groups" ));
Um das "inherit" abzubilden, muss du prüfen, ob in dem FormField ein Wert gesetzt ist (#isSet()) und dann die Parent-Kette des Elementes hochlaufen, bis du einen FormField gefunden hast, bei dem #isSet true liefert.
Gruß
Sorry, Enter aus versehen gedrückt.
Also ich möchte in einem Script dasselbe erreichen, was
nav.ref.meta("meta_permission_groups","inherit")
innerhalb der Navigation tut
Die einzige Methode, die ich gefunden habe ist getMetaFormData in IdProvider. Aber ich
getMetaFormData().get(null, "meta_permission_groups" )) aufrufe, kriege ich
DataWrappingFormData$EditorValueWrappingFormField
zurück. Ich könnte mich da weiter per Reflection durcharbeiten, aber ich will nicht was im Editor steht. ich will inherited.
Wie geht das denn?
Gruß
Ana
Hallo Ana,
du hast schon den richtigen Einstieg gefunden.
IDProvider#getMetaFormData() -> das komplette FormData der Metadaten für dieses Element.
Ich gehe mal davon aus, dass es sich bei der Komponente "meta_permission_groups" um eine CMS_INPUT_PERMISSION handelt.
Dann liefert dein Aufruf ein FormField mit Wert Permissions.
FormField<Permissions> permField = metaFormData.get(null, "meta_permission_groups" ));
Um das "inherit" abzubilden, muss du prüfen, ob in dem FormField ein Wert gesetzt ist (#isSet()) und dann die Parent-Kette des Elementes hochlaufen, bis du einen FormField gefunden hast, bei dem #isSet true liefert.
Gruß