CleanupPlugin: a chance to cleanup a plugin at the end of a program
+StartActionExecute: Right before the "prepare" call of the current Action
+- $action: the current Action object
+- &$args: array of arguments, referenced so you can modify the array
+
+EndActionExecute: Right after the "handle" call of the current Action
+- $action: the current Action object
+
StartPrimaryNav: Showing the primary nav menu
- $action: the current action
EndShowNoticeItem: just after showing the notice item
- $item: the NoticeListItem object being shown
+StartShowNoticeItemNotice: just before outputting the "top" notice part of a NoticeListItem to HTML
+- $item: The NoticeListItem object being shown
+
+EndShowNoticeItemNotice: just after outputting the "top" notice part of a NoticeListItem to HTML
+- $item: The NoticeListItem object being shown
+
+StartShowNoticeContent: just before outputting the content part of a Notice
+- $stored: The Notice object
+- $out: HTMLOutputter for writing to
+- $scoped: optional Profile object for permission scoping
+
+EndShowNoticeContent: just after outputting the content part of a Notice, plugins must call this manually
+- $stored: The Notice object
+- $out: HTMLOutputter for writing to
+- $scoped: optional Profile object for permission scoping
+
StartShowNoticeInfo: just before showing notice info
- $item: The NoticeListItem object being shown
- $user: user
StartSetApiUser: Before setting the current API user
-- $user: user
+- &$user: user, can be set during event handling (return false to stop processing)
EndSetApiUser: After setting the current API user
-- $user: user
+- $user: user, only called if this is an actual user
StartHasRole: Before determing if the a profile has a given role
- $profile: profile in question
StartAtomPubNewActivity: When a new activity comes in through Atom Pub API
- &$activity: received activity
-- $user: user publishing the entry
+- $profile: profile of the user publishing the entry
- &$notice: notice created; initially null, can be set
EndAtomPubNewActivity: When a new activity comes in through Atom Pub API
- $activity: received activity
-- $user: user publishing the entry
+- $profile: profile of the user publishing the entry
- $notice: notice that was created
AdminPanelCheck: When checking whether the current user can access a given admin panel
EndNotifyMentioned: During notice distribution, we send notifications (email, im...) to the profiles who were somehow mentioned.
- $stored: Notice object that is being distributed.
- $mentioned_ids: Array of profile IDs (not just for local users) who got mentioned by the notice.
+
+StartHomeStubNavItems: Go back Home nav items. Default includes just one item 'home'
+- $out: HTMLOutputter used to output (usually an Action, but not always!)
+- &$items: Referenced array of items in the nav (add if desired)
+
+EndHomeStubNavItems:
+- $out: HTMLOutputter used to output (usually an Action, but not always!)
+- $items: array of menu items
+
+StartSubMenu: Before outputting a submenu (including enclosing tags) to HTML
+- $out: HTMLOutputter used to output (usually an Action, but not always!)
+- $menu: The Menu object outputted as a submenu.
+- $label: Localized text which represents the menu item.
+
+EndSubMenu: After outputting a submenu (including enclosing tags) to HTML
+- $out: HTMLOutputter used to output (usually an Action, but not always!)
+- $menu: The Menu object outputted as a submenu.
+- $label: Localized text which represents the menu item.
+
+StartDocNav: Before outputting the docs Nav
+- $nav: The DoclNav widget
+
+EndDocNav: After outputting the docs Nav
+- $nav: The DoclNav widget