close

Filter

loading table of contents...

Studio Developer Manual / Version 2406.0

Table Of Contents

9.18.2 Prerequisites

Premulars are already designed to work with changing content items. For this purpose the Premular's content item is held by the bindTo ValueExpression. However, if you have customized content forms (Section 9.5.2, “Customizing Content Forms”) and / or property fields (Section 9.6, “Customizing Property Fields”) you are advised to consider certain prerequisites for the ReusableDocumentFormTabsPlugin to work properly.

Problems may arise when some features depend on conditions that apply to some content forms but not to others. The following example illustrates this point. Let's say, a certain property editor should only be present for Premulars whose underlying content item belongs to a specific site. Depending on how this site check is carried out, the visibility of the editor might not be handled correctly on tab reusage.

  • Bad practice: Some plugin checks only on creation time of the property editor if the underlying content item belongs to the site and makes the editor visible or not. This visibility is not reevaluated on change of the content item and thus does not go along with Premular reusage.

  • Good practice: The BindVisibilityPlugin is used to determine the visibility of the property editor based on the underlying content item (bindTo ValueExpression). The plugin reevaluates as soon as the content item changes and thus works fine with Premular reusability.

As a rule of thumb, such dynamic content form features work fine with Premular reusability if either of the following two conditions holds:

  • The conditions for the feature exclusively rest on the Premular's underlying content item (bindTo ValueExpression) and are re-evaluated on content change.

  • The conditions for the feature do not change until Studio reload (for example, the user's group memberships).

Search Results

Table Of Contents
warning

Your Internet Explorer is no longer supported.

Please use Mozilla Firefox, Google Chrome, or Microsoft Edge.