Skip to main content

Introduction

The plone.app.lockingbehavior package provides a plone.locking integration for dexterity.

Usage

Just use the behavior plone.app.lockingbehavior.behaviors.ILocking in your dexterity content type. Also check the condition of the “edit” action of your type, it should check if the object is locked.

In your profiles/default/types/YOURTYPE.xml add the behavior and the edit action:

<?xml version="1.0"?>
<object name="example.conference.presenter" meta_type="Dexterity FTI"
        i18n:domain="example.conference" xmlns:i18n="http://xml.zope.org/namespaces/i18n">

    <!-- enabled behaviors -->
    <property name="behaviors">
        <element value="plone.app.lockingbehavior.behaviors.ILocking" />
    </property>

    <action action_id="edit"
            visible="True"
            title="Edit"
            category="object"
            url_expr="string:${object_url}/edit"
            condition_expr="not:object/@@plone_lock_info/is_locked_for_current_user|python:True">
        <permission value="Modify portal content"/>
    </action>

</object>

The ILocking behavior enables locking support for your content type. This adds the ITTWLockable interface from plone.locking. The locking viewlet from plone.app.layout is also working for the dexterity content type.

More Information

Changelog

3.0.0 (2026-05-16)

Internal:

  • Make final release, no further changes.

3.0.0a1 (2025-11-19)

Breaking changes:

  • Replace pkg_resources namespace with PEP 420 native namespace. Support only Plone 6.2 and Python 3.10+. (#3928)

2.0.3 (2025-09-11)

Internal:

  • Move distribution to src layout [gforcada] (#4217)

2.0.2 (2025-01-24)

Bug fixes:

  • Fix DeprecationWarnings. [maurits] (#4090)

2.0.1 (2024-07-31)

Bug fixes:

  • Remove setuptools fossils. [maurits] (#72)

2.0.0 (2023-10-07)

Internal:

  • Update configuration files. [plone devs] (cfffba8c)

1.0.7 (2020-04-20)

Bug fixes:

  • Minor packaging updates. (#1)

1.0.6 (2018-11-21)

Bug fixes:

  • Cleanup project level files (setup.py, .travis-ci.yml…) [maurits] [gforcada] (#2524)

1.0.5 (2017-02-12)

Bug fixes:

  • Add coding header on python files. [gforcada]

  • Unskip test for Zope 4, as isolation problems are already fixed. [thet]

1.0.4 (2016-05-02)

New:

  • Add behavior short name. [jensens]

1.0.3 (2016-02-20)

Fixes:

  • Use a functional layer to resolve test isolation problems. [gforcada]

  • Refactor doctest to an integration test and skip it for Zope 4 due to isolation problems. [pbauer]

  • Changed i18n_domain to “plone”. Requires plone.app.locales 4.3.9 or higher. [claytonc]

1.0.2 (2015-09-09)

  • Remove superfluous ‘for’. [fulv]

  • Fix tests: redirect was changed in commit e7367258. [jone]

  • If the content is locked, the redirect points to the default view and not to the absolute_url of the object. It avoids image opening on redirect [parruc]

1.0.1 (2011-12-06)

  • Fix version requirement of plone.dexterity: 1.1 is compatible. [jone]

1.0 (2011-11-27)

  • Fixed problem: locks were not released when editing content and saving it without changing anything. Fixed by using new IEditFinishedEvent instead of IObjectModifiedEvent. [jbaumann]

  • Fixed problem which caused widget traversal to fail. The edit form is now protected for non-anonymous user, since locking for anyonmous users does not work anyway. [jbaumann]

  • Initial implementation [jbaumann]

Release files for plone.app.lockingbehavior 3.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for plone.app.lockingbehavior 3.0.0
File Size Uploaded
plone_app_lockingbehavior-3.0.0.tar.gz 15.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for plone.app.lockingbehavior 3.0.0
File Interpreter ABI Platform
plone_app_lockingbehavior-3.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 22.4 kB

Release files / plone_app_lockingbehavior-3.0.0.tar.gz

Download URL plone_app_lockingbehavior-3.0.0.tar.gz
Size 15.1 kB
Tags Source
SHA-256 checksum
How to use checksums
caf961a5a91c8e98fc034706d4669a47cf6e6b961808a2d261de499422bd04e6
BLAKE2b-256 checksum
How to use checksums
f3ee89560fbdae16377bb564378f4f003003edc523b1a8952bb57fbe228f8a6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

Release files / plone_app_lockingbehavior-3.0.0-py3-none-any.whl

Download URL plone_app_lockingbehavior-3.0.0-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d418474c7601b9e5e9a61c57b457b7a7a5b3a919caf972db50bda4adcdfdd2af
BLAKE2b-256 checksum
How to use checksums
8e2769e588ebced2ff738ae6d353e5a0be8da8cf91004d2b100346792bbdf4b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

Release history Release notifications | RSS feed

This release

3.0.0 This release

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page