Changes between Version 14 and Version 15 of S3/S3Navigation


Ignore:
Timestamp:
03/05/12 13:05:54 (13 years ago)
Author:
Dominic König
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • S3/S3Navigation

    v14 v15  
    8383All S3Navigation items are run through a cascade of status checks before they get handed over to the layout method.
    8484
    85 The default behavior of these methods is meant for menu items, which may though not fit for all types of navigation items. Where needed, the subclass should overwrite them accordingly. These methods won't take any parameter beyond {{{self}}} and are expected to return a boolean value.
     85The default behavior of these methods is meant for menu items, which may though not fit for all types of navigation items. Where needed, the subclass should overwrite them accordingly. These methods won't take any parameter beyond {{{self}}} and are expected to return a boolean value. The methods are called in the order they appear in the following table:
    8686
    8787||='''Method'''=||='''Meaning'''=||='''Effect'''=||='''Flag set'''=||='''Standard Behavior'''=||
    88 ||check_active||Check whether the item is relevant for the current request||if this returns False, the item will be deactivated and the renderer never be called|| ||check_active returns False if a target controller is defined, but disabled in deployment settings, or if neither the item nor any of the items in the same subtree matches the request||
    89 ||check_enabled||Check whether the item is enabled||Overrides the enabled flag if (and only if) it returns False, if it returns True, the flag remains unchanged||enabled||by default, check_enabled returns always True||
    90 ||check_permission||Check whether the user is permitted to access the target URL of the item||sets flag||authorized||returns True if an accessible_url of the target URL can be created||
    91 ||check_selected||Check whether the item matches the current request||sets flag upward in the whole subtree||selected||returns True if this item or any of its children matches reaches the highest match-level for the current request||
    92 ||check_hook||Runs the check-hook methods defined for this item||if this returns False, neither check_enabled nor the renderer will be run|| ||returns True only if all check-hooks return True, otherwise False||
     88||'''check_active'''||Check whether the item is relevant for the current request||if this returns False, the item will be deactivated and no further checks or the renderer be invoked (abort)|| ||check_active returns False if a target controller is defined, but disabled in deployment settings, or if neither the item nor any of the items in the same subtree matches the request||
     89||'''check_permission'''||Check whether the user is permitted to access the target URL of the item||sets flag||authorized||returns True if an accessible_url of the target URL can be created||
     90||'''check_selected'''||Check whether the item matches the current request||sets flag upward in the whole subtree||selected||returns True if this item or any of its children matches reaches the highest match-level for the current request||
     91||'''check_hook'''||Runs the check-hook methods defined for this item||if this returns False, neither check_enabled nor the renderer will be run|| ||returns True only if all check-hooks return True, otherwise False||
     92||'''check_enabled'''||Check whether the item is enabled||Overrides the enabled flag if (and only if) it returns False, if it returns True, the flag remains unchanged||enabled||by default, check_enabled returns always True||
    9393
    9494=== Implementing Layouts ===