Access Control for Pages and Menus

The eXportable object for a page defines its accessibility and visibility. Note how:

  • Some pages require sign in. They still appear in menu for anonymous users.
  • Some pages are linked in menu only for anonymous users.
  • Pages that require admin are only included in the menu for
    an admin user.
  • Contextual menu generation also happens for diverted pages,
    e.g. login and error pages.
  • An application may declare arbitrary permissions and associate them
    with any user and object.

The python source for the
SiteDirectory’s exportables
offers a good example of this mechanism.

Visual feedback on login status (see this site’s main CSS and gz.skin.render.dhi_page()):

  •   anonymous  
  •   normal signed in user  
  •   admin user