- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Schreiben von Strukturvariablen mittels Beanshell?
Hallo zusammen!
Ist es mรถglich mittels Beanshell auf Strukturvariablen zuzugreifen bzw. diese zu verรคndern?
Ein paar Worte zum Hintergrund. Die Strukturvariablen sind nur fรผr Admins sichtbar. Wir mรถchten gerne,
dass die Redakteure in einem Bestimmten Bereich im Projekt selbst festlegen kรถnnen ob dort eine Subnavigation angezeigt werden soll oder nicht. Es soll fรผr diese Subnavigation die Mรถglichkeit geben ein Bild zu hinterlegen, welches ebenfalls in einer Strukturvariablen gespeichert wird.
Aktuell werden diese Werte von einem Redaktuer mit Adminrechten editiert.
Dies Soll in Zukunft verhindert werden. Ist es mรถglich ein Beanshell an einem bestimmten Ordner in der Struktur aufzurufen, welchem man รผber eine Eingabemaske das anzuzeigende Bild รผbergeben kann bzw. eine Checkbox Subnavigation true/false und diese Werte in einer Strukturvariablen speichert?
Im Voraus schon einmal vielen Dank fรผr Eure Hilfe.
- Labels:
-
Developers
-
Knowledgebase
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo,
ja, wenn ich nichts รผbersehen habe, sollte das so gehen, wie gewรผnscht.
Im Skript kann man Strukturvariablen zum Beispiel so setzen:
// siteStoreFolder muss vorhanden sein
siteStoreFolder.setLock(true, false);
FormData formData = siteStoreFolder.getFormData();
FormField formField = formData.createVariable( Language lang, "Name_der_Strukturvariablen");
formField.set("neuer_Wert");
siteStoreFolder.setFormData(formData);
siteStoreFolder.save();
siteStoreFolder.setLock(true, false);
In Skripten gibt es einen Formularreiter, welcher mit den bekannten Formularelementen gefรผllt werden kann. Dort kann zum Beispiel ein CMS_INPUT_TOGGLE fรผr das Aktivieren und Deaktivieren der Subnavigation erstellt werden oder eine FS_REFERENCE um das Bild auszuwรคhlen.
Das Formular wird im Skript einfach mithilfe der Methode "context.showForm()" angezeigt.
Nach dem Bestรคtigen des Formulars mรผssen die Werte der Eingabekomponenten dann im Skript ausgelesen werden und passend in den Strukturvariablen hinterlegt werden. Hierfรผr gibt die Methode showForm() ein FormData-Objekt zurรผck.
Das Skript muss dann in einem Arbeitsablauf ausgefรผhrt werden, damit die Rechte passend gesetzt werden kรถnnen.
Viele Grรผรe
Rouven

