Hi Alex,
So in case like this:
- Parent (draft) (include in menu: true)
-- Child 1 (draft) (include in menu: true)
-- Child 2 (draft) (include in menu: true)
-- Child 3 (draft) (include in menu: true)
Provided that the user has edit rights for all four pages and all four are marked to be included in the menu, the user should see them in the menu.
I agree, so long as the user has edit permission or draft edit permission on the page in addition to being in the allowed view roles, the draft page should appear in the menu for that user. I just fixed this bug and pushed it to the repository.
And in this case:
- Parent (draft) (include in menu: false)
-- Child 1 (draft) (include in menu: true)
-- Child 2 (draft) (include in menu: true)
-- Child 3 (draft) (include in menu: true)
When user goes to one of the three child pages, he/she should be able to see the other two, but never the parent.
Similar behavior would be expected in places like Site Map as well.
Well that depends on the menu structure. If the user visits the parent page that is not included in the menu and the parent page has a child page menu/sitemap on it then the user should see the child pages assuming the same as above that the user is in an allowed view role and either in an edit role or draft edit role.
However, menus are hierachal, the child page menu starts binding below the parent therefore it can show the child pages even when the parent is not included in the menu, similar with PageMenu if it is configure to bind nodes starting below the parent it can show the child pages. But in any menu where the parent level is also included, the the child pages cannot be shown if the parent is not shown since the children are below the parent in the hierarchy they hang off the parent page and they cannot be shown if the parent is not there. So in a case like the site map its just a single menu with the entire site hierarchy, any page that is not included in that menu also removes the sub hiearchy below that page. ie there is no way to databind the hierarchy below the parent if the parent node is excluded from the tree structure that is the hierarchy.
Best,
Joe