divio/django-cms — Issue #1067: CMS_PUBLIC_FOR = 'staff' breaks menu
Author: ojii
Created: 2011-10-22 14:52:54+00:00
State: open
Labels: Blocker

``cms.menu.get_visible_pages`` which is used by ``cms.menu.CMSMenu.get_nodes`` limits the pages shown based on permissions of the currently active user. which means depending on your settings and the user who **first visits the site before caching**, all **other users** will see the **same menu**.

This is a fundamental problem with ``get_nodes`` which is supposed to be completely request agnostic (but still get's the request, which is WRONG).

Possible solution: Put all permission related info into node.attrs and write an insane menu modifier.

Also: For 2.3 we need to have a better menu solution, this is turning uglier and uglier.