Skip to main content

Traverse to first item in folder

Project description

Introduction

This package provides an view which traverses to the first item found in an ordered container. If the default view of the item, which the traverse view is traversing to is also a traverse view, the traversing happens again to the next sub-sub-item in the sub-folder, if possible.

The traversing/redirection is only done for users who are not allowed to see the folder listing of the current context (usally anonymous users and normal members). For users with higher permissions, a folder contents view is shown. This way, members can easily edit the folder without being redirected to another folder.

collective.folderishtraverse is an alternative to a default page in Plone. The difference is, that the target content is shown in the navigation tree and that traversing to any nested content in any level of the tree’s hierarchy is possible.

Author

Johannes Raggam, BlueDynamics Alliance <raggam-nl@adm.at>

Changes

2.0 (2024-12-08)

  • Let editors also traverse to the right context.

    There is a new “EDITOR_TRAVERSE” option, set per default to “True”. When “True”, editors are also redirected to the first accessible content item in a folder. If set to “False”, editors are redirected to the folder contents view.

    I think showing the folder contents view is confusing and not necessary anymore, therefore this breaking change.

    In the next major release this feature will be removed alltogether.

    Currently the “EDITOR_TRAVERSE” option is a module constant in “collective.folderishtraverse.browser.traverse_view” - if needed this can be changed to a registry entry.

    [thet]

1.2 (2024-12-08)

  • When redirecting, set a 302 status header and the redirection url. This makes the redirection not only a standard one, but allows also redirections on AJAX requests. [thet]

1.11 (2022-11-15)

  • Improve readability of traverse_view [jensens]

  • Add browser-layer [jensens]

  • Add basic testing. [jensens]

  • Add integrated buildout for easier development. [jensens]

1.10 (2015-07-15)

  • normalize non-readable boolean expression. [jensens]

  • Dont cache on instance to reduce write on reads. Cache volatile for 60min instead. [jensens]

  • On traversing, don’t check for the published workflow state but for content permissions. [thet]

  • Use the plone.app.contenttypes folder listing view as fallback view, if available. [thet]

1.9 (2014-06-03)

  • Add simplified Chinese translations. [jianaijun]

  • Change permission needed to not beeing redirected to the first content item from List folder contents to Add portal content. This is a better default, as only editors need not beeing redirected to be able to add and edit content. [thet]

1.8 (2014-05-02)

  • Added Chinese Simplified translation. [jianaijun]

  • Register views more generally to also support Dexterity based folderish types. [thet]

1.7 (2014-02-03)

  • Redirect not only for anonymous users but all users not having the “List folder contents” permission on contexts with “traverse_view” enabled. [thet]

1.6.3 (2013-11-23)

  • If no translation is found for a content item which’ language doesn’t match, continue with the next object in the folder instead of redirecting to the folder_summary_view. [thet]

1.6.2 (2013-04-23)

  • Add “en” and “de” translations. [thet]

1.6.1 (2013-01-28)

  • Do not try to translate object if no lang set. [rnix]

1.6 (2013-01-14)

  • Consider translation in traverse_view if LinguaPlone is installed. [rnix]

  • Add z3c.autoinclude.plugin entry point. [thet]

1.5.1 (2012-12-18)

  • Use zExceptions.Redirect instead of request.response.redirect in traverse view. The Redirect exception redirects immediately instead of rendering the current page and submitting a transaction.commit() first. [rnix]

1.5 (2012-12-11)

  • Add NON_TRAVERSE_FALLBACK_VIEW. May be patched if fallback view for folder_contents should differ from folder_summary_view. [rnix]

  • Check non-traversing fallback view against List folder contents permission instead of anonymous. [rnix]

1.4 (2012-11-25)

  • Show the “Display” content-menu also in the folder contents view on the Plone Site Root. The “Actions” menu is not displayed yet, since object_buttons are not registered for the Plone Site Root (copy, cut, rename and delete wouldn’t make much sense on the portal object itself). [thet]

1.3 (2012-11-22)

  • Show the Actions and Display content-menus also in folder content views. Allows Action submenu items like from c.folderorder and setting the display to something else than traverse_view. [thet]

  • Add statusmessage for when displaying the traverse_view for non-anonymous users. [thet]

  • When no endpoint is found, redirect to folder_summary_view for anonymous users. folder_contents needs higher permissions. [thet]

1.2 (2012-11-07)

  • For non-anonymous users or if no endpoint was found, redirect to folder_contents. This view is generally nicer and more usable. [thet]

1.1 (2012-02-20)

  • Allow the traverse_view also on the Plone Site itself. [thet]

1.0 (2012-02-02)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective_folderishtraverse-2.0.tar.gz (21.3 kB view details)

Uploaded Source

Built Distribution

collective.folderishtraverse-2.0-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

Details for the file collective_folderishtraverse-2.0.tar.gz.

File metadata

File hashes

Hashes for collective_folderishtraverse-2.0.tar.gz
Algorithm Hash digest
SHA256 c1412b5c6e5c3a7399d918e828edcc171b724ed572fd33e126f4531e163ebff2
MD5 6d749c2e52fb6afa8d4f47c956f611d5
BLAKE2b-256 61be11d2e816198b0d68979d1f1e092aeca19d1d8a495e8e1fe14375ab867a82

See more details on using hashes here.

File details

Details for the file collective.folderishtraverse-2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for collective.folderishtraverse-2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 56909e41988d791901812d357c0f84320b380ecbaa5de3725178201b817eefa8
MD5 126edbe52a0e9375e0cb2a0b5c22c5f2
BLAKE2b-256 fbcaa97d9ba12a3dfd70279c807100db68097b6a0969f25cc38e562275ea2926

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page