Magnolia 4.5 reached end of life on June 30, 2016. This branch is no longer supported, see End-of-life policy.
Magnolia Content Dependencies module provides functionality to track dependent content used by web pages. Dependent content includes other Web pages and DMS assets. Information and alerts are provided when activating or deleting a page that has a dependency on other content and when deleting a page or asset on which another page depends.
Although the Standard Templating Kit would not render broken links on the public instance, this functionality provides all the necessary information about the consequences of an activation or deletion.
Download the Content Dependencies module from Magnolia Store or Nexus repository.
Content Dependencies is an enterprise module included in the Enterprise Edition bundle and typically already installed. Go to Magnolia Store > Installed modules in AdminCentral to check. To install the module individually, see the general module installation instructions.
See the general module uninstalling instructions and advice.
The Content Dependencies module requires no configuration.
On installation, the module creates the following configuration in /modules/dependencies
.
Classes and what they do:
DefaultDependencies
compares content instances based on their handle.DefaultDependencyKeepingNodeDataFinder
delivers a set of NodeData that keeps references based on the NodeData's name.DependenciesDialogControl
is a FreeMarker control that prints dependencies from the website
and dms
repositories in the current content and shows the activation status. (See STK). Also used to resolve content from workflow items. (See Workflow module)In the STK, the Content Dependencies module includes a generic tabDependencies
dialog definition, configured in Templating Kit > Dialog Definitions > /generic/pages/tabDependencies
. This definition uses the dependenciesControl
control type registered by the module. See Configuration above.
All STK page properties dialogs extend the generic basePageProperties
dialog that includes tabDependencies
by extension.
Here's the configuration of basePageProperties
in Templating Kit > Dialog Definitions /generic/master/basePageProperties
.
Here's the configuration of stkSectionProperties
dialog in Templating Kit > Dialog Definitions /pages/section/stkSectionProperties
.
Here's the properties dialog for the /demo-project/about
page. Both the status indicator and path of the dependent content are included.
In the Workflow module configuration, the Content Dependencies module adds the tabDependencies
tab to the editActivationWorkItem
dialog definition. This is configured in /modules/workflow/dialogs/editActivationWorkItem
.
Here's the Dependencies tab of the editActivationWorkItem
dialog for the /demo-project/about
page in Inbox.
The Content Dependencies module adds the ReferencesHtmlServlet
to the servlet filter chain. This is configured in /server/filters/servlets/ReferencesHtmlServlet
. It registers DepencenciesServlet
that renders the list of dependencies in the warning message displayed when deleting a page in Website or file in Documents.
When you delete and page or file the warning dialog lists the dependent content.