plone.app.contentmenu


Nameplone.app.contentmenu JSON
Version 3.0.4 PyPI version JSON
download
home_pagehttps://pypi.org/project/plone.app.contentmenu
SummaryPlone's content menu implementation
upload_time2024-04-23 15:41:38
maintainerNone
docs_urlNone
authorPlone Foundation
requires_python>=3.8
licenseGPL version 2
keywords plone contentmenu menu
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Introduction
============

plone.app.contentmenu contains the logic that powers Plone's content menu which is part of the toolbar.

It provides the menus items (and its submenues) for

- factories menu (order=10)
- workflows menu (order=20)
- actions menu (order=30)
- display menu (order=40)
- manage portlets menu (order=50)

Note that menu items are ordered by an 'ordered' property.
To allow third party products to slot their own sub-menus in between the default menu items, these are registered with gaps.

Custom menus
============

Custom menus are registered in ``configure.zcml`` like so::

    <!-- the main menu item -->
    <adapter for="* *"
        name="plone.contentmenu.my_menu_item"
        factory=".menu.MyMainMenuItem"
        provides="plone.app.contentmenu.interfaces.IContentMenuItem" />

    <!-- the sub menu items - name must match submenuId of MyMainMenuItem class -->
    <browser:menu
        id="my_fancy_menu"
        title="The 'My' menu - allows to do new exciting stuff"
        class=".menu.MyMenu"
    />

in ``menu.py`` the class looks like so::

    from zope.browsermenu.interfaces import IBrowserMenu
    from zope.browsermenu.menu import BrowserMenu
    from zope.browsermenu.menu import BrowserSubMenuItem
    from zope.component import getMultiAdapter
    from zope.i18nmessageid import MessageFactory
    from zope.interface import implementer

    _ = MessageFactory('my.fancy')


    class IMyMainMenuItem(IBrowserMenu):
        """The main my menu item.

        You may want to place this in interfaces.py
        """


    class IMyMenu(IBrowserMenu):
        """The my menu.

        You may want to place this in interfaces.py
        """


    @implementer(IMyMainMenuItem)
    class MyMainMenuItem(BrowserSubMenuItem):
        # This is in fact a submenu item of the parent menu, thus the name
        # of the inherited class tells it, don't be confused.

        title = _(u'label_my_menu', default=u'My')
        description = _(u'title_my_menu', default=u'My for the current content item')
        submenuId = 'my_fancy_menu'

        order = 70  # after the default menus
        extra = {
            'id': 'my-fancy-menu',
            'li_class': 'plonetoolbar-content-my-fancy'
        }

        @property
        def action(self):
            # return the url to be loaded if clicked on the link.
            # even if a submenu exists it will be active if javascript is disabled
            return self.context.absolute_url()

        def available(self):
            # check if the menu is available and shown or not
            return True

        def selected(self):
            # check if the menu should be shown as selected
            return False


    @implementer(IMyMenu)
    class MyMenu(BrowserMenu):

        def getMenuItems(self, context, request):
            """Return menu item entries in a TAL-friendly form."""
            results = []

            # here a single item is added. do what needed to add several entries
            results.append({
                'title': 'My item 1',
                'description': 'An my item',
                'action': '/url/to/action',
                'selected': False,
                'icon': 'some_icon_class',
                'extra': {
                    'id': 'plone-contentmenu-my-fancy-one',
                    'separator': None,
                    'class': 'my-class pat-plone-modal',
                    'modal': 'width: 400'
                },
                'submenu': None,
            })

            return results


Source Code
===========

Contributors please read the document `Process for Plone core's development <https://docs.plone.org/develop/coredev/docs/index.html>`_

Sources are at the `Plone code repository hosted at Github <https://github.com/plone/plone.app.contentmenu>`_.

Changelog
=========

.. You should *NOT* be adding new change log entries to this file.
   You should create a file in the news directory instead.
   For helpful instructions, please see:
   https://github.com/plone/plone.releaser/blob/master/ADD-A-NEWS-ITEM.rst

.. towncrier release notes start

3.0.4 (2024-04-23)
------------------

Bug fixes:


- Check if "dropdown" is needed for menu items.
  [szakitibi] (#61)


Internal:


- Update configuration files.
  [plone devs] (6e36bcc4)


3.0.3 (2023-09-14)
------------------

Bug fixes:


- Fix "Add item to default page" modal form. [sverbois] (#54)


Internal:


- Update configuration files.
  [plone devs] (7723aeaf)


3.0.2 (2023-05-25)
------------------

Bug fixes:


- Add description to actions' menu items
  [kshitiz305] (#24)
- Show workflow state title also when the toolbar is at the top.
  [maurits] (#49)


3.0.1 (2023-04-06)
------------------

Internal:


- Update configuration files.
  [plone devs] (#47959565)


3.0.0 (2022-11-30)
------------------

Bug fixes:


- Final release.
  [gforcada] (#600)


3.0.0b3 (2022-10-11)
--------------------

Bug fixes:


- Fix Display menu in toolbar doesn't show the current selected item and it's selected template correctly
  https://github.com/plone/plone.app.layout/issues/321
  [mamico] (#44)


3.0.0b2 (2022-07-21)
--------------------

Bug fixes:


- Fix missing `menuItem/extra/li_class`.
  [petschki] (#43)


3.0.0b1 (2022-06-23)
--------------------

Bug fixes:


- Toolbar width and wrapping tweaks.
  [agitator] (#40)
- adjust workflow policies link target
  [1letter] (#41)


3.0.0a4 (2022-06-07)
--------------------

Bug fixes:


- Fix redirect when selecting an item as default view.
  [petschki] (#3548)


3.0.0a3 (2022-05-24)
--------------------

New features:


- Reimplement dropout toolbar submenus and collapsed icons
  [petschki] (#35)


Bug fixes:


- Remove alt tags from icons within links.
  [agitator] (#38)


3.0.0a2 (2022-05-15)
--------------------

Breaking changes:


- Use plone.base. Remove six and Archetypes specific code.
  [jensens] (#34)


Bug fixes:


- Fixed permission handling on browser:menuItem [iham] (#26) (#26)
- Fix contentview actions without submenu
  [petschki] (#36)


3.0.0a1 (2022-04-04)
--------------------

Breaking changes:


- Changes for new Plone 6 toolbar.
  [petschki] (#30)
- Use Plone 6 icon resolver and SVG icons.
  [agitator] (#30)


2.3.4 (2021-09-15)
------------------

Bug fixes:


- Remove cyclic dependency with Products.CMFPlone
  [ericof] (#31)


2.3.3 (2021-06-30)
------------------

Bug fixes:


- Updated README.rst.
  [ksuess, jensens] (#1)


2.3.2 (2020-07-17)
------------------

Bug fixes:


- Fix review state icon position in toolbar when the user doesn't have the permission to change the review state.
  This fixes https://github.com/plone/plonetheme.barceloneta/issues/110
  [vincentfretin] (#29)


2.3.1 (2020-03-21)
------------------

Bug fixes:


- Minor packaging updates. [various] (#1)


2.3.0 (2019-06-27)
------------------

New features:


- Add support for Python 3.8 [pbauer] (#25)


2.2.4 (2018-09-23)
------------------

Bug fixes:

- Fix sorting of portletmanager-menuitems in py3.
  [pbauer]


2.2.3 (2018-02-05)
------------------

Bug fixes:

- Use ``get_installer`` in tests.  [maurits]


2.2.2 (2017-02-12)
------------------

Bug fixes:

- Fix portlets ZCML title registration.
  [gforcada]

2.2.1 (2016-11-10)
------------------

Bug fixes:

- Don't extract dynamic messages with i18ndude.
  [vincentfretin]


2.2 (2016-11-01)
----------------

New features:

- Make portlet manager names translatable. Add an "All" option for portlet
  manager management.
  [alecm]

- Display menu reorganization. Selected view/item should be on top of section
  and headings should appear as headings.
  [alecm]

- Add ability to specify a short title for the collapsed sidebar by setting
  extras['shortTitle'], in the same way as stateTitle.
  [MatthewWilkes]

Bug fixes:

- Add default icon for top-level toolbar entries
  [alecm]

- Code cleanup.
  [gforcad]


2.1.9 (2016-10-03)
------------------

New features:

- Documentation in README added.
  [jensens]

Bug fixes:

- Minor code cleanup, some micro-optimizations.
  [jensens]


2.1.8 (2016-05-26)
------------------

Fixes:

- Optimized display menu's check for `index_html`.
  [davisagli]


2.1.7 (2016-02-19)
------------------

Fixes:

- Fixed test (don't expect role from pac-tests).  [pbauer]


2.1.6 (2015-08-20)
------------------

- Fix: Permission check ``ManageWorkflowPolicies`` was always on fallback to
  ``ManagerPortal``. Now checks the correct permission after using the
  pkg_resources.get_distribution api for checking (never catch an ImportError).
  [jensens]

- pep8, zca decorators, plone code conventions
  [jensens]

- do not open manage portlets in a modal
  [vangheem]


2.1.5 (2015-07-18)
------------------

- hide submenu so screen readers do not read full contents every time
  [vangheem]

- get rid of "more options", reorder menu, show actions in
  folder contents, better accessibility.
  [vangheem]


2.1.4 (2015-05-05)
------------------

- Rerelease due to double distribution ending up on PyPI.
  [maurits]


2.1.3 (2015-05-04)
------------------

- Change test-setup to allow testing AT and DX.
  [pbauer]

- Fix Dexterity tests to use plone.app.contenttypes' browser layer. Fix tests
  to work with new plone.app.contenttypes unified view names.
  [thet]

- Don't show the menu-item to add content to a folderish default_page if no
  content can be added to it.
  [pbauer]

- pat-modal pattern has been renamed to pat-plone-modal
  [jcbrand]


2.1.2 (2014-10-23)
------------------

- Fix "Manage Portlets" menus not appearing for "Site Administrators".
  [@rpatterson]

- Integration of the new markup update and CSS for both Plone and Barceloneta
  theme. This is the work done in the GSOC Barceloneta theme project.
  [albertcasado, sneridagh]

- New toolbar markup based in ul li tags for the contentActions menus.
  [albertcasado, sneridagh]


2.1.1 (2014-04-13)
------------------

- Add csrf tokens to menu urls that need it.
- Allow custom modal attributes for more links
  [do3cc]


2.1.0 (2014-02-26)
------------------

- Add markup changes related to new Barceloneta theme.
  [bloodbare]


2.0.9 (2014-01-27)
------------------

- Don't break if there's no portal_actionicons tool.
  [davisagli]

- Ported tests to plone.app.testing
  [tomgross]


2.0.8 (2013-03-05)
------------------


2.0.7 (2012-12-09)
------------------

- add prefix to id tag for display menu dropdown items, fixes #11927 and #10894
  [maartenkling]

2.0.6 (2012-07-02)
------------------

- Use zope.browsermenu and remove Zope 2.12 BBB code.
  [hannosch]

2.0.5 (2012-02-07)
------------------

- Restore the workflow menu on the folder contents page as it is the
  only way to change the state of the folder when it has a default
  page.  Improves the fix to http://dev.plone.org/plone/ticket/8908.
  [rossp]

2.0.4 - 2011-07-04
------------------

- Set height/width of contentmenu icons through browser menu code.
  [thomasdesvenain]

2.0.3 - 2011-05-12
------------------

- We need permission to see Placeful policy in workflow menu.
  [thomasdesvenain]

2.0.2 - 2011-01-03
------------------

- Depend on ``Products.CMFPlone`` instead of ``Plone``.
  [elro]

- Add test coverage for factory expression context when a front-page object is
  used for a folder.  Fix in plone.app.content.
  [rossp]

- Fix the addContext in the FactoriesSubMenuItem to make it possible to add
  content to a folderish object that set as the default view on its parent folder.
  This closes http://dev.plone.org/plone/ticket/10953.
  [WouterVH]


2.0.1 - 2010-07-18
------------------

- Update license to GPL version 2 only.
  [hannosch]


2.0 - 2010-07-01
----------------

- Adding "deactivated" class to menus by default, so they won't flicker on load.
  This fixes http://dev.plone.org/plone/ticket/10470.
  [limi]


2.0b3 - 2010-06-13
------------------

- Added optional compatibility with zope.browsermenu.
  [hannosch]


2.0b2 - 2010-02-17
------------------

- Show "add new" menu when there are one or more addable types. Showing a link
  when only one type was addable caused conflicts with the dropdown JavaScript.
  Closes http://dev.plone.org/plone/ticket/10193.
  [esteele, davisagli]

- Query the types tool instead of the action tools to find add actions
  in FactoriesSubMenuItem. This fixes a discrepancy in action URLs.
  http://dev.plone.org/plone/ticket/10207
  [wichert]


2.0b1 - 2010-01-24
------------------

- Removed the checking for hideChildren when a single item is present, this
  makes the styling consistent again. The menu is really a one-item menu, and we
  put it in the header as a shortcut that you can click directly. This fixes
  http://dev.plone.org/plone/ticket/9735
  [limi]


2.0a2 - 2009-12-27
------------------

- Adjust factory menu to use the new getIconExprObject method.
  [hannosch]

- Removed no longer required zope.site dependency.
  [hannosch]

- Hide the actions, display and workflow menus on the folder contents page.
  This closes http://dev.plone.org/plone/ticket/8908.
  [hannosch]

- Avoid a bogus getToolByName indirection via getSite().
  [hannosch]

- Noted missing zope.publisher dependency and prefer absolute imports.
  [hannosch]

- Mark selected display always with 'actionMenuSelected' class and
  stop using bullet points. References
  http://dev.plone.org/plone/ticket/9894
  [dukebody]


2.0a1 - 2009-11-14
------------------

- Specified package dependencies and assorted cleanups.
  [hannosch]

- Avoid a deprecation warning for calling the ``actions`` method from the
  context_state state view without passing in an action category.
  [hannosch]

- Updated action and icon handling in the actions menu to take advantage of the
  icon being stored on the action itself.
  [hannosch]

- Added support for the new add_view_expr property available on FTIs. This can be
  used to construct a URL for add views.
  [optilude]


1.1.7 - 2009-03-07
------------------

- Made a test independent of an internal sort order.
  [hannosch]

- Escape the title of the defaultpage in the DisplayMenu. This fixes a potential
  xss attack and http://dev.plone.org/plone/ticket/8377.
  [csenger]

- Added the prefix "folder-" to the CSS id of the folder part of the view
  contentmenu. This closes http://dev.plone.org/plone/ticket/8375.
  [realefab]


1.1.6 - 2008-10-07
------------------

- Fix on factories menu, showing constrain options only when there are types to
  constrain. This closes http://dev.plone.org/plone/ticket/8213.
  [igbun]

- Fix non XML syntax compliant ids in contentmenus. This closes
  http://dev.plone.org/plone/ticket/8195
  [garbas,calvinhp]


1.1.5 - 2008-08-18
------------------

- Add a span with a "noMenuAction" class around disable menus, allowing them
  to be styled.
  [wichert]


1.1.3 - 2008-07-07
------------------

- Adjusted tests to reflect new behavior introduced by the last change.
  [hannosch]

- Do not show the display menu if it is disabled (i.e. there is an index_html
  item in the folder). The previous behavior was confusing for users: the
  description with the hint to remove the index_html object was never shown
  and users only got a unusable menu item. The new behavior makes the display
  menu consistent with other parts of the Plone UI.
  [wichert]

- Add an actionMenuSelected class to selected menu items so they can be
  styled (same class as used in Plone 2.5). Do not remove the <span>
  tag around the &bull; for selected items so it can be removed when
  proper CSS styling is used.
  [wichert]


1.0.7 - 2008-03-09
------------------

- Correct the content menu html: the icons in menus should have an empty
  alt-attribute since the alternative text if no image can be seen is the label
  of the menu item itself. Move the description to the title attribute so it
  still shows up as tooltip.
  [wichert]

- Fixed an issue with non ISelectableBrowserDefault aware content.
  This closes http://dev.plone.org/plone/ticket/7226.
  [deo]


1.0.6 - 2008-01-06
------------------

- Fixed display menu to show the default page title correctly when the
  default-page is not a contained content item with DC metadata fields.
  Thanks to George Lee for finding this.
  [optilude]


1.0.5 - 2008-01-02
------------------

- Fixed display menu to show the default page title when not currently
  viewing it as well as the display of markup contained in translations.
  This fixes http://dev.plone.org/plone/ticket/7281.
  [witsch]

- Removed loop that does nothing in plone.app.contentmenu.menu, in
  WorkflowMenu.getMenuItems().
  [dreamcatcher]

1.0.3 - 2007-11-09
------------------

- Fixed another translation problem in the factory menu when only one type
  was shown. This closes http://dev.plone.org/plone/ticket/7023.
  [hannosch]

- Fixed more translation problems with the display menu.
  This closes http://dev.plone.org/plone/ticket/6838 again and
  http://dev.plone.org/plone/ticket/7115 as well.
  [hannosch]

- Fixed display menu to properly show content item titles with non-ascii chars.
  This closes http://dev.plone.org/plone/ticket/6838.
  [hannosch]

- Do not show the add item menu anymore on normal content, but just on
  folderish and default pages. This closes
  http://dev.plone.org/plone/ticket/6744.
  [hannosch]

- Fixed variable name in the label_item_selected message id. This closes
  http://dev.plone.org/plone/ticket/6584.
  [hannosch]

- Normalized typeIds on the factories menu, as these are used as CSS ids
  and would otherwise fail W3C validation for types with a space in the
  name. This closes http://dev.plone.org/plone/ticket/6259.
  [hannosch]

- Set kssIgnore class on workflow actions that define their own screens.
  [ldr]


1.0b1 - 2007-03-05
------------------

- Initial package structure.
  [zopeskel]

            

Raw data

            {
    "_id": null,
    "home_page": "https://pypi.org/project/plone.app.contentmenu",
    "name": "plone.app.contentmenu",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "plone contentmenu menu",
    "author": "Plone Foundation",
    "author_email": "plone-developers@lists.sourceforge.net",
    "download_url": "https://files.pythonhosted.org/packages/ff/9c/460d6070e758bffb7424333a25170da3a217ed05f69e219a15f44630b4fc/plone_app_contentmenu-3.0.4.tar.gz",
    "platform": null,
    "description": "Introduction\n============\n\nplone.app.contentmenu contains the logic that powers Plone's content menu which is part of the toolbar.\n\nIt provides the menus items (and its submenues) for\n\n- factories menu (order=10)\n- workflows menu (order=20)\n- actions menu (order=30)\n- display menu (order=40)\n- manage portlets menu (order=50)\n\nNote that menu items are ordered by an 'ordered' property.\nTo allow third party products to slot their own sub-menus in between the default menu items, these are registered with gaps.\n\nCustom menus\n============\n\nCustom menus are registered in ``configure.zcml`` like so::\n\n    <!-- the main menu item -->\n    <adapter for=\"* *\"\n        name=\"plone.contentmenu.my_menu_item\"\n        factory=\".menu.MyMainMenuItem\"\n        provides=\"plone.app.contentmenu.interfaces.IContentMenuItem\" />\n\n    <!-- the sub menu items - name must match submenuId of MyMainMenuItem class -->\n    <browser:menu\n        id=\"my_fancy_menu\"\n        title=\"The 'My' menu - allows to do new exciting stuff\"\n        class=\".menu.MyMenu\"\n    />\n\nin ``menu.py`` the class looks like so::\n\n    from zope.browsermenu.interfaces import IBrowserMenu\n    from zope.browsermenu.menu import BrowserMenu\n    from zope.browsermenu.menu import BrowserSubMenuItem\n    from zope.component import getMultiAdapter\n    from zope.i18nmessageid import MessageFactory\n    from zope.interface import implementer\n\n    _ = MessageFactory('my.fancy')\n\n\n    class IMyMainMenuItem(IBrowserMenu):\n        \"\"\"The main my menu item.\n\n        You may want to place this in interfaces.py\n        \"\"\"\n\n\n    class IMyMenu(IBrowserMenu):\n        \"\"\"The my menu.\n\n        You may want to place this in interfaces.py\n        \"\"\"\n\n\n    @implementer(IMyMainMenuItem)\n    class MyMainMenuItem(BrowserSubMenuItem):\n        # This is in fact a submenu item of the parent menu, thus the name\n        # of the inherited class tells it, don't be confused.\n\n        title = _(u'label_my_menu', default=u'My')\n        description = _(u'title_my_menu', default=u'My for the current content item')\n        submenuId = 'my_fancy_menu'\n\n        order = 70  # after the default menus\n        extra = {\n            'id': 'my-fancy-menu',\n            'li_class': 'plonetoolbar-content-my-fancy'\n        }\n\n        @property\n        def action(self):\n            # return the url to be loaded if clicked on the link.\n            # even if a submenu exists it will be active if javascript is disabled\n            return self.context.absolute_url()\n\n        def available(self):\n            # check if the menu is available and shown or not\n            return True\n\n        def selected(self):\n            # check if the menu should be shown as selected\n            return False\n\n\n    @implementer(IMyMenu)\n    class MyMenu(BrowserMenu):\n\n        def getMenuItems(self, context, request):\n            \"\"\"Return menu item entries in a TAL-friendly form.\"\"\"\n            results = []\n\n            # here a single item is added. do what needed to add several entries\n            results.append({\n                'title': 'My item 1',\n                'description': 'An my item',\n                'action': '/url/to/action',\n                'selected': False,\n                'icon': 'some_icon_class',\n                'extra': {\n                    'id': 'plone-contentmenu-my-fancy-one',\n                    'separator': None,\n                    'class': 'my-class pat-plone-modal',\n                    'modal': 'width: 400'\n                },\n                'submenu': None,\n            })\n\n            return results\n\n\nSource Code\n===========\n\nContributors please read the document `Process for Plone core's development <https://docs.plone.org/develop/coredev/docs/index.html>`_\n\nSources are at the `Plone code repository hosted at Github <https://github.com/plone/plone.app.contentmenu>`_.\n\nChangelog\n=========\n\n.. You should *NOT* be adding new change log entries to this file.\n   You should create a file in the news directory instead.\n   For helpful instructions, please see:\n   https://github.com/plone/plone.releaser/blob/master/ADD-A-NEWS-ITEM.rst\n\n.. towncrier release notes start\n\n3.0.4 (2024-04-23)\n------------------\n\nBug fixes:\n\n\n- Check if \"dropdown\" is needed for menu items.\n  [szakitibi] (#61)\n\n\nInternal:\n\n\n- Update configuration files.\n  [plone devs] (6e36bcc4)\n\n\n3.0.3 (2023-09-14)\n------------------\n\nBug fixes:\n\n\n- Fix \"Add item to default page\" modal form. [sverbois] (#54)\n\n\nInternal:\n\n\n- Update configuration files.\n  [plone devs] (7723aeaf)\n\n\n3.0.2 (2023-05-25)\n------------------\n\nBug fixes:\n\n\n- Add description to actions' menu items\n  [kshitiz305] (#24)\n- Show workflow state title also when the toolbar is at the top.\n  [maurits] (#49)\n\n\n3.0.1 (2023-04-06)\n------------------\n\nInternal:\n\n\n- Update configuration files.\n  [plone devs] (#47959565)\n\n\n3.0.0 (2022-11-30)\n------------------\n\nBug fixes:\n\n\n- Final release.\n  [gforcada] (#600)\n\n\n3.0.0b3 (2022-10-11)\n--------------------\n\nBug fixes:\n\n\n- Fix Display menu in toolbar doesn't show the current selected item and it's selected template correctly\n  https://github.com/plone/plone.app.layout/issues/321\n  [mamico] (#44)\n\n\n3.0.0b2 (2022-07-21)\n--------------------\n\nBug fixes:\n\n\n- Fix missing `menuItem/extra/li_class`.\n  [petschki] (#43)\n\n\n3.0.0b1 (2022-06-23)\n--------------------\n\nBug fixes:\n\n\n- Toolbar width and wrapping tweaks.\n  [agitator] (#40)\n- adjust workflow policies link target\n  [1letter] (#41)\n\n\n3.0.0a4 (2022-06-07)\n--------------------\n\nBug fixes:\n\n\n- Fix redirect when selecting an item as default view.\n  [petschki] (#3548)\n\n\n3.0.0a3 (2022-05-24)\n--------------------\n\nNew features:\n\n\n- Reimplement dropout toolbar submenus and collapsed icons\n  [petschki] (#35)\n\n\nBug fixes:\n\n\n- Remove alt tags from icons within links.\n  [agitator] (#38)\n\n\n3.0.0a2 (2022-05-15)\n--------------------\n\nBreaking changes:\n\n\n- Use plone.base. Remove six and Archetypes specific code.\n  [jensens] (#34)\n\n\nBug fixes:\n\n\n- Fixed permission handling on browser:menuItem [iham] (#26) (#26)\n- Fix contentview actions without submenu\n  [petschki] (#36)\n\n\n3.0.0a1 (2022-04-04)\n--------------------\n\nBreaking changes:\n\n\n- Changes for new Plone 6 toolbar.\n  [petschki] (#30)\n- Use Plone 6 icon resolver and SVG icons.\n  [agitator] (#30)\n\n\n2.3.4 (2021-09-15)\n------------------\n\nBug fixes:\n\n\n- Remove cyclic dependency with Products.CMFPlone\n  [ericof] (#31)\n\n\n2.3.3 (2021-06-30)\n------------------\n\nBug fixes:\n\n\n- Updated README.rst.\n  [ksuess, jensens] (#1)\n\n\n2.3.2 (2020-07-17)\n------------------\n\nBug fixes:\n\n\n- Fix review state icon position in toolbar when the user doesn't have the permission to change the review state.\n  This fixes https://github.com/plone/plonetheme.barceloneta/issues/110\n  [vincentfretin] (#29)\n\n\n2.3.1 (2020-03-21)\n------------------\n\nBug fixes:\n\n\n- Minor packaging updates. [various] (#1)\n\n\n2.3.0 (2019-06-27)\n------------------\n\nNew features:\n\n\n- Add support for Python 3.8 [pbauer] (#25)\n\n\n2.2.4 (2018-09-23)\n------------------\n\nBug fixes:\n\n- Fix sorting of portletmanager-menuitems in py3.\n  [pbauer]\n\n\n2.2.3 (2018-02-05)\n------------------\n\nBug fixes:\n\n- Use ``get_installer`` in tests.  [maurits]\n\n\n2.2.2 (2017-02-12)\n------------------\n\nBug fixes:\n\n- Fix portlets ZCML title registration.\n  [gforcada]\n\n2.2.1 (2016-11-10)\n------------------\n\nBug fixes:\n\n- Don't extract dynamic messages with i18ndude.\n  [vincentfretin]\n\n\n2.2 (2016-11-01)\n----------------\n\nNew features:\n\n- Make portlet manager names translatable. Add an \"All\" option for portlet\n  manager management.\n  [alecm]\n\n- Display menu reorganization. Selected view/item should be on top of section\n  and headings should appear as headings.\n  [alecm]\n\n- Add ability to specify a short title for the collapsed sidebar by setting\n  extras['shortTitle'], in the same way as stateTitle.\n  [MatthewWilkes]\n\nBug fixes:\n\n- Add default icon for top-level toolbar entries\n  [alecm]\n\n- Code cleanup.\n  [gforcad]\n\n\n2.1.9 (2016-10-03)\n------------------\n\nNew features:\n\n- Documentation in README added.\n  [jensens]\n\nBug fixes:\n\n- Minor code cleanup, some micro-optimizations.\n  [jensens]\n\n\n2.1.8 (2016-05-26)\n------------------\n\nFixes:\n\n- Optimized display menu's check for `index_html`.\n  [davisagli]\n\n\n2.1.7 (2016-02-19)\n------------------\n\nFixes:\n\n- Fixed test (don't expect role from pac-tests).  [pbauer]\n\n\n2.1.6 (2015-08-20)\n------------------\n\n- Fix: Permission check ``ManageWorkflowPolicies`` was always on fallback to\n  ``ManagerPortal``. Now checks the correct permission after using the\n  pkg_resources.get_distribution api for checking (never catch an ImportError).\n  [jensens]\n\n- pep8, zca decorators, plone code conventions\n  [jensens]\n\n- do not open manage portlets in a modal\n  [vangheem]\n\n\n2.1.5 (2015-07-18)\n------------------\n\n- hide submenu so screen readers do not read full contents every time\n  [vangheem]\n\n- get rid of \"more options\", reorder menu, show actions in\n  folder contents, better accessibility.\n  [vangheem]\n\n\n2.1.4 (2015-05-05)\n------------------\n\n- Rerelease due to double distribution ending up on PyPI.\n  [maurits]\n\n\n2.1.3 (2015-05-04)\n------------------\n\n- Change test-setup to allow testing AT and DX.\n  [pbauer]\n\n- Fix Dexterity tests to use plone.app.contenttypes' browser layer. Fix tests\n  to work with new plone.app.contenttypes unified view names.\n  [thet]\n\n- Don't show the menu-item to add content to a folderish default_page if no\n  content can be added to it.\n  [pbauer]\n\n- pat-modal pattern has been renamed to pat-plone-modal\n  [jcbrand]\n\n\n2.1.2 (2014-10-23)\n------------------\n\n- Fix \"Manage Portlets\" menus not appearing for \"Site Administrators\".\n  [@rpatterson]\n\n- Integration of the new markup update and CSS for both Plone and Barceloneta\n  theme. This is the work done in the GSOC Barceloneta theme project.\n  [albertcasado, sneridagh]\n\n- New toolbar markup based in ul li tags for the contentActions menus.\n  [albertcasado, sneridagh]\n\n\n2.1.1 (2014-04-13)\n------------------\n\n- Add csrf tokens to menu urls that need it.\n- Allow custom modal attributes for more links\n  [do3cc]\n\n\n2.1.0 (2014-02-26)\n------------------\n\n- Add markup changes related to new Barceloneta theme.\n  [bloodbare]\n\n\n2.0.9 (2014-01-27)\n------------------\n\n- Don't break if there's no portal_actionicons tool.\n  [davisagli]\n\n- Ported tests to plone.app.testing\n  [tomgross]\n\n\n2.0.8 (2013-03-05)\n------------------\n\n\n2.0.7 (2012-12-09)\n------------------\n\n- add prefix to id tag for display menu dropdown items, fixes #11927 and #10894\n  [maartenkling]\n\n2.0.6 (2012-07-02)\n------------------\n\n- Use zope.browsermenu and remove Zope 2.12 BBB code.\n  [hannosch]\n\n2.0.5 (2012-02-07)\n------------------\n\n- Restore the workflow menu on the folder contents page as it is the\n  only way to change the state of the folder when it has a default\n  page.  Improves the fix to http://dev.plone.org/plone/ticket/8908.\n  [rossp]\n\n2.0.4 - 2011-07-04\n------------------\n\n- Set height/width of contentmenu icons through browser menu code.\n  [thomasdesvenain]\n\n2.0.3 - 2011-05-12\n------------------\n\n- We need permission to see Placeful policy in workflow menu.\n  [thomasdesvenain]\n\n2.0.2 - 2011-01-03\n------------------\n\n- Depend on ``Products.CMFPlone`` instead of ``Plone``.\n  [elro]\n\n- Add test coverage for factory expression context when a front-page object is\n  used for a folder.  Fix in plone.app.content.\n  [rossp]\n\n- Fix the addContext in the FactoriesSubMenuItem to make it possible to add\n  content to a folderish object that set as the default view on its parent folder.\n  This closes http://dev.plone.org/plone/ticket/10953.\n  [WouterVH]\n\n\n2.0.1 - 2010-07-18\n------------------\n\n- Update license to GPL version 2 only.\n  [hannosch]\n\n\n2.0 - 2010-07-01\n----------------\n\n- Adding \"deactivated\" class to menus by default, so they won't flicker on load.\n  This fixes http://dev.plone.org/plone/ticket/10470.\n  [limi]\n\n\n2.0b3 - 2010-06-13\n------------------\n\n- Added optional compatibility with zope.browsermenu.\n  [hannosch]\n\n\n2.0b2 - 2010-02-17\n------------------\n\n- Show \"add new\" menu when there are one or more addable types. Showing a link\n  when only one type was addable caused conflicts with the dropdown JavaScript.\n  Closes http://dev.plone.org/plone/ticket/10193.\n  [esteele, davisagli]\n\n- Query the types tool instead of the action tools to find add actions\n  in FactoriesSubMenuItem. This fixes a discrepancy in action URLs.\n  http://dev.plone.org/plone/ticket/10207\n  [wichert]\n\n\n2.0b1 - 2010-01-24\n------------------\n\n- Removed the checking for hideChildren when a single item is present, this\n  makes the styling consistent again. The menu is really a one-item menu, and we\n  put it in the header as a shortcut that you can click directly. This fixes\n  http://dev.plone.org/plone/ticket/9735\n  [limi]\n\n\n2.0a2 - 2009-12-27\n------------------\n\n- Adjust factory menu to use the new getIconExprObject method.\n  [hannosch]\n\n- Removed no longer required zope.site dependency.\n  [hannosch]\n\n- Hide the actions, display and workflow menus on the folder contents page.\n  This closes http://dev.plone.org/plone/ticket/8908.\n  [hannosch]\n\n- Avoid a bogus getToolByName indirection via getSite().\n  [hannosch]\n\n- Noted missing zope.publisher dependency and prefer absolute imports.\n  [hannosch]\n\n- Mark selected display always with 'actionMenuSelected' class and\n  stop using bullet points. References\n  http://dev.plone.org/plone/ticket/9894\n  [dukebody]\n\n\n2.0a1 - 2009-11-14\n------------------\n\n- Specified package dependencies and assorted cleanups.\n  [hannosch]\n\n- Avoid a deprecation warning for calling the ``actions`` method from the\n  context_state state view without passing in an action category.\n  [hannosch]\n\n- Updated action and icon handling in the actions menu to take advantage of the\n  icon being stored on the action itself.\n  [hannosch]\n\n- Added support for the new add_view_expr property available on FTIs. This can be\n  used to construct a URL for add views.\n  [optilude]\n\n\n1.1.7 - 2009-03-07\n------------------\n\n- Made a test independent of an internal sort order.\n  [hannosch]\n\n- Escape the title of the defaultpage in the DisplayMenu. This fixes a potential\n  xss attack and http://dev.plone.org/plone/ticket/8377.\n  [csenger]\n\n- Added the prefix \"folder-\" to the CSS id of the folder part of the view\n  contentmenu. This closes http://dev.plone.org/plone/ticket/8375.\n  [realefab]\n\n\n1.1.6 - 2008-10-07\n------------------\n\n- Fix on factories menu, showing constrain options only when there are types to\n  constrain. This closes http://dev.plone.org/plone/ticket/8213.\n  [igbun]\n\n- Fix non XML syntax compliant ids in contentmenus. This closes\n  http://dev.plone.org/plone/ticket/8195\n  [garbas,calvinhp]\n\n\n1.1.5 - 2008-08-18\n------------------\n\n- Add a span with a \"noMenuAction\" class around disable menus, allowing them\n  to be styled.\n  [wichert]\n\n\n1.1.3 - 2008-07-07\n------------------\n\n- Adjusted tests to reflect new behavior introduced by the last change.\n  [hannosch]\n\n- Do not show the display menu if it is disabled (i.e. there is an index_html\n  item in the folder). The previous behavior was confusing for users: the\n  description with the hint to remove the index_html object was never shown\n  and users only got a unusable menu item. The new behavior makes the display\n  menu consistent with other parts of the Plone UI.\n  [wichert]\n\n- Add an actionMenuSelected class to selected menu items so they can be\n  styled (same class as used in Plone 2.5). Do not remove the <span>\n  tag around the &bull; for selected items so it can be removed when\n  proper CSS styling is used.\n  [wichert]\n\n\n1.0.7 - 2008-03-09\n------------------\n\n- Correct the content menu html: the icons in menus should have an empty\n  alt-attribute since the alternative text if no image can be seen is the label\n  of the menu item itself. Move the description to the title attribute so it\n  still shows up as tooltip.\n  [wichert]\n\n- Fixed an issue with non ISelectableBrowserDefault aware content.\n  This closes http://dev.plone.org/plone/ticket/7226.\n  [deo]\n\n\n1.0.6 - 2008-01-06\n------------------\n\n- Fixed display menu to show the default page title correctly when the\n  default-page is not a contained content item with DC metadata fields.\n  Thanks to George Lee for finding this.\n  [optilude]\n\n\n1.0.5 - 2008-01-02\n------------------\n\n- Fixed display menu to show the default page title when not currently\n  viewing it as well as the display of markup contained in translations.\n  This fixes http://dev.plone.org/plone/ticket/7281.\n  [witsch]\n\n- Removed loop that does nothing in plone.app.contentmenu.menu, in\n  WorkflowMenu.getMenuItems().\n  [dreamcatcher]\n\n1.0.3 - 2007-11-09\n------------------\n\n- Fixed another translation problem in the factory menu when only one type\n  was shown. This closes http://dev.plone.org/plone/ticket/7023.\n  [hannosch]\n\n- Fixed more translation problems with the display menu.\n  This closes http://dev.plone.org/plone/ticket/6838 again and\n  http://dev.plone.org/plone/ticket/7115 as well.\n  [hannosch]\n\n- Fixed display menu to properly show content item titles with non-ascii chars.\n  This closes http://dev.plone.org/plone/ticket/6838.\n  [hannosch]\n\n- Do not show the add item menu anymore on normal content, but just on\n  folderish and default pages. This closes\n  http://dev.plone.org/plone/ticket/6744.\n  [hannosch]\n\n- Fixed variable name in the label_item_selected message id. This closes\n  http://dev.plone.org/plone/ticket/6584.\n  [hannosch]\n\n- Normalized typeIds on the factories menu, as these are used as CSS ids\n  and would otherwise fail W3C validation for types with a space in the\n  name. This closes http://dev.plone.org/plone/ticket/6259.\n  [hannosch]\n\n- Set kssIgnore class on workflow actions that define their own screens.\n  [ldr]\n\n\n1.0b1 - 2007-03-05\n------------------\n\n- Initial package structure.\n  [zopeskel]\n",
    "bugtrack_url": null,
    "license": "GPL version 2",
    "summary": "Plone's content menu implementation",
    "version": "3.0.4",
    "project_urls": {
        "Homepage": "https://pypi.org/project/plone.app.contentmenu"
    },
    "split_keywords": [
        "plone",
        "contentmenu",
        "menu"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cf113b8e52320bc26acc36db8ffa8879e40a01e830eb8c88f67790691ac14556",
                "md5": "b56b7d3a8f7771a2833c9cd7c98b35bf",
                "sha256": "aea2d4f75587e1bbfbc8bf407ac0bd70c61906f61d189bb8fbaaa0422813e710"
            },
            "downloads": -1,
            "filename": "plone.app.contentmenu-3.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b56b7d3a8f7771a2833c9cd7c98b35bf",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 27209,
            "upload_time": "2024-04-23T15:41:35",
            "upload_time_iso_8601": "2024-04-23T15:41:35.653731Z",
            "url": "https://files.pythonhosted.org/packages/cf/11/3b8e52320bc26acc36db8ffa8879e40a01e830eb8c88f67790691ac14556/plone.app.contentmenu-3.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ff9c460d6070e758bffb7424333a25170da3a217ed05f69e219a15f44630b4fc",
                "md5": "476bcfedbbd57f2fe042f1aae30ecc7d",
                "sha256": "ebbc73bbdc952347cad88b55c7cabfa0906c3011f6018c1dd13ec284a85026b3"
            },
            "downloads": -1,
            "filename": "plone_app_contentmenu-3.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "476bcfedbbd57f2fe042f1aae30ecc7d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 41885,
            "upload_time": "2024-04-23T15:41:38",
            "upload_time_iso_8601": "2024-04-23T15:41:38.219498Z",
            "url": "https://files.pythonhosted.org/packages/ff/9c/460d6070e758bffb7424333a25170da3a217ed05f69e219a15f44630b4fc/plone_app_contentmenu-3.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-23 15:41:38",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "plone.app.contentmenu"
}
        
Elapsed time: 0.25533s