The Content Locking module provides editors with features to lock a JCR node. Locking of the node prevents other users from modifying its content until the lock is removed. The module installs the locking feature on the Pages, Assets, and Stories apps but locking can be applied to any content app with a decorations file.
Maven is the easiest way to install the module. Add the following dependency to your bundle:
The Content Locking module is meant for short-term locking of nodes. The actions for locking and unlocking come pre-configured on the Pages, Assets, and Stories app. When a node is in a locked state no user can edit the content until the node is unlocked. This includes executing any actions, such as publishing, that may add or update any nodes (and/or properties). The module uses the underlying JCR locking mechanism to lock the nodes.
Using the configured actions, nodes can be locked from changes. You can find the the Lock and Unlock actions grouped with editing actions. Once the node is locked only the user which locked the node can unlock the node. However, it is possible for the superuser to delete any lock from the lock management app.
When an item is in a locked state the lock icon will appear in the status column.
Content locking app
The Content locking app, located under the Tools menu, is where you can see all locked items from all workspaces. Items can be sorted by workspace, lock owner, path, etc. There is also the option to delete the lock. Any user which is allowed to use this app can delete locks. Use the app level security to control which users can access the management app.
Adding content locking to an app
Technically content locking can be added to any content app. The module has three decoration files for Pages, Assets, and Stories. Using one of these files as a base you can create a decoration for any app.
- This module is at INCUBATOR level.
Do not delete locks from the JCR Browser. Doing so could potentially leave the node locked forever.
- Version 1.0 - Initial release of the extensions version of the module.